[undertow-dev] Dispatching to non IO threads

Stuart Douglas sdouglas at redhat.com
Wed Sep 17 18:59:52 EDT 2014


I will change EagerFormParsingHandler to call parseBlocking() if the 
exchange is in blocking mode.

Stuart

Bill O'Neil wrote:
> I have come across a few Handlers that dispatch to a worker thread these
> include blocking handler, resource handler and the form parsing handler.
>
> My specific use case was with the form parsing handler.  I had a bunch
> of handlers chained together basically as follows.
>
> Blocking handler -> ExceptionHandler -> FormParsingHandler ->
> MyBlockingHandler
>
> The form parsing handler would cause the handler to be dispatched a
> second time to a new executor.  This made me lose the stack trace, and
> the Exception handler was not catching an exception being thrown inside
> of MyBlockingHandler.
>
> I resolved this by basically cloning the form parsing handler and
> calling the parseBlocking() instead of the non blocking parse().  This
> is acceptable because I already dispatched to a non IO thread.
>
> Should any handler that attempts to dispatch first check if the exchange
> is in an IO thread before dispatching or is there a specific use case
> for some handlers to always dispatch?
>
> Thanks,
> Bill
>
> _______________________________________________
> undertow-dev mailing list
> undertow-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/undertow-dev


More information about the undertow-dev mailing list