)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"f17bf614737245b1e99d573b8aedf84ede699eb2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9b3fe873_05383039","updated":"2026-10-14 13:52:19.000000000","message":"Please file a bug for this. We\u0027ll want to backport it as db purge foreign key errors always end up being problematic for deployers.","commit_id":"c682d7e882f8e38e6b56b46a20b684be7321a36e"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"90cb8a1398f3afa7b2268dfc0f81985ecebf2469","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"148977f5_50229802","updated":"2026-10-01 14:07:38.000000000","message":"recheck","commit_id":"c682d7e882f8e38e6b56b46a20b684be7321a36e"}],"cinder/db/api.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"37708d42e6f879f1f1ab9c8e1ea80fe83cbb40fb","unresolved":true,"context_lines":[{"line_number":2171,"context_line":"    # SnapshotMetadata references snapshots (not volumes), so it is not"},{"line_number":2172,"context_line":"    # covered by the VOLUME_DEPENDENT_MODELS loop above. Leaving its rows live"},{"line_number":2173,"context_line":"    # after a cascade delete wedges `cinder-manage db purge` on the"},{"line_number":2174,"context_line":"    # snapshot_metadata_ibfk_1 foreign key two weeks later."},{"line_number":2175,"context_line":"    query \u003d model_query(context, models.SnapshotMetadata).filter("},{"line_number":2176,"context_line":"        models.SnapshotMetadata.snapshot_id.in_("},{"line_number":2177,"context_line":"            sql.select(models.Snapshot.id).where("}],"source_content_type":"text/x-python","patch_set":1,"id":"7c526feb_eb51a728","line":2174,"range":{"start_line":2174,"start_character":43,"end_line":2174,"end_character":58},"updated":"2026-10-13 05:34:06.000000000","message":"is this really a timeframe when this issue could arise or just during the reproducer we saw this behavior in a purge performed 2 weeks after?\nIf it\u0027s the latter, please remove this part","commit_id":"c682d7e882f8e38e6b56b46a20b684be7321a36e"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"37708d42e6f879f1f1ab9c8e1ea80fe83cbb40fb","unresolved":true,"context_lines":[{"line_number":2180,"context_line":"        )"},{"line_number":2181,"context_line":"    )"},{"line_number":2182,"context_line":"    entity \u003d query.column_descriptions[0][\u0027entity\u0027]"},{"line_number":2183,"context_line":"    query.update("},{"line_number":2184,"context_line":"        {"},{"line_number":2185,"context_line":"            \u0027deleted\u0027: True,"},{"line_number":2186,"context_line":"            \u0027deleted_at\u0027: now,"},{"line_number":2187,"context_line":"            \u0027updated_at\u0027: entity.updated_at,"},{"line_number":2188,"context_line":"        }"},{"line_number":2189,"context_line":"    )"},{"line_number":2190,"context_line":"    del updated_values[\u0027updated_at\u0027]"},{"line_number":2191,"context_line":""},{"line_number":2192,"context_line":"    return updated_values"}],"source_content_type":"text/x-python","patch_set":1,"id":"ad43d27c_02366a9a","line":2189,"range":{"start_line":2183,"start_character":0,"end_line":2189,"end_character":5},"updated":"2026-10-13 05:34:06.000000000","message":"why not include this as part of the VOLUME_DEPENDENT_MODELS loop?\nthe only difference I see is the query part which can be differentiated via an if else otherwise the rest of the logic is same so we can avoid duplication here","commit_id":"c682d7e882f8e38e6b56b46a20b684be7321a36e"}]}
