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

Python multiprocessing ignores ^C altogether #27

Open
riastradh-probcomp opened this issue Jun 3, 2015 · 3 comments
Open

Python multiprocessing ignores ^C altogether #27

riastradh-probcomp opened this issue Jun 3, 2015 · 3 comments

Comments

@riastradh-probcomp
Copy link
Contributor

This means the bayeslite shell is not responsive to interruption during analysis and other Crosscat computations when you don't pass `-j 1'.

This is different from #25 because it is specifically about the multiprocessing module ignoring ^C so that nothing happens, not about data structures potentially getting corrupted on ^C.

@tibbetts
Copy link
Contributor

Shell doesn't know enough to stop waiting for work queue when ^C happens. The right thing is to replace python multiprocessing with something more reasonable.

User experience impact, need to decide how much of a challenge for first public release.

@riastradh-probcomp
Copy link
Contributor Author

Unlike #25, this issue is reasonable to fix, with a little work to rewrite multiprocessing (not trivial, but also not likely to be more than a couple days).

@riastradh-probcomp
Copy link
Contributor Author

To elaborate, after @fsaad's disbelief across the room: this entails rewriting the work queue and process pool code, not actually rewriting primitives for forking or process-shared memory.

@riastradh-probcomp riastradh-probcomp removed their assignment Jul 12, 2016
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

4 participants