-
Notifications
You must be signed in to change notification settings - Fork 25
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
SparseNDArray
write bounding box not multi-writer safe
#1969
Comments
Discussion here #1971 (comment) whether we try to bug-fix the bounding box, or simply jettison it. |
SparseNDArray
write bounding box not multi-writer safe
Update: I have confirmed that this bug affects the Census "builder", which uses multiple writers to concurrently create large sparse arrays. The issue had not been previously noticed, likely because the bounding box is only used in a handful of places on the read path. If there is a work-around, short of disabling all concurrent writes, it would be useful to know about it. The only solution I have come up with is to have the writer (i.e., the TileDB-SOMA user, aka Census builder) go back and monkey-patch the metadata after all writes are complete. In the Census build I checked, we had (on dim 0):
Side note: AFAIK, the only user of this incorrect metadata is in the soma "io" packages, which are primarily used to do full dataset import/export. They are unlikely to be used by a Census user, but in principle they are supported. We just need to make sure we don't use this metadata anywhere else until this bug is resolved. CC: @aaronwolen |
Pending #2407 |
Current progress is on #2407 |
This is now a duplicate of #2407 |
The sparse array bounding box can easily become incorrect due to point-in-time consistency race between the array and metadata updates.
Test case:
Expected output would have all bonding boxes returning the same region. however, as of 1.6, it returns:
package version info:
The text was updated successfully, but these errors were encountered: