)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"change_message_id":"173d375f91336f4b8a4f9872710e2900396015d6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d1669771_55e050e9","updated":"2026-06-10 20:57:25.000000000","message":"This looks good to me! Test cases look good too!","commit_id":"01d6fcafae051d60f958da4545d53d1cb1c0622f"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2bd85f04d03707a8bd3c9671348b0c22761354db","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4982d606_f20ae972","updated":"2026-06-04 18:41:59.000000000","message":"ok, well *now* i\u0027m looking for a common DatabaseBroker method like `self.fetch_expected_row(qry, table)` or something because this `if not row: quarantine()` seems like a kind of \"common omission\" in both account \u0026 container backend","commit_id":"01d6fcafae051d60f958da4545d53d1cb1c0622f"},{"author":{"_account_id":39164,"name":"Matthew Allen","display_name":"Matthew Allen","email":"maallen@nvidia.com","username":"matthewallen"},"change_message_id":"fc5159170d320ebf35612e74ea5efcb4f7546a89","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cbc6abdf_09fba028","in_reply_to":"4982d606_f20ae972","updated":"2026-07-15 23:36:23.000000000","message":"I missed this comment in my last pass over the reviews. New patch set incoming...","commit_id":"01d6fcafae051d60f958da4545d53d1cb1c0622f"},{"author":{"_account_id":39164,"name":"Matthew Allen","display_name":"Matthew Allen","email":"maallen@nvidia.com","username":"matthewallen"},"change_message_id":"2c44adc6fc05c15417e54bb29f57bd68b9b91349","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8bf40f06_f8b9481f","in_reply_to":"cbc6abdf_09fba028","updated":"2026-07-20 15:48:14.000000000","message":"Refactored the redundant code out into a single DatabaseBroker method.","commit_id":"01d6fcafae051d60f958da4545d53d1cb1c0622f"}],"swift/container/backend.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"50af21909b77e1548b58290a3e7919e32efefc2a","unresolved":true,"context_lines":[{"line_number":714,"context_line":"        with self.get() as conn:"},{"line_number":715,"context_line":"            # policy_stat counts survive a missing container_stat row, so the"},{"line_number":716,"context_line":"            # query below can\u0027t detect that damage -- check for it explicitly."},{"line_number":717,"context_line":"            self.fetch_expected_row(conn, \u0027SELECT 1 FROM container_stat\u0027)"},{"line_number":718,"context_line":"            try:"},{"line_number":719,"context_line":"                row \u003d conn.execute("},{"line_number":720,"context_line":"                    \u0027SELECT max(object_count) from policy_stat\u0027).fetchone()"}],"source_content_type":"text/x-python","patch_set":4,"id":"5253b07c_9e27ca04","line":717,"updated":"2026-08-21 18:53:29.000000000","message":"what?  we\u0027re just adding in extra queries to avoid accidently quarantining stuff?","commit_id":"25c6f97e52ce53cef53657a77f142f644373a5c8"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"50af21909b77e1548b58290a3e7919e32efefc2a","unresolved":true,"context_lines":[{"line_number":861,"context_line":"        \"\"\""},{"line_number":862,"context_line":"        row \u003d self.fetch_expected_row(conn, \u0027\u0027\u0027"},{"line_number":863,"context_line":"            SELECT put_timestamp, delete_timestamp, object_count"},{"line_number":864,"context_line":"            FROM container_stat\u0027\u0027\u0027)"},{"line_number":865,"context_line":"        info \u003d dict(row)"},{"line_number":866,"context_line":"        info.update(self._get_alternate_object_stats()[1])"},{"line_number":867,"context_line":"        return self._is_deleted_info(**info)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5419cbb7_62d31ea4","line":864,"updated":"2026-08-21 18:53:29.000000000","message":"oic!  in container_backend we have a very different idea of what THE \"expected_row\" should be\n\n... and yet we\u0027d still quarantine with `self.quarantine(\"missing row in %s_stat table\" % self.db_type)` even the problem was the in the view 🤔\n\nActually container_info table vs container_stat view is sort of confusing; I don\u0027t know if that problem get\u0027s any better/worse depending on the quarantine error message","commit_id":"25c6f97e52ce53cef53657a77f142f644373a5c8"}]}
