Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Feature] Prune manifest partitions before metadata decoding

オープン
#433 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@gripleaf がすでに取り組んでいます。

2026年10月13日 から。

  • #430 @gripleaf による — オープン

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
cpp
領域
data

調査の方向性

The payload names no source files. Start with the existing ManifestEntry and DataFileMeta construction and the bucket-scoped snapshot manifest cache, then read the linked PR #430, which already implements this work. Done means partition predicates run before full entry decoding on ordinary reads, Arrow-cache reads and snapshot-cache hits, with cached values kept complete and existing merge semantics unchanged.

索引モデルが issue の本文から書いたものです。

説明

Search before asking
  • I searched the existing issues for manifest partition pruning and found no matching issue.
Motivation

Partition-selective scans currently construct complete manifest entries and file metadata before discarding entries outside the requested partition. This also affects repeated reads from the bucket-scoped snapshot manifest cache, which can contain live files from many partitions.

When a query needs only a small subset of those entries, decoding unrelated file metadata and statistics adds avoidable allocation and planning work. The optimization should apply consistently to ordinary manifest reads, manifest Arrow-cache reads, and exact snapshot-cache hits.

Solution

Evaluate partition predicates before constructing full ManifestEntry and DataFileMeta objects, reusing the existing manifest batch and row-range reading paths. On snapshot-cache hits, select the exact retained snapshot and skip other snapshots without materializing their entries.

Preserve the existing lazy-decode option, ADD/DELETE merge semantics, remaining scan filters, retention limits, and metrics. Keep cached values complete across different partition predicates. Predicate evaluation errors must propagate; malformed snapshot-cache values should fall back to rebuilding from manifests. No table or cache format change is required.

Anything else?

Implementation: https://github.com/apache/paimon-cpp/pull/430

Are you willing to submit a PR?
  • I'm willing to submit a PR (PR #430 is already open).
主要言語
C++
スター
68
フォーク
34
平均マージ
3日 18時間
マージ済み PR(30日)
44

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

apache/paimon-cpp のほかの issue

apache/paimon-cpp の issue をすべて見る

似ている issue

C++ の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。