Skip to content

test(sessions): I cover tied-timestamp persistence gaps - #7492

Draft
jabrailkhalil wants to merge 1 commit into
google:mainfrom
jabrailkhalil:test/database-tied-timestamp-regressions
Draft

jabrailkhalil wants to merge 1 commit into
google:mainfrom
jabrailkhalil:test/database-tied-timestamp-regressions

Conversation

@jabrailkhalil

Copy link
Copy Markdown
Contributor

Link to Issue or Description of Change

Related: #7286.

I prepared this tests-only draft following the suggested regression-first approach.

I reproduce two persistence gaps: (timestamp, id) ordering changes a tied-timestamp append history and its recent tail; using event.timestamp as the revision marker lets a stale writer append after another same-timestamp commit.

I added file-backed tests with independent service instances, 40 events in forward/reverse ID order, recent limits None/0/1/5/100, and same/increasing-timestamp writer controls. I mark only the five known failures with strict, assertion-only xfail. I retain the existing ID-order tests and leave production code, schemas and migrations unchanged while the ordering/schema decision remains open.

Testing Plan

I ran the full tox matrix and repository hooks on Linux:

Python Passed Skipped Xfailed Xpassed
3.11 18,396 88 29 2
3.12 18,387 89 29 2
3.13 18,387 89 29 2
3.14 18,387 89 29 2

I used parallel pytest within tox and the same lancedb install exclusion as upstream CI. The validation workflow is separate from this PR.

I also ran:

  • New cases: 7 passed, 5 xfailed on every matrix version; with --runxfail, exactly the five intended assertions fail.
  • Windows Python 3.12 sessions suite: 586 passed, 6 xfailed.
  • pre-commit run --all-files: passed; mypy comparison: 828 errors on both base and head, no new errors.
  • uv build, a clean wheel installation/session round-trip, and the six model-free Workflow replay scenarios in both development and wheel environments: three successful controls and three expected replay divergences.

I reviewed the diff. I tested SQLite-backed storage; I have not tested PostgreSQL/MySQL/Spanner or an actual concurrent scheduling race. I am recording current failures, not claiming a production fix.

I capture fresh-reader ordering, recent-event limits and same-timestamp stale writers with strict xfails while schema alignment remains open. Related: google#7286.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants