Skip to content
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

dxtbx with Diamond nxs files: can access twice as many data images as present on disk #285

Closed
graeme-winter opened this issue Jan 27, 2021 · 0 comments · Fixed by #286
Closed

Comments

@graeme-winter
Copy link
Collaborator

Pointed out by @rjgildea

80 image grid scan as input:

dials.import xtal_3_2.nxs

dials.python -> 

from dxtbx.model import experiment_list
e = experiment_list.ExperimentList.from_file("imported.expt")
i = e[0].imageset
len(i) -> 80
data = i.reader().read(100)

does not fail - because this data includes a virtual data set at /entry/data/data which is pointing at internal references to /entry/data/data_000001 which is itself an external reference to another file which actually contains 80 images in this case. But the data are doubled as the VDS and external links are both counted.

In normal operation this is just funny - as in odd - because we always know the number of images, but it is still something of a sleeper which could catch us out later, in particular with more interesting uses of VDS.

Proposed fix: either read the VDS or reference the external data and don't do both

@ndevenish ndevenish reopened this Jan 27, 2021
rjgildea added a commit that referenced this issue Jan 29, 2021
…286)

Fix bug in nexus.DataFactory that allowed access to twice as many images as available on disk for VDS nexus files.

If the node contains a VDS, then only use this dataset.

Fixes #285
ndevenish added a commit to dials/dxtbx that referenced this issue Feb 1, 2021
Bugfixes
--------

- Don't interpret windows paths as URIs, causing failure to import images (cctbx#284).
- Fix bug in ``nexus.DataFactory`` that allowed access to twice as many images as available on disk for VDS nexus files (cctbx#285).
- Bug fix for live per-image analysis of HDF5/SWMR files, ensuring that a process can see data for images written after a process first sees a given data file (cctbx#289).
- Bug fix for generating XDS.INP for eiger datasets - ensure that ``DETECTOR=EIGER (not PILATUS)`` (cctbx#292).
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 a pull request may close this issue.

2 participants