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

Converters do not work with IOSvc #202

Open
tmadlener opened this issue Sep 5, 2024 · 3 comments
Open

Converters do not work with IOSvc #202

tmadlener opened this issue Sep 5, 2024 · 3 comments
Labels
bug Something isn't working enhancement New feature or request

Comments

@tmadlener
Copy link
Contributor

The converters still partially refer to the PodioDataSvc explicitly and will fail with a segmentation violation when used with the IOSvc.

@tmadlener tmadlener added bug Something isn't working enhancement New feature or request labels Sep 5, 2024
@tmadlener
Copy link
Contributor Author

This probably needs a bit more work, because currently the PodioDataSvc is pretty ingrained in some places, and for some things I am not sure if they will work with the IOSvc.

The LcioEventAlgo currently puts an LCEventWrapper into the eventSvc

auto myEvWr = new LCEventWrapper(std::move(theEvent));
const StatusCode sc = eventSvc()->registerObject("/Event/LCEvent", myEvWr);

Does this still work with the IOSvc? @jmcarcell IIUC, this should still work, but the LCEvent will not be available for our functional algorithms, right?

For the converters it should be possible to put in place checks that check the IOSvc, resp. MetadataSvc and the PodioDataSvc.

@tmadlener
Copy link
Contributor Author

tmadlener commented Sep 24, 2024

As discussed during the EDM4hep meeting, we will not put too much effort into supporting IOSvc with the k4MarlinWrapper, because that is intended mainly for multithreaded usage, and only very few Marlin processors are actually thread safe. We will keep this issue open, so that it is visible for people who try to use the IOSvc with the wrapper.

If necessary we will come back to this in the future to add support. For now we will mainly try to avoid the segmentation fault and rather give users a proper error for that.

@BrieucF
Copy link
Contributor

BrieucF commented Dec 6, 2024

Trying to raise the priority of this issue: it is not really a matter of running in multi-threaded way, it is rather that we try to write all the new algorithms with Functionals and this issue currently prevents one to access the ILCSoft world.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants