docs: chunk dimensions of 2^32 or more and copy-free 4 GiB writes
known-issues: two fixed entries (chunk dimensions of 2^32 or more were refused; a 4 GiB unfiltered chunk was held several times when written), the open "Chunks of 4 GiB or more: limits" updated (LZ4/Zstd tested end to end, memory figures of 2026-09-29) and the open-issues table in sync. CHANGELOG (Unreleased) entry with the public API changes and the peak RSS measurements; README capability table. The wasm package test lists the new fixture and expects an Overflow error reading its chunks. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
@@ -514,6 +514,15 @@ async function limitTests() {
|
||||
`huge chunk: ${name}`);
|
||||
}
|
||||
hc.free();
|
||||
// Likewise chunks whose dimension is 2^32 or more (u8 chunks of 2^32 + 7).
|
||||
const dims = pkg.open(new Uint8Array(readFileSync(join(import.meta.dirname, "..", "..", "..",
|
||||
"crates/clawhdf5/tests/fixtures/huge_chunk_dims.h5"))));
|
||||
eq(dims.list("/").map((e) => e.name), ["earray", "single"], "huge chunk dims: list");
|
||||
for (const name of ["single", "earray"]) {
|
||||
await fails(() => dims.readHyperslab(`/${name}`, [0], [4]), /exceeds this platform.s address space/,
|
||||
`huge chunk dims: ${name}`);
|
||||
}
|
||||
dims.free();
|
||||
}
|
||||
|
||||
// A body of `total` bytes in 64 KiB pieces, made as they are read; `pulled()`
|
||||
|
||||
Reference in New Issue
Block a user