Skip to content

SplittableReadData#140

Closed
tpietzsch wants to merge 62 commits intosaalfeldlab:masterfrom
tpietzsch:splittable
Closed

SplittableReadData#140
tpietzsch wants to merge 62 commits intosaalfeldlab:masterfrom
tpietzsch:splittable

Conversation

@tpietzsch
Copy link
Copy Markdown
Collaborator

Everything related to splitting ReadData moved here from #137
also see relevant discussion there

@bogovicj Feel free to start prototyping limit(...), slice(...), split(...) here...

tpietzsch and others added 30 commits January 28, 2025 17:54
to be able to turn those methods on/off in the DataBlock interface
without causing compile errors in the implementations.
revert to holding serialized and actual data. otherwise we can't be
compatible with existing N5 datasets.
* Move ReadData etc to separate classes
* Add ReadData.writeTo(OutputStream)
* Add EncodedReadData that wraps a ReadData and an OutputStreamEncoder
* Compression (BytesCodec) can encode ReadData. (This might happen
  immediately or later when the ReadData is written to OutputStream).
We still need a custom interface "OutputStreamOperator" because we want
to throw IOException and UnaryOperator::apply doesn't.
When data is requested from the LazyReadData, the LazyReadData will ask
its OutputStreamWriter to write the data to a ByteArrayOutputStream.

When the LazyReadData itself is written to an OutputStream, it will pass
that OutputStream to its OutputStreamWriter (without loading the data
into a byte[] array first).
avoids the Compression argument to encode/decode methods
This is in preparation for moving SplittableReadData into a separate PR
@bogovicj
Copy link
Copy Markdown
Contributor

@tpietzsch I think everything in this PR has been merged elsewhere into master already.
If so, can we close this?

@tpietzsch tpietzsch closed this Oct 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants