meggart / DiskArrays.jl

Other
72 stars 13 forks source link

`setindex_disk_nobatch!` writes `undef` values for `StepRange` indices #171

Closed rafaqz closed 1 month ago

rafaqz commented 3 months ago

You can see that temparray is defined with undef values, and values from v are written to it. But, if i contains StepRanges, temparray will still contain undef when it is passed to writeblock!:

https://github.com/meggart/DiskArrays.jl/blob/8b538f32208c8e3dbe524cf8731e2d4e766dad3e/src/diskarray.jl#L309-L311

(also note the arg order is not great in transfer_results_write! - we write from v to temparray.

This is the reason string writes are failing here: https://github.com/Alexander-Barth/NCDatasets.jl/pull/247

I'm not sure what to do about it, it seems innefficient to first read the values from the dest array to fill in the block, and then write them again? but maybe it isn't?