)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"66c472c62cd312877e473a82746ca9489a657e3c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"29580622_8b17509e","updated":"2025-11-26 14:04:24.000000000","message":"I\u0027m not yet convinced that this is safe w.r.t.. upgrades:\n\nReverting the change, I see that legacy code will just drop the hex part and return the float part for epoch.\n\nThe only place I see the epoch part being used is swift.container.backend.ContainerBroker.db_epoch, which in turn is used in swift.container.backend.ContainerBroker.get_db_state, where it is compared to the own shard range epoch.\n\nShardRange.epoch is a Timestamp.\n\nSo a legacy  ContainerBroker could open a new-style db file named ``\u003chash\u003e_\u003cfloat\u003e_\u003chexpart\u003e.db`` that has an own shard range row with a v2 timestamp epoch ``\u003cfloat\u003e_\u003chexpart\u003e``.  In ``ContainerBroker.get_db_state`` it will test the equality of that with ``\u003cfloat\u003e`` as returned by legacy ``ContainerBroker.db_epoch`` and get the WRONG answer.","commit_id":"cdd585a22279f1787cf15ef6dc9e61b89df1d768"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"1f0167c813723cf0c484229a107e6aa1275b8433","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"f6b805cf_29364e48","updated":"2025-11-26 21:11:02.000000000","message":"I\u0027m not convinced we should do this, at least not immediately","commit_id":"0455b2f9df9dee7e5f639fa976be9e7d520f5881"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"09cbf8b7c32825b23667b19ba0048e9f38372a85","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"35864a78_48f44923","updated":"2025-11-26 23:58:28.000000000","message":"kk, then we better get this out of the chain, so I can fix up","commit_id":"0455b2f9df9dee7e5f639fa976be9e7d520f5881"}]}
