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

PodioOutput saves metadata of droped collections into the ROOT file #95

Closed
kjvbrt opened this issue Feb 23, 2023 · 7 comments
Closed

PodioOutput saves metadata of droped collections into the ROOT file #95

kjvbrt opened this issue Feb 23, 2023 · 7 comments

Comments

@kjvbrt
Copy link
Contributor

kjvbrt commented Feb 23, 2023

When collection is dropped in PodioOutput its metadata are saved regardless.

@tmadlener
Copy link
Contributor

Could you also post the backtrace of the podio-dump crash? Have you also tried what happens if you don't drop any collections at all in the podio output?

@tmadlener
Copy link
Contributor

I can reproduce this. I am not yet entirely sure if this is an issue in the ROOTLegacyReader that is invoked for reading the produced files or if this is truly an issue of the PodioOutput algorithm.

@kjvbrt
Copy link
Contributor Author

kjvbrt commented Feb 27, 2023

Could you also post the backtrace of the podio-dump crash? Have you also tried what happens if you don't drop any collections at all in the podio output?

crash.txt

If none of the collections is dropped, then there is no crash.

@tmadlener
Copy link
Contributor

Can you check this with reading the files using the ROOTReader and the EventStore from podio? (I.e. the legacy way to do this). If that works then we would now it is most likely a problem in podio and not in the framework.

@kjvbrt
Copy link
Contributor Author

kjvbrt commented Mar 21, 2023

Reading the files using ROOTReader produces following errors, but does not crash.

PODIO: Reconstructing CollectionTypeInfo branch from other sources in file: 'output_fullCalo_SimAndDigi.root'
Problems reconstructing collection info for collection: 'ECalBarrelPositionedHits'
Problems reconstructing collection info for collection: 'ECalEndcapPositionedHits'
Problems reconstructing collection info for collection: 'HCalBarrelPositionedHits'
Problems reconstructing collection info for collection: 'ECalBarrelCellsStep1'
Problems reconstructing collection info for collection: 'ECalBarrelCellsStep2'
Problems reconstructing collection info for collection: 'HCalBarrelCells'
Problems reconstructing collection info for collection: 'emptyCaloCells'
Problems reconstructing collection info for collection: 'CaloClusterCells'

@kjvbrt
Copy link
Contributor Author

kjvbrt commented Sep 20, 2023

As the k4RecCalorimeter has been also updated to use frames HEP-FCC/k4RecCalorimeter#41, HEP-FCC/k4RecCalorimeter#43 the issue is no longer present in the nightlies and I get the expected output with podio-dump.

If however one generates root file in the stable stack and then tries to read the file with podio-dump the crash still happens at the same place:

$ podio-dump output_fullCalo_SimAndDigi.root 
input file: output_fullCalo_SimAndDigi.root (this is a legacy file!)

datamodel model definitions stored in this file: 

Frame categories in this file:
Name                 Entries   
-------------------------------
events               2         

 *** Break *** segmentation violation

.
.
.

#9  0x00007f27571e496c in podio::ROOTLegacyReader::getCollectionBuffers(std::pair<std::__cxx11::basic_strin
g<char, std::char_traits<char>, std::allocator<char> >, std::tuple<std::__cxx11::basic_string<char, std::ch
ar_traits<char>, std::allocator<char> >, bool, unsigned int, unsigned long> > const&) () from /cvmfs/sw-nig
htlies.hsf.org/key4hep/releases/2023-09-18/x86_64-centos7-gcc12.2.0-opt/podio/d402f747877239aaedefe993856e2
6749c91bea3=develop-ivgpec/lib64/libpodioRootIO.so
#10 0x00007f27571e6af8 in podio::ROOTLegacyReader::readEntry() () from /cvmfs/sw-nightlies.hsf.org/key4hep/
releases/2023-09-18/x86_64-centos7-gcc12.2.0-opt/podio/d402f747877239aaedefe993856e26749c91bea3=develop-ivg
pec/lib64/libpodioRootIO.so
#11 0x00007f27571e780f in podio::ROOTLegacyReader::readEntry(std::__cxx11::basic_string<char, std::char_tra
its<char>, std::allocator<char> > const&, unsigned int) () from /cvmfs/sw-nightlies.hsf.org/key4hep/release
s/2023-09-18/x86_64-centos7-gcc12.2.0-opt/podio/d402f747877239aaedefe993856e26749c91bea3=develop-ivgpec/lib
64/libpodioRootIO.so

@tmadlener
Copy link
Contributor

This should no longer be the case since the switch to the Frame based I/O in #100. Please re-open if there are still issues.

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

No branches or pull requests

2 participants