feat: support in memory trace generation #1342
Merged
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.
This separates the mechanism for representing columns from trace generation itself, such that the representation can support different implementations and (critically) writing can be performed in memory.
Note
Replaces file-mapped buffer writing with a pluggable Column interface and bitwidth-based headers, updating open/metadata APIs, generated fields, and setters to support in-memory trace generation.
bytesPerElementwithbitwidthinColumnHeaderand its construction.Columninterface (write(boolean|long|byte[])).open(...)toopen(Column[] columns); remove file/ByteBuffer-based open path.MappedByteBuffertoColumn.addMetadata(...)withgetMetaData()accessor.Column.write(...); remove custom byte/long putters and ByteBuffer position math.fillAndValidateRow()writes default values viaColumn.write(...)instead of advancing by byte width.Written by Cursor Bugbot for commit 922c1cf. This will update automatically on new commits. Configure here.