Please sign in to comment.
Adding Executor to enforce serial processing and limiting the number …
…of channel handling threads to 1 to avoid concurrency issues. This should fix issue 1156 for the HTTP V2 engine. Logging reveals that multiple threads can be involved in handling the same request. The PMS code has not been designed to handle one request with multiple threads in parallel. As a result concurrency issues arise at random locations, several ArrayOutOfBoundsExceptions and NullPointerExceptions have been reported at places where they should not occur in a single thread environment. To avoid concurrency issues this commit limits the number of pool threads to 1. Performance does not seem to take a hit from this change. Also, it is still possible to stream to multiple clients at the same time. See: http://docs.jboss.org/netty/3.2/api/org/jboss/netty/handler/execution/OrderedMemoryAwareThreadPoolExecutor.html
- Loading branch information...
Showing with 25 additions and 3 deletions.