mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-16 18:08:21 +00:00
feat(table-catalog): finalize Iceberg REST behavior (#6072)
* feat(table-catalog): finalize Iceberg REST behavior * fix(table-catalog): address REST finalization regressions * test(table-catalog): expect REST commit conflicts * test(table-catalog): avoid serialized view test deadlocks * fix(table-catalog): adapt shared test backend * fix(table-catalog): enforce Iceberg metadata invariants * fix(table-catalog): preserve manifest length in test * test(table-catalog): use valid metadata fixtures * test(table-catalog): seed manifests before manifest lists * fix(table-catalog): restore validation gates --------- Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com> Co-authored-by: overtrue <anzhengchao@gmail.com>
This commit is contained in:
@@ -48,6 +48,8 @@ class FailureCoverageTest(unittest.TestCase):
|
||||
self.assertIn("expected-version-token", by_name["stale-token-commit-conflict"]["body"])
|
||||
self.assertIn("expected-metadata-location", by_name["stale-token-commit-conflict"]["body"])
|
||||
self.assertIn("new-metadata-location", by_name["stale-token-commit-conflict"]["body"])
|
||||
self.assertEqual(by_name["stale-token-commit-conflict"]["body"]["requirements"], [])
|
||||
self.assertEqual(by_name["stale-token-commit-conflict"]["body"]["updates"], [])
|
||||
self.assertNotIn("base", by_name["stale-token-commit-conflict"]["body"])
|
||||
self.assertEqual(
|
||||
by_name["diagnostics-after-finalization-gap"]["path"],
|
||||
@@ -56,6 +58,8 @@ class FailureCoverageTest(unittest.TestCase):
|
||||
self.assertEqual(by_name["diagnostics-after-finalization-gap"]["method"], "GET")
|
||||
self.assertEqual(by_name["recovery-repairs-idempotency-index"]["method"], "POST")
|
||||
self.assertIn("does_not_exist.metadata.json", json.dumps(by_name["missing-metadata-object-rejected"]))
|
||||
self.assertEqual(by_name["missing-metadata-object-rejected"]["body"]["requirements"], [])
|
||||
self.assertEqual(by_name["missing-metadata-object-rejected"]["body"]["updates"], [])
|
||||
self.assertNotIn("base", by_name["missing-metadata-object-rejected"]["body"])
|
||||
|
||||
def test_cli_prints_failure_matrix_and_probe_plan(self) -> None:
|
||||
|
||||
Reference in New Issue
Block a user