Print

Print


Why do you want to start reading from an EVIO file that hasn’t been fully written to disk yet?  It doesn’t seem like a good idea to me if the reader isn’t equipped to handle this and needs to read through the whole file when it is opened.

You CAN actually do this with LCIO files though as the reader only looks at the blocks serially, by default, and it doesn’t scan ahead.

So the best way to look at the actual data as it is written, for now, might be to setup a monitoring station with an LCIODriver in the steering file.  You can look at the converted LCIO file as it is written to disk.  (It even works to load it in JAS and step through the events.)

Or am I missing exactly what you’re trying to do here?

On Dec 14, 2014, at 6:31 AM, Maurik Holtrop <[log in to unmask]<mailto:[log in to unmask]>> wrote:

Hello all,

That is unfortunate. We should let Carl Timmer know that it will be important to implement a "open a file in progress" method for the Jevio library. This will be important not for files being written but files that are for some reason corrupted, perhaps due to an event builder crash or full system crash.

A "hack" would be to open the EVIO file in progress with the C++ version of the EVIO to ET streamer and then open the ET stream with Java. Very ugly, but I know that one will work since the C++ library doesn't have the map function.  I would only recommend using this in extreme situations. Once we are at full data rate we will finish a 2 GB file in a few minutes so there is no need to go through such contortions.

Best,
Maurik

On Dec 14, 2014, at 6:14 AM, Andrea Celentano <[log in to unmask]<mailto:[log in to unmask]>> wrote:

Hi,
I discovered this issue when debugging the way EVIO was written by the DAQ.. If I remember correctly, there're no option to use when you open the evio file, i.e. the "map" is there by default. I tried to change the jevio library, so that the error reported when opening a non-closed file is not thrown, but then I got bunch of other problems..

On 12/14/2014 02:55 AM, Maurik Holtrop wrote:
Is there some way that this "map" can be turned off? It seems that this is intended for non-sequential reading of the event data, which I don't think we are interested in here.

On Dec 13, 2014, at 2:28 PM, Andrea Celentano <[log in to unmask]<mailto:[log in to unmask]>> wrote:

evio2xml should work.
The problem (at least, what I understood), is that the java evio library, when opening a file, tries to "map" the position of each event in the file. However, when the file is not completely written, this mapping presents some errors..

Andrea
On 12/13/2014 08:26 PM, McCormick, Jeremy I. wrote:
Are you able to read these via evio2xml utility from the C code?  Or load them with the C++ interface?

It seems to me there is something basically wrong with this data which is not an issue with HPS Java...

On Dec 13, 2014, at 11:21 AM, Andrea Celentano <[log in to unmask]<mailto:[log in to unmask]>> wrote:

Hi,
when trying to run EvioToLcio on an EVIO file currently being written, I always get this error.

Andrea
On 12/13/2014 08:19 PM, Graham, Mathew Thomas wrote:
No, I don’t think I ever get to there when I run EvioToLcio…when it tries to open the evio I get:

...
No input files provided by XML or command line.  Dry run will be enabled.
Sat Dec 13 14:16:29 EST 2014 :: EvioToLcio :: CONFIG :: LCSim job manager was successfully configured.
Sat Dec 13 14:16:29 EST 2014 :: EvioToLcio :: CONFIG :: User set detector to HPS-ECalCommissioning with command option.
Sat Dec 13 14:16:29 EST 2014 :: EvioToLcio :: INFO :: Opening EVIO file Data/hps_003206.evio.0 for reading.
Exception in thread "main" java.lang.RuntimeException: org.jlab.coda.jevio.EvioException: File/buffer bad format
        at org.hps.evio.EvioToLcio.run(EvioToLcio.java:261)
        at org.hps.evio.EvioToLcio.main(EvioToLcio.java:92)
Caused by: org.jlab.coda.jevio.EvioException: File/buffer bad format
        at org.jlab.coda.jevio.MappedMemoryHandler.generateEventPositions(MappedMemoryHandler.java:201)
        at org.jlab.coda.jevio.MappedMemoryHandler.<init>(MappedMemoryHandler.java:119)
        at org.jlab.coda.jevio.EvioReader.<init>(EvioReader.java:447)
        at org.jlab.coda.jevio.EvioReader.<init>(EvioReader.java:342)
        at org.jlab.coda.jevio.EvioReader.<init>(EvioReader.java:324)
        at org.hps.evio.EvioToLcio.run(EvioToLcio.java:259)
        ... 1 more


I’ve attached the simple script I use to run it …maybe I screwed something up there…


________________________________

Use REPLY-ALL to reply to list

To unsubscribe from the HPS-SOFTWARE list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1



________________________________

Use REPLY-ALL to reply to list

To unsubscribe from the HPS-SOFTWARE list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1



________________________________

Use REPLY-ALL to reply to list

To unsubscribe from the HPS-SOFTWARE list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1



########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the HPS-SOFTWARE list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1