apache/iceberg

Core: Stream DV Puffin rewrite in RewriteTablePathUtil to reduce memory pressure

Open

#15,924 创建于 2026年4月9日

在 GitHub 查看
 (2 评论) (0 反应) (1 负责人)Java (1,915 fork)batch import
coregood first issueimprovement

仓库指标

Star
 (5,146 star)
PR 合并指标
 (平均合并 10天 22小时) (30 天内合并 164 个 PR)

描述

Feature Request / Improvement

Description

RewriteTablePathUtil.rewriteDVFile currently rewrites deletion vector (DV) Puffin files by reading all rewritten blobs into an in-memory list before writing them out, which can create unnecessary memory pressure when rewriting larger DV files or files with many blobs.

Suggested improvement

Refactor RewriteTablePathUtil.rewriteDVFile to stream rewritten blobs directly to the output PuffinWriter while iterating through the source blobs, instead of collecting all rewritten blobs into a temporary list first.

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

贡献者指南