Add missing Python test coverage for schema epoch publish semantics

XMLWordPrintableJSON

    • Storage Engines - Foundations
    • 383.606
    • SE Foundations - 2026-07-21
    • 3

      Several publish-rejection and validation behaviors for schema epochs are not covered in the Python test suite. The existing tests in test_layered_schema07.py, test_layered_schema10.py, and test_layered_schema11.py cover the happy path but leave gaps in error handling and follower-side publish constraints.

      Add test cases to the identified files:

      test_layered_schema07.py:

      • Publish the same URI at epoch E2 after it was already published at a later epoch E1; verify publish epochs for the same URI cannot regress.

      test_layered_schema10.py:

      • Publish a follower-created table with schema epoch 0; verify EINVAL.
      • Publish a follower-created table at epoch <= stable schema epoch; verify rejection once stable is set.
      • Call publish on a follower-created table without schema_epoch; verify no-op.
      • Leave an unpublished table in a state that would otherwise become stable; verify the illegal state fails loudly.
      • Trigger illegal unpublished-table stable-data case; verify no partial durable metadata is produced.

      test_layered_schema11.py:

      • Publish a follower drop with schema epoch 0; verify EINVAL.
      • Publish a follower drop at epoch <= stable schema epoch; verify rejection.
      • Call publish on a follower drop without schema_epoch; verify no-op.

            Assignee:
            Yury Ershov
            Reporter:
            Jie Chen
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: