-
Notifications
You must be signed in to change notification settings - Fork 18
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
Crashed when multithreading? #166
Comments
Do you have any further details? What was the command that you ran? How many sequences in the input file? Where did you run this (I.e. OS / available resources etc.) |
I think its when 1 uesr uses the web app, and another one does too... a bunch of requests failed (was with MSc students with short example file) |
18.08 with many cores |
So, are you referring to use via the web app? If so, this is an expected bug - as we do not have a queueing system in place. Therefore, the current implementation will attempt to run everything as soon as the request is received. |
Ah that's helpful to know!
What would be needed for that?
Cheers
Yannick
|
We would need a queueing system. e.g. this could be as simple as having an array stored in memory (or storing the input query in a file and keeping the filenames in the array)... But it might be easier to rewrite the app side of this with Rails and use ActiveJob (e.g. Delayed)... |
What about using pool.rb like in seqserv?
|
Yep, good idea. We are using the same pool.rb code for the GeneValidator threads queue. We should be able to use the same queueing system for the app as well. And set it up so that the app only processes a single query at a time. (and then use the threads arguments as normal inside GeneValidator for blast etc.). If we go down this route, we would also need to move to a polling system - which will mean we need changes to the routes + frontend. |
No description provided.
The text was updated successfully, but these errors were encountered: