)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"cdc69df2c6d63a125cd2540cc24a7da659f67238","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4a6cffe7_1fa6c114","updated":"2022-07-14 11:07:09.000000000","message":"I think i have convinced myself that these sync points do not need to be copied to the fresh db, but that there is no harm in doing so. If we choose to go ahead with this change perhaps there could be a comment like:\n\n  The reconciler and container-sync processes will not find any rows in the \n  fresh DB with row id less than max_row, which is greater than or equal to \n  the sync points. Therefore, it is not strictly necessary to copy the sync\n  points to the fresh DB, but we copy them anyway for completeness.","commit_id":"65efbfe6546465c08ae24ca42abf986e388884a2"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"33b5392199f4887f5b91262c73cde0e1a20b2640","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d8c808d3_5bbe1601","updated":"2022-09-21 19:21:23.000000000","message":"yeah, i don\u0027t think we really need this - the fresh db objects table would only be for misplaced objects after we split out the new database","commit_id":"ed8fc9458bcf913b198a7d7755869dea91d7aac3"}],"swift/container/backend.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"cdc69df2c6d63a125cd2540cc24a7da659f67238","unresolved":true,"context_lines":[{"line_number":2027,"context_line":"                return False"},{"line_number":2028,"context_line":""},{"line_number":2029,"context_line":"        # sync the container-sync sync points"},{"line_number":2030,"context_line":"        if info.get(\u0027x_container_sync_point1\u0027):"},{"line_number":2031,"context_line":"            fresh_broker.set_x_container_sync_points("},{"line_number":2032,"context_line":"                info[\u0027x_container_sync_point1\u0027],"},{"line_number":2033,"context_line":"                info[\u0027x_container_sync_point2\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"b783dbb5_82ffcf30","line":2030,"updated":"2022-07-14 11:07:09.000000000","message":"I don\u0027t think container-sync will work with a sharded DB (no more rows will land in the fresh db except misplaced updates).\n\nHowever, similar to reconciler_sync_point comment below - I don\u0027t think it matters what value these sync points have in the fresh_db as long as they are less than max_row, but reasonable to copy from the retiring db.","commit_id":"65efbfe6546465c08ae24ca42abf986e388884a2"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"cdc69df2c6d63a125cd2540cc24a7da659f67238","unresolved":true,"context_lines":[{"line_number":2035,"context_line":"        # sync the reconciler sync point"},{"line_number":2036,"context_line":"        reconciler_sync_point \u003d self.get_reconciler_sync()"},{"line_number":2037,"context_line":"        if reconciler_sync_point:"},{"line_number":2038,"context_line":"            fresh_broker.update_reconciler_sync(reconciler_sync_point)"},{"line_number":2039,"context_line":""},{"line_number":2040,"context_line":"        # Rename to the new database"},{"line_number":2041,"context_line":"        fresh_db_filename \u003d make_db_file_path(self._db_file, epoch)"}],"source_content_type":"text/x-python","patch_set":4,"id":"afec3342_3a687ca0","line":2038,"updated":"2022-07-14 11:07:09.000000000","message":"OK, so the replicator dump_to_reconciler() method looks for misplaced object rows with row id greater than reconciler_sync_point. The fresh db has no object row ids less than the retiring db max_row, so the reconciler will find no misplaced rows between reconciler_sync_point and max_row. The fresh_db\u0027s reconciler_sync_point could therefore be any value between 0 and max_row - it makes no difference - but copying the value from retiring db is reasonable.","commit_id":"65efbfe6546465c08ae24ca42abf986e388884a2"}]}
