Search code examples
ignite

Why Ignite TcpClientChannel port can not larger than 49151?


Background: I want to use testcontainers to do unit tests with apache ignite

I am currently working with the Ignite client and have come across a potential issue with its port restrictions, specifically in the context of Docker's port mapping feature.

In Docker, port mapping involves randomly assigning ports, which can quite often exceed the range that seems to be permissible by the TcpClientChannel in the Ignite client.

Can anyone provide some insight into why these limitations exist within the TcpClientChannel? Additionally, how should we manage scenarios involving Docker, where port mapping is a common necessity, in light of these restrictions?

https://github.com/apache/ignite/blob/8fb4c1ae873b70193726ba310a7f8837e61e68b0/modules/core/src/main/java/org/apache/ignite/internal/client/thin/TcpClientChannel.java#L691

Thank you for your time and assistance.


Solution

  • 1024 - 49151 is so-called registered port range.

    However, the limitation in Ignite client does not make sense. I've filed a ticket and started a discussion: https://issues.apache.org/jira/browse/IGNITE-20026