You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/11/08 13:54:24 UTC

[GitHub] [pulsar] eolivelli opened a new issue #12668: Protocol Handlers and Proxy Extensions: ability to use a dedicated EventLoopGroup for IO

eolivelli opened a new issue #12668:
URL: https://github.com/apache/pulsar/issues/12668


   Currently (Pulsar 2.9) the Broker Protocol Handlers (and Proxy Extensions) share the same EventLoopGroup among Pulsar Server connection handlers and the custom Protocol Handlers.
   
   We have two issues here:
   1) if the Protocol Handler comes to execute some blocking operation using PulsarClient or PulsarAdmin, it is possible to fall into a deadlock (if the internal client connects to the local broker)
   2) the configuration for Pulsar may not be the best choice for different protocols.
   
   Problem 1) is very dangerous, fixing Problem 2) is a nice-to-have.     
   
   **Describe the solution you'd like**
   We could have a broker level configuration to say that each PH should have its own "workergroup", this way we never fall into the deadlock situation.
   
   **Describe alternatives you've considered**
   Require PHs to have only non-blocking code in respect to Pulsar operations, but this is hard to require, as any mistake in this area leads to an unpredictable deadlock, not only for the PH but also for the Pulsar service itself.
   
   **Additional context**
   I am working on KOP, and we have some code that automatically creates topics/namespaces on demand.
   For KOP we can refactor our code to be fully async but the problem is for everyone who writes a PH (or Proxy Extension)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [pulsar] Jason918 commented on issue #12668: Protocol Handlers and Proxy Extensions: ability to use a dedicated EventLoopGroup for IO

Posted by GitBox <gi...@apache.org>.
Jason918 commented on issue #12668:
URL: https://github.com/apache/pulsar/issues/12668#issuecomment-963783628


   +1
   I am working on another protocol handlers. I worked around this by setup a new netty server in `ProtocolHandler#start` to make thread isolation. It will be great we can configure it in a proper way.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [pulsar] eolivelli closed issue #12668: Protocol Handlers and Proxy Extensions: ability to use a dedicated EventLoopGroup for IO

Posted by GitBox <gi...@apache.org>.
eolivelli closed issue #12668:
URL: https://github.com/apache/pulsar/issues/12668


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org