Thursday, November 6, 2008

Software issues

I've come across two software issues recently, both of which are fairly old but here's a bit more information:

  1. Mokka crashing when reading stdhep files - I've managed to fix this by changing a few things, but I'm now having trouble breaking it again to see exactly which one of those things fixed it. Mokka uses the stdhep reader from LCIO, but I'm not entirely sure if that uses CLHEP or not (I don't think it does). I used the HEAD version of CLHEP, Mokka and LCIO; and the most recent tag of Geant4. I also compiled LCIO with CLHEP, just in case the reader does use CLHEP. After all of that, Mokka can read stdhep.
  2. LCIO can't read files with Pandora clusters and CalorimeterHits in them - I came across this ages ago, but thought it was because the file size was too large. If you do try and read one of these files, you get the error
    "*** glibc detected *** free(): invalid pointer: 0x0000000000b629e0 ***"
    After reading in the first event I think LCIO is trying to delete the CalorimeterHits twice, once for the normal collection and once for the hits associated to the Pandora Clusters. I don't know if this is a problem with LCIO or with Pandora, I'll put a post on the forums.


Update 12:15
When going to post about the second point, I saw there was a post in the LCIO forum "stdehepjob fails on 64 bit". Basically, Roman Poeschl tracked down exactly where the error occurs and Jan Engels fixed it in the LCIO cvs on the 29th of Septemtber.

So to fix Mokka crashing when reading stdhep on a 64bit machine, you need the HEAD version of LCIO or a tag made after the 29th of September.

No comments: