-
-
Notifications
You must be signed in to change notification settings - Fork 62
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
Fix/rearchitect parallel parser so 1ms wait race condition fix is not necessary #144
Comments
In high concurrency cases, this prevents deadlock situations, so I think it's a good to keep as default, but I'm ok adding a configuration option to toggle this off, do you want to work on making this? We could call |
About rearchitect, this problem is likely to go away with new implementations, those were mechanism needed because the old way the parser worked, but the new one can consider all sibling things, so "waiting" thing may go away with that, still working this part out, but it's good to bring it to keep in mind. |
I'm okay if reader3/ a new parallel parser or similar solves these problems in the future. Just wanted to put this on the radar of you/others. I would rather not add an option to that parser can make it lock up depending on the query. This should be solved generally. The other concurrency related timeout safeguards have the same code-smell to it as this one. I hope those get addressed too. |
In the meantime, is the async or serial parser not a good option in case you have just small queries? not sure if this is just one specific case of your scenario, but its a good option to consider. |
Our application is async end to end: async webserver, async ring handler, async remotes. Writing an |
I mean using |
Thanks! |
|
In my usecase, I'm only calling a single async resolver that returns in 2ms, this 1ms sleep adds a 50% processing overhead that can be possibly avoided. In case of many-many resolvers this also adds up while also adding a lot of core.async go-block greenthread context switches.
The line in question:
pathom/src/com/wsscode/pathom/parser.cljc
Line 288 in c30ccb4
The text was updated successfully, but these errors were encountered: