On Fri, Aug 11, 2017 at 3:30 PM, Sanne Grinovero <sanne@infinispan.org> wrote:On 11 August 2017 at 14:14, Galder ZamarreƱo <galder@redhat.com> wrote:
> Hi,
>
> Re: https://issues.jboss.org/browse/ISPN-8186
>
> I've been looking at TRACE logs and what seems to happen is that is that sometimes, when the client needs to create a new Socket, it sends using the same localport as the Hot Rod server port. As a result, when the client sends something to the server, it also receives it, hence it ends finding a request instead of a response. Analysis of the logs linked in the JIRA can be found in [1].
>
> What I'm not sure about is how to fix this... There are ways to potentially pass a specific localport to a Socket [2] but this could be a bit messy: It'd require us to generate a random local port and see if that works, making sure that's not the server port...
>
> However, I think the real problem we're having here is the fact that both the server and client are bound to same IP address, 127.0.0.1. A simpler solution could be a way to get the server to be in a different IP address to the client, but what would that be that IP address and how to make sure it always works? Bind the server to eth0?
>
> Any other ideas?
You could create multiple aliases for the same loopback device, and
assign a different IP address to each of them.No need for aliases, we could use directly use any IP from the range 127.0.0.0/8Just a reminder, the testsuite should be able to run on Linux/Win/MacOS so I'd stayaway for OS specific extra steps