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

Error, couln't get the current entry info #28

Closed
tgy opened this issue Dec 22, 2017 · 5 comments
Closed

Error, couln't get the current entry info #28

tgy opened this issue Dec 22, 2017 · 5 comments

Comments

@tgy
Copy link

tgy commented Dec 22, 2017

I have a C++ program that does computations on several hundreds of data files. Once a computation on one data file is over, I use zipper to save the results inside of a zip file. I create a new file in the zip for every processed data file.

To speed up the computations, I use OpenMP for parallelism. But of course, I put the part of the code that opens and closes the zip file to add new results inside of a #pragma omp critical section. This makes sure that only one single thread at a time is modifying the zip file.

Though, every once in a while (but quite frequently), the "Error, couldn't get the current entry info" is raised. I don't know why and would like to know more about what it means and if it could be related to my multi-threaded processing.

The error "Error, couldn't get the current entry info" is thrown here.

@Lecrapouille
Copy link
Collaborator

@tgy sorry for this long delay. Are you using one instance of Zipper for each file or are you using the same instance of zipper for all of your files and lock one file at a time for zipping it? I'm not sure internal states of Zipper classes are thread-safe neither if they are not correctly restored after each usage. In addition, I'm not sure that your critical section will help you earning time because each file will be zipped sequentially. I would suggest you to create one instance of Zipper by file and call your omp loop with no critical section because states of classes are not shared for two threads.

This library definitively needs more unit tests.

@tgy
Copy link
Author

tgy commented Sep 16, 2019

Thanks for you reply. This was a long time ago and I somehow fixed it in the mean time. Probably you can close this issue.

@xiao2mo
Copy link

xiao2mo commented Apr 30, 2021

Thanks for you reply. This was a long time ago and I somehow fixed it in the mean time. Probably you can close this issue.

Hi tgy, how did u deal with this problem. I also meet with similar problems when using openmp with it.

@tgy
Copy link
Author

tgy commented May 1, 2021 via email

@Lecrapouille
Copy link
Collaborator

Could be nice, if possible, to show an extract of the code this could be added in the README

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants