)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"d42101d014f6da9334f02df413ae562261536039","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d312b7dd_1e499b02","updated":"2021-12-16 08:03:52.000000000","message":"Brian, Dan. \nIs there any way forward with this patch to fix all those occurrences of BOOLEAN vs. STRING?\nI know PostgreSQL is not loved much anymore in the OpenStack space - but this here seems like a lower hanging fruit.","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"74d15480cbfc4621bad76dc499a66fd35c4a6076","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c6dd2acd_890e7ad5","updated":"2022-01-27 14:18:04.000000000","message":"I know you guys are terribly busy and I understand there are likely many more places to fix the type casting. But should this keep us / you from merging this one here?","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"86836aca03d202a35cc931e0bb101afb604e663e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"164fb9b8_ebee8547","updated":"2021-12-02 19:39:36.000000000","message":"I think you missed one in the next function (see line 927).","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"6a4ddc6e667798814980d2821010476a40f667ee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"92c078c0_0bf39d1c","updated":"2022-01-27 14:47:38.000000000","message":"Sorry I hit send a little too quickly ...\n\nMaybe the PostgreSQL type casting fixes written and discussed here could just be reviewed as part of the large patchset that stephenfin has submitted via https://review.opendev.org/q/topic:bp%252Fremove-sqlalchemy-migrate?","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"79b157d50c893e7371e955c5ee621d6f60398f51","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d20d5e90_20df62cf","updated":"2021-12-02 19:57:19.000000000","message":"Thanks Brian! This was the test patch I had provided for the user to try to resolve the problem, but it needs polishing and some sort of test. I should have marked it as WIP but didn\u0027t.\n\nYour other example of this was from 2018, after I thought we stopped caring about postgres, so this was really just \"best effort\" anyway. I don\u0027t know that we even have a postgres job to run this against to poke it and other problems (probably not since it wasn\u0027t failing before). So I guess we can just make these changes as people report them, although just disavowing support for non-mysql would be easier...","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"c6a07f81718771ab27f5a23b7b4483a7df102ea8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"5c4cae3a_b9913c69","updated":"2022-01-31 15:22:21.000000000","message":"Looks good, and we have a confirmation inline that this resolves the problem.","commit_id":"753c74c343ab4ef32879a3dd95c3a956af77f869"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"a7aabad294c45faf3783fcbf751c9d4b2e5aea50","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"90a6cd1b_90a5d0c3","updated":"2022-02-15 14:21:53.000000000","message":"Ninja approving to get this in, we have confirmation from reporter about solving the issue.\nThank you Dan!","commit_id":"753c74c343ab4ef32879a3dd95c3a956af77f869"}],"glance/db/sqlalchemy/api.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"86836aca03d202a35cc931e0bb101afb604e663e","unresolved":true,"context_lines":[{"line_number":176,"context_line":"            raise exception.Conflict(msg)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"        query \u003d session.query(models.Image).filter_by(id\u003dimage_id)"},{"line_number":179,"context_line":"        values \u003d {\u0027status\u0027: \u0027active\u0027, \u0027deleted\u0027: 0}"},{"line_number":180,"context_line":"        query.update(values, synchronize_session\u003d\u0027fetch\u0027)"},{"line_number":181,"context_line":""},{"line_number":182,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"8feaa298_633784ef","line":179,"range":{"start_line":179,"start_character":49,"end_line":179,"end_character":50},"updated":"2021-12-02 19:39:36.000000000","message":"Maybe fix this in a followup patch.  I think this should be True (compare to line 1811).","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"c6a07f81718771ab27f5a23b7b4483a7df102ea8","unresolved":false,"context_lines":[{"line_number":176,"context_line":"            raise exception.Conflict(msg)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"        query \u003d session.query(models.Image).filter_by(id\u003dimage_id)"},{"line_number":179,"context_line":"        values \u003d {\u0027status\u0027: \u0027active\u0027, \u0027deleted\u0027: 0}"},{"line_number":180,"context_line":"        query.update(values, synchronize_session\u003d\u0027fetch\u0027)"},{"line_number":181,"context_line":""},{"line_number":182,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"e8b90792_855cde15","line":179,"range":{"start_line":179,"start_character":49,"end_line":179,"end_character":50},"in_reply_to":"4e1c8afd_2ffec1fd","updated":"2022-01-31 15:22:21.000000000","message":"Ack","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"79b157d50c893e7371e955c5ee621d6f60398f51","unresolved":true,"context_lines":[{"line_number":176,"context_line":"            raise exception.Conflict(msg)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"        query \u003d session.query(models.Image).filter_by(id\u003dimage_id)"},{"line_number":179,"context_line":"        values \u003d {\u0027status\u0027: \u0027active\u0027, \u0027deleted\u0027: 0}"},{"line_number":180,"context_line":"        query.update(values, synchronize_session\u003d\u0027fetch\u0027)"},{"line_number":181,"context_line":""},{"line_number":182,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"4e1c8afd_2ffec1fd","line":179,"range":{"start_line":179,"start_character":49,"end_line":179,"end_character":50},"in_reply_to":"8feaa298_633784ef","updated":"2021-12-02 19:57:19.000000000","message":"Yeah, if there are other problems here I\u0027d like to fix them separately. I added image_set_property_atomic() so I wanted to fix it. It was also by far the most recent addition here so I assumed the others were right. I\u0027d guess that this means image restore doesn\u0027t work on postgres either...","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"86836aca03d202a35cc931e0bb101afb604e663e","unresolved":true,"context_lines":[{"line_number":874,"context_line":""},{"line_number":875,"context_line":"        # This should be:"},{"line_number":876,"context_line":"        #   UPDATE image_properties SET value\u003d$value, deleted\u003d0"},{"line_number":877,"context_line":"        #     WHERE name\u003d$name AND deleted!\u003d0"},{"line_number":878,"context_line":"        result \u003d connection.execute(table.update().where("},{"line_number":879,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":880,"context_line":"                        table.c.image_id \u003d\u003d image_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a060b7c_58bf93a2","line":877,"updated":"2021-12-02 19:39:36.000000000","message":"Should probably fix this comment.","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"79b157d50c893e7371e955c5ee621d6f60398f51","unresolved":true,"context_lines":[{"line_number":874,"context_line":""},{"line_number":875,"context_line":"        # This should be:"},{"line_number":876,"context_line":"        #   UPDATE image_properties SET value\u003d$value, deleted\u003d0"},{"line_number":877,"context_line":"        #     WHERE name\u003d$name AND deleted!\u003d0"},{"line_number":878,"context_line":"        result \u003d connection.execute(table.update().where("},{"line_number":879,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":880,"context_line":"                        table.c.image_id \u003d\u003d image_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"87b78f70_26b0ba2a","line":877,"in_reply_to":"3a060b7c_58bf93a2","updated":"2021-12-02 19:57:19.000000000","message":"Sure, I actually just pushed this because it was the test patch for the user reporting the problem. I need to follow up with a test as well, I just wanted to get this attached to the bug as a reminder.","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"c6a07f81718771ab27f5a23b7b4483a7df102ea8","unresolved":false,"context_lines":[{"line_number":874,"context_line":""},{"line_number":875,"context_line":"        # This should be:"},{"line_number":876,"context_line":"        #   UPDATE image_properties SET value\u003d$value, deleted\u003d0"},{"line_number":877,"context_line":"        #     WHERE name\u003d$name AND deleted!\u003d0"},{"line_number":878,"context_line":"        result \u003d connection.execute(table.update().where("},{"line_number":879,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":880,"context_line":"                        table.c.image_id \u003d\u003d image_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"e4ddabea_78498988","line":877,"in_reply_to":"87b78f70_26b0ba2a","updated":"2022-01-31 15:22:21.000000000","message":"Regular test coverage/results shows that it doesn\u0027t cause any regression.","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"3bcd94f602b87f8554438b8ab9c5528c215e63c2","unresolved":true,"context_lines":[{"line_number":878,"context_line":"        result \u003d connection.execute(table.update().where("},{"line_number":879,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":880,"context_line":"                        table.c.image_id \u003d\u003d image_id,"},{"line_number":881,"context_line":"                        table.c.deleted !\u003d False)).values("},{"line_number":882,"context_line":"                            value\u003dvalue, deleted\u003dFalse))"},{"line_number":883,"context_line":"        if result.rowcount \u003d\u003d 1:"},{"line_number":884,"context_line":"            # Found and updated a deleted property, so we win"}],"source_content_type":"text/x-python","patch_set":1,"id":"597d241b_d92d1317","line":881,"updated":"2021-12-06 16:36:41.000000000","message":"Thanks Dan for the quick dive into the issue and the quickly provided fix.\nFor what it\u0027s worth, importing an image works just fine on PostgreSQL now!","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"c6a07f81718771ab27f5a23b7b4483a7df102ea8","unresolved":false,"context_lines":[{"line_number":878,"context_line":"        result \u003d connection.execute(table.update().where("},{"line_number":879,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":880,"context_line":"                        table.c.image_id \u003d\u003d image_id,"},{"line_number":881,"context_line":"                        table.c.deleted !\u003d False)).values("},{"line_number":882,"context_line":"                            value\u003dvalue, deleted\u003dFalse))"},{"line_number":883,"context_line":"        if result.rowcount \u003d\u003d 1:"},{"line_number":884,"context_line":"            # Found and updated a deleted property, so we win"}],"source_content_type":"text/x-python","patch_set":1,"id":"56e55a49_db529d33","line":881,"in_reply_to":"597d241b_d92d1317","updated":"2022-01-31 15:22:21.000000000","message":"Ack","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"86836aca03d202a35cc931e0bb101afb604e663e","unresolved":true,"context_lines":[{"line_number":924,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":925,"context_line":"                        table.c.value \u003d\u003d value,"},{"line_number":926,"context_line":"                        table.c.image_id \u003d\u003d image_id,"},{"line_number":927,"context_line":"                        table.c.deleted \u003d\u003d 0)))"},{"line_number":928,"context_line":"        if result.rowcount \u003d\u003d 1:"},{"line_number":929,"context_line":"            return"},{"line_number":930,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"efab332b_f64f69c8","line":927,"range":{"start_line":927,"start_character":43,"end_line":927,"end_character":44},"updated":"2021-12-02 19:39:36.000000000","message":"This should be False.","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"c6a07f81718771ab27f5a23b7b4483a7df102ea8","unresolved":false,"context_lines":[{"line_number":924,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":925,"context_line":"                        table.c.value \u003d\u003d value,"},{"line_number":926,"context_line":"                        table.c.image_id \u003d\u003d image_id,"},{"line_number":927,"context_line":"                        table.c.deleted \u003d\u003d 0)))"},{"line_number":928,"context_line":"        if result.rowcount \u003d\u003d 1:"},{"line_number":929,"context_line":"            return"},{"line_number":930,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"bf1baf44_865b6af6","line":927,"range":{"start_line":927,"start_character":43,"end_line":927,"end_character":44},"in_reply_to":"ec058bdd_f5c9c4a0","updated":"2022-01-31 15:22:21.000000000","message":"Done","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"79b157d50c893e7371e955c5ee621d6f60398f51","unresolved":true,"context_lines":[{"line_number":924,"context_line":"            sa_sql.and_(table.c.name \u003d\u003d name,"},{"line_number":925,"context_line":"                        table.c.value \u003d\u003d value,"},{"line_number":926,"context_line":"                        table.c.image_id \u003d\u003d image_id,"},{"line_number":927,"context_line":"                        table.c.deleted \u003d\u003d 0)))"},{"line_number":928,"context_line":"        if result.rowcount \u003d\u003d 1:"},{"line_number":929,"context_line":"            return"},{"line_number":930,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ec058bdd_f5c9c4a0","line":927,"range":{"start_line":927,"start_character":43,"end_line":927,"end_character":44},"in_reply_to":"efab332b_f64f69c8","updated":"2021-12-02 19:57:19.000000000","message":"Ack, thanks, I agree this should be fixed in the same patch as the set one.","commit_id":"b948cc25aa38c880a7103364bc79f16be644e310"}]}
