lance-format / lance-format/lance

PMC vote: new protobuf format for Action-based transactions

Open
#6,455 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rust
Stars
7.1k
Forks
852
Avg merge
3d 18h
Merged PRs (30d)
272

Description

Parent PRD

Milestone: Action-based Transactions (UserOperation) — see milestone description for full PRD.
Discussion: #5960

What to build

Submit the new protobuf message definitions for PMC vote (1-week voting period). Messages include:

  • UserOperation (uuid, read_version, repeated UserAction)
  • UserAction (description, repeated Action)
  • Action oneof with all 14 variants
  • All individual action messages (AddFragments, RemoveFragments, UpdateFragment, AddFields, DropFields, UpdateSchemaMetadata, AddIndex, RemoveIndex, UpdateConfig, UpdateTableMetadata, SetDataFormat, SetFeatureFlags, ReserveFragmentIds, UpdateMemWalIndex)
  • Top-level Transaction oneof: UserOperation | Restore | Clone

The proto definitions should be informed by the proven internal architecture from the tracer bullet.

Acceptance criteria

  • Proto definitions drafted and submitted for PMC vote
  • 1-week voting period completed
  • Vote passed

Blocked by

  • Blocked by #6449 (tracer bullet — need proven architecture before voting)

User stories addressed

  • User story 8: feature flag compatibility
  • User story 12: writer feature flag for cutover control

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Action-based Transactions milestone description and discussion #5960, then review the architecture produced by blocked issue #6449. Draft the listed transaction and action messages for PMC submission; done requires the definitions to be submitted, the one-week vote to complete, and the vote to pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend-api-design, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.