Skip to content

add SegmentFileBuilder, SegmentFileMapper, SegmentFileChannel interfaces#18608

Merged
gianm merged 4 commits into
apache:masterfrom
clintropolis:segment-file-interfaces
Oct 14, 2025
Merged

add SegmentFileBuilder, SegmentFileMapper, SegmentFileChannel interfaces#18608
gianm merged 4 commits into
apache:masterfrom
clintropolis:segment-file-interfaces

Conversation

@clintropolis

Copy link
Copy Markdown
Member

Description

This PR introduces new interfaces for segment file building and mapping to replace direct usages of FileSmoosher and SmooshedFileMapper, allowing for additional implementations to be defined.

Release note

(for developers)
New SegmentFileBuilder and SegmentFileMapper interfaces have been defined to replace direct usages of FileSmoosher and SmooshedFileMapper to abstract the segment building and reading process.

The main developer visible changes for extension writers with custom column implementations is that the Serializer interface has changed the writeTo method, which now accepts a SegmentFileBuilder instead of a FileSmoosher, and the ColumnBuilder method getFileMapper now returns a SegmentFileMapper instead of SmooshedFileMapper. Extensions which do not provide custom column implementations should not be impacted by these changes.

…ces to abstract segment building and reading implementations
@gianm
gianm merged commit 687ac0d into apache:master Oct 14, 2025
109 of 110 checks passed
@clintropolis
clintropolis deleted the segment-file-interfaces branch October 16, 2025 07:35
@kgyrtkirk kgyrtkirk added this to the 36.0.0 milestone Jan 19, 2026
riovic918data pushed a commit to riovic918data/druid that referenced this pull request Jun 12, 2026
…ces (apache#18608)

* add SegmentFileBuilder, SegmentFileMapper, SegmentFileChannel interfaces to abstract segment building and reading implementations

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants