refactor: type writeChunk map keys as ColumnName#201
Merged
Conversation
VortexWriter.writeChunk(Map<String, Object>) became Map<ColumnName, Object>: the keys must equal schema.fieldNames(), so String lied about the domain. Now a wrong-order or wrong-name key is a compile error, and the map form matches the typed builder and the read path. Callers across csv/jdbc/parquet importers, calcite/writer tests, and performance benchmarks updated to key chunks by ColumnName. External boundaries (Calcite table names, JNI writer maps) stay String. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
dfa1
added a commit
that referenced
this pull request
Jul 6, 2026
Follow-up to the writeChunk(Map<ColumnName, Object>) retype (#201) and the Chunk.put(ColumnName, ...) builder (#200): doc snippets still showed String keys and would not compile. DocsConsistencyTest is blind to them (the .put("x", ...) / writeChunk(Map<...>) forms have no dotted receiver its regex can match), so this was caught in review, not CI. - reference.md: writeChunk(Map<String, Object>) -> Map<ColumnName, Object> - README / tutorial / compatibility: .put("x", ...) -> .put(ColumnName.of("x"), ...) - tutorial: add the ColumnName import - JdbcImporter.toChunkMap: drop a pointless ColumnName -> String -> ColumnName round-trip (List<ColumnName> names = schema.fieldNames()) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
VortexWriter.writeChunk(Map<String, Object>)becomesMap<ColumnName, Object>.The map's keys must equal
schema.fieldNames()— they are the writer's column names — so a rawStringkey lied about its domain. Typing them:columns.get(...) == null → "missing column",Chunk.put(ColumnName, …)builder and the read path (ColumnNamethroughout since Type column names as ColumnName across the read path (keystone) #200).Callers updated to key chunks by
ColumnName: csv/jdbc/parquet importers, calcite + writer tests, performance benchmarks. External boundaries stayString(Calcite table names, JNI writer maps)../mvnw verifygreen including the Rust-interop oracle (integration failsafe). Wire bytes unchanged — the writer still stores raw name strings via.value().🤖 Generated with Claude Code