External writer problems
Two very basic problems: 1.) If no scalar counter is defined, the writing fails with and exception. No data is written
INFO:nexus_writer_service.session_writer: [Session 'jens'] END_SCAN received for scan 161_limatake
INFO:nexus_writer_service.session_writer: [Session 'jens'] Running writers: ['NexusScanWriter(jens:161_limatake)']
INFO:nexus_writer_service.session_writer: [Session 'jens'] [DataNode '161_limatake'] Scan is finished, stop processing events
INFO:nexus_writer_service.session_writer: [Session 'jens'] [DataNode '161_limatake'] Finalize writing to '/data/id19/inhouse/clemence/jens/tomo_external.h5'
INFO:nexus_writer_service.session_writer: [Session 'jens'] END_SCAN received for scan 161_limatake
INFO:nexus_writer_service.session_writer: [Session 'jens'] Running writers: ['NexusScanWriter(jens:161_limatake)']
INFO:nexus_writer_service.session_writer: [Session 'jens'] [DataNode '161_limatake'] Scan is finished, stop processing events
INFO:nexus_writer_service.session_writer: [Session 'jens'] [DataNode '161_limatake'] Finalize writing to '/data/id19/inhouse/clemence/jens/tomo_external.h5'
ERROR:nexus_writer_service.session_writer: [Session 'jens'] [DataNode '161_limatake'] Not properly finalized due to exception:
Traceback (most recent call last):
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 774, in _run
nbytes = self._finalize()
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 800, in _finalize
dproxy = self._fetch_data(node, last=True)
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 1080, in _fetch_data
subscan = self.subscan(node)
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 234, in subscan
if subscan not in self.devices:
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 203, in devices
multivalue_positioners=self.saveoptions["multivalue_positioners"],
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/devices.py", line 243, in device_info
for fullname in dic[key]:
KeyError: 'scalars'ERROR:nexus_writer_service.session_writer: [Session 'jens'] [DataNode '161_limatake'] Not properly finalized due to exception:
Traceback (most recent call last):
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 774, in _run
nbytes = self._finalize()
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 800, in _finalize
dproxy = self._fetch_data(node, last=True)
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 1080, in _fetch_data
subscan = self.subscan(node)
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 234, in subscan
if subscan not in self.devices:
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/writer_base.py", line 203, in devices
multivalue_positioners=self.saveoptions["multivalue_positioners"],
File "/users/blissadm/local/bliss.git/nexus_writer_service/scan_writers/devices.py", line 243, in device_info
for fullname in dic[key]:
KeyError: 'scalars'
2.) Images are written into the scan_external.h5 file. This is not possible for thousands of images or if the images writing frequency is high. Only links should be in the file.