You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We have a large ring/compojure application with lots of api routes. We are trying to use ring's async handlers but we eventually run out of stack if a matching path is not found in time.
That's an interesting problem. As a temporary workaround, I'd suggest increasing the stack size for the running JVM, since you're not dealing with an unbounded stack.
Solving the problem in a more general way will require a bit of thought.
We have a large ring/compojure application with lots of api routes. We are trying to use ring's async handlers but we eventually run out of stack if a matching path is not found in time.
This is fine because it matches a route soon enough
The issue is that it will create a new entry in the stack for each handler that doesn't match:
Even if you break it into chunks like so, you still get the same error.
This can be rewritten using something like a go loop, but it's possible code is blocking and may unknowingly block peoples core async threads.
Any suggestions?
The text was updated successfully, but these errors were encountered: