Skip to content

fix: use shared arrow allocator and fix concurrent cortas#49

Merged
jackye1995 merged 4 commits intolance-format:mainfrom
jackye1995:fix-concurrent-test
Feb 24, 2026
Merged

fix: use shared arrow allocator and fix concurrent cortas#49
jackye1995 merged 4 commits intolance-format:mainfrom
jackye1995:fix-concurrent-test

Conversation

@jackye1995
Copy link
Copy Markdown
Collaborator

@jackye1995 jackye1995 commented Feb 23, 2026

No description provided.

@jackye1995 jackye1995 changed the title fix: use shared arrow allocator and fix concurrent write fix: use shared arrow allocator and fix concurrent read write Feb 23, 2026
- Use shared allocator from LanceRuntime when opening datasets
  (Dataset.open(allocator, path, options) instead of Dataset.open(path, options))
  This prevents datasets from closing their self-managed allocators
  while scanners are still using them.

- Use child allocators in LanceBasePageSource for proper resource isolation
  Each page source creates a child allocator that's closed when done.

- Don't close the root allocator in LanceRuntime.close() since
  concurrent operations may still be using it.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Lance does not guarantee all concurrent inserts are visible due to
its merge-on-read approach without proper distributed locking.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@jackye1995 jackye1995 changed the title fix: use shared arrow allocator and fix concurrent read write fix: use shared arrow allocator and fix concurrent cortas Feb 24, 2026
@jackye1995 jackye1995 merged commit 7b5b81d into lance-format:main Feb 24, 2026
11 checks passed
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.

1 participant