Skip to content

Create empty snapshot for metadata operations #7075

@jackye1995

Description

@jackye1995

Feature Request / Improvement

based on #6965 (comment)

Creating an empty snapshot for all metadata operations to make sure table does not have a state with no snapshot might simplify various use cases.

(1) for branching, main does not need to be a special case compared to custom branches that has to exist only after the first data write.

(2) for time travel, currently schema is derived from snapshot ID at the specific time. If a table added data at t0, has for example schema update at t1, creating an empty snapshot at t1 means that traveling to t0 and t1 will yield different results because schema has changed, which makes more sense.

However, doing so might have other implications and affect behavior of existing operations like snapshot expiration.

Also we will have to keep backwards compatibility and still deal with tables with no snapshot, so maybe we do not gain much and have to live with the current situation.

Would like to know what others think.

cc @rdblue @aokolnychyi @RussellSpitzer @danielcweeks

Query engine

None

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions