New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow creation of expandable external datasets #2398
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #2398 +/- ##
=======================================
Coverage 89.53% 89.53%
=======================================
Files 17 17
Lines 2380 2380
=======================================
Hits 2131 2131
Misses 249 249 ☔ View full report in Codecov by Sentry. |
Should there also be work upstream in libhdf5 to reject creating these broken data sets? With this change can the user still explicitly ask for a broken dataset? |
I think HDF5 already rejects the combination of chunked & external storage (from #2394: |
But then how did the user end up with a hdf5 header which is invalid? Or am I confused by what is going on and we using this code on access? |
Indeed, in other cases I tried libhdf5 raised errors. |
That HDF5 file is not invalid. I got educated afterward about expanding external dataset along first dimension without the need for chunking. That's why I made this PR, to allow doing so from h5py. |
Will this fix our reading as well then? |
Co-authored-by: Thomas Kluyver <takowl@gmail.com>
External HDF5 datasets can be expanded along their first dimension but cannot have chunked layout. This PR avoids setting chunked layout when creating a dataset if both
maxshape
andexternal
keyword arguments are present.Fixes #2396.