Skip to content

Conversation

@emkornfield
Copy link
Collaborator

@emkornfield emkornfield commented Oct 23, 2025

🥞 Stacked PR

Use this link to review incremental changes.


Adds a deletion vector writer and related helper classes, as part of work to expose writing deletion vectors in the Kernel.

  • Adds a trait for DeletionVector and a default implementation that is backed by a RoaringTreemap.
  • Adds a DV Writer that can write multiple DVs to a single file.
  • Adds a first class concept for DeletionVector path that can be used to generate either the absolute path or the encoded relative path. This is used to give back a location to writers that want to write new DVs, and then create new DeletionVectorDescriptor objects that combine the offsets.
  • To facilitate testing, updated DeletionVectorDescriptor to have a read method that supports validating CRC while reading the deletion vector.

TESTING=Verified both values written directly, and round tripping with DeletionVectorDescriptor for reads.

@github-actions github-actions bot added the breaking-change Change that require a major version bump label Oct 23, 2025
@emkornfield emkornfield changed the title First draft feat: Add deletion vector file writer Oct 23, 2025
@codecov
Copy link

codecov bot commented Oct 24, 2025

Codecov Report

❌ Patch coverage is 92.62473% with 34 lines in your changes missing coverage. Please review.
✅ Project coverage is 84.97%. Comparing base (1bb3365) to head (0abb739).

Files with missing lines Patch % Lines
kernel/src/actions/deletion_vector_writer.rs 93.61% 8 Missing and 12 partials ⚠️
kernel/src/actions/deletion_vector.rs 91.59% 8 Missing and 2 partials ⚠️
kernel/src/transaction/mod.rs 86.20% 0 Missing and 4 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1425      +/-   ##
==========================================
+ Coverage   84.86%   84.97%   +0.11%     
==========================================
  Files         119      120       +1     
  Lines       30880    31326     +446     
  Branches    30880    31326     +446     
==========================================
+ Hits        26206    26619     +413     
- Misses       3395     3410      +15     
- Partials     1279     1297      +18     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking-change Change that require a major version bump

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant