[Issue #1305] standardize file naming#1308
Open
gengdy1545 wants to merge 3 commits intopixelsdb:masterfrom
Open
[Issue #1305] standardize file naming#1308gengdy1545 wants to merge 3 commits intopixelsdb:masterfrom
gengdy1545 wants to merge 3 commits intopixelsdb:masterfrom
Conversation
AntiO2
requested changes
Mar 16, 2026
pixels-cli/src/main/java/io/pixelsdb/pixels/cli/load/IndexedPixelsConsumer.java
Show resolved
Hide resolved
pixels-cli/src/main/java/io/pixelsdb/pixels/cli/load/IndexedPixelsConsumer.java
Show resolved
Hide resolved
pixels-cli/src/main/java/io/pixelsdb/pixels/cli/load/IndexedPixelsConsumer.java
Show resolved
Hide resolved
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Standardize all
.pxlfile naming conventions to resolve Issue #1305(file naming issues in FileWriterManager). This is a subtask of Issue #1288
([pixels-retina, pixels-index, cpp] create new file) and lays the naming
foundation required by the Storage GC file-grouping and rewrite mechanism.
Background
Each write path (Retina CDC, batch load, compaction) used its own ad-hoc naming
scheme, making it impossible for Storage GC to reliably extract
virtualNodeId(for grouping files to rewrite), file type (for GC eligibility), and
hostName(for routing to the correct Retina service).
Changes
PixelsFileNameUtils: Establishes a unified.pxlfile name format<hostName>_<timestamp>_<count>_<virtualNodeId>_<type>.pxlas the singlesource of truth. Provides builder methods for all write paths
(
buildRetinaFileName,buildOrderedFileName,buildCompactFileName,buildSingleFileName,buildCopyFileName) and parser methods(
extractHostName,extractVirtualNodeId,extractFileType,isGcEligible).NetUtils: Consolidates scattered hostname resolution logic frommultiple modules into a shared utility with a well-defined fallback chain.
CompactExecutor: Groups input files byvirtualNodeIdbeforecompaction to preserve the
delete_tsmonotonicity invariant required byStorage GC; skips
copy-type and unrecognized-format files; fixes in-placemutation of
numRowGroupInBlock/compactLayout.FileWriterManager,IndexedPixelsConsumer,SimplePixelsConsumer) to use the unified naming API.RetinaUtils: Replace inline hostname extraction withPixelsFileNameUtils.extractHostName()andisGcEligible().Breaking Change
Existing files with the old naming format are incompatible with the new parser.
Migration or fresh deployment is required before upgrading.
Closes #1305
Part of #1288