Closed laroque closed 9 years ago
The file opening takes place in Monarch, at line 56 of M3Monarch.cc. It's done in a try-catch block that should, in principle, work. The type of exception caught is H5:Exception, which is the immediate parent of H5:FileIException. The latter is what was thrown, according to the error message above. That should be caught by the base-class catch block. I'll do some testing to se what fixes the problem.
Ok, so apparently I wasn't paying enough attention when I looked at this in May. Line 56 of M3Monarch.cc is for opening files for reading. It was at line 83 where the file was opened for writing, and that was not in a try-catch block. It is now, and the exception is properly caught.
Rather than aborting and returning to a valid state of waiting for requests, the mantis_server crashes when unable to create the requested output file. I would have expected the former behavior. It looks like we should just be able to catch that exception but I'm not sure where or how we inform the user that there was a problem.
Reproduction
Start mantis_server and then add and activate a test digitizer. Request a run as follows:
➭ dripline_agent run mantis file=~laroque/foofile.egg
Notes
I tested with a well formatted path and it produced an output file as expected
➭ dripline_agent run mantis file=/Users/laroque/foofile.egg
Observed Output