Skip to content

feat: Log selected flat map feature names in keySelectionCallback#752

Open
apurva-meta wants to merge 1 commit into
facebookincubator:mainfrom
apurva-meta:export-D105609449
Open

feat: Log selected flat map feature names in keySelectionCallback#752
apurva-meta wants to merge 1 commit into
facebookincubator:mainfrom
apurva-meta:export-D105609449

Conversation

@apurva-meta
Copy link
Copy Markdown
Contributor

@apurva-meta apurva-meta commented May 18, 2026

Summary:
Adds a new optional flatMapFeatureProjectionCallback on Nimble's FieldReaderParams that, when set, is invoked once per flat map column during createFieldReaderFactory() with the column name and the names of the features that were actually projected (in the caller-specified order).

This gives loggers (e.g. Scuba/ODS pipelines) the information needed to inform write-time flat map feature reordering configurations (VeloxWriterOptions::featureReordering / FeatureReorderingLayoutPlanner), addressing the gap noted in T237389198 where the existing keySelectionCallback only reports aggregate {totalKeys, selectedKeys} counts.

The existing keySelectionCallback path is unchanged, and the new callback defaults to nullptr so all existing callers are unaffected. No Velox / DWRF / DWIO API headers are touched, so this is safe for the OSS Nimble build (which pins an older Velox snapshot).

Reviewed By: srsuryadev

Differential Revision: D105609449

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Meta Open Source bot. label May 18, 2026
Summary:
Adds a new optional `flatMapFeatureProjectionCallback` on Nimble's `FieldReaderParams` that, when set, is invoked once per flat map column during `createFieldReaderFactory()` with the column name and the names of the features that were actually projected (in the caller-specified order).

This gives loggers (e.g. Scuba/ODS pipelines) the information needed to inform write-time flat map feature reordering configurations (`VeloxWriterOptions::featureReordering` / `FeatureReorderingLayoutPlanner`), addressing the gap noted in T237389198 where the existing `keySelectionCallback` only reports aggregate `{totalKeys, selectedKeys}` counts.

The existing `keySelectionCallback` path is unchanged, and the new callback defaults to nullptr so all existing callers are unaffected. No Velox / DWRF / DWIO API headers are touched, so this is safe for the OSS Nimble build (which pins an older Velox snapshot).

Reviewed By: srsuryadev

Differential Revision: D105609449
@meta-codesync
Copy link
Copy Markdown

meta-codesync Bot commented May 18, 2026

@apurva-meta has exported this pull request. If you are a Meta employee, you can view the originating Diff in D105609449.

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

Labels

CLA Signed This label is managed by the Meta Open Source bot. fb-exported meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant