Skip to content

Append-only option for Spark incremental append read that throws #13179

Closed

Description

@smaheshwar-pltr

Feature Request / Improvement

Spark's incremental append reading is useful for append-only incremental workflows.

It's documented as only reading snapshots with "append" snapshot types - it ignores any snapshots in the range that don't have this type, e.g. DELETE snapshots.

I think this is sensible default behaviour, but I'm wondering what the community thinks about allowing an append-only option to be set that throws if there are non-append snapshots in the range, to mitigate data integrity of a downstream table being compromised for strictly append-only workflows. (It would be unset by default)

Query engine

None

Willingness to contribute

  • I can contribute this improvement/feature independently
  • I would be willing to contribute this improvement/feature with guidance from the Iceberg community
  • I cannot contribute this improvement/feature at this time

Activity

  1. smaheshwar-pltr commented on May 28, 2025

    @smaheshwar-pltr
    ContributorAuthor

    Not sure who to ping here so CC-ing folks I see on previous Spark incremental read work 😄: @aokolnychyi @huaxingao @szehon-ho @RussellSpitzer, please let me know your thoughts!

  2. smaheshwar-pltr commented on Aug 31, 2025

    @smaheshwar-pltr
    ContributorAuthor

    Closing this one out for now - realised that ignoring REPLACE snapshots is still desirable, which changes the proposal.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    improvementPR that improves existing functionality

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions