I am doing a CVS update with appropriate changes but it would require
ECJ to bump to Java 1.4 minimum. I'd prefer to avoid that if possible,
but ultimately it may be necessary.
There is an alternative option. The only place where we use this
address is for the islands to tell the server what their address is.
But it be sufficient to simply use the remote address of their incoming
socket connections to the server. I'd need some debugging for that
>> Tomasz Nowak wrote:
>>> I had a problem with island parallelization on genetic programming. I
>>> could only migrate
>>> there is a problem with IslandExchange class. Servers and clients use
>>> InetAddress.getLocalhost() method that returns 127.0.0.1 on some
>>> operating systems (most Linux distributions are affected). So the
>>> islands are told to connect to 127.0.0.1 on multiple ports, because the
>>> other side told them it is listening on 127.0.0.1. "ConnectionException:
>>> Connection refused" appears on console.
>>> I fixed the problem easily: I replaced all InetAddress.getLocalhost()
>>> calls with my own function call, defined exactly the way found at
>>> This problem with getLocalHost() got "will not fix" status on Sun's
>>> bugtracker. http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4665037
>>> Best regards,
>>> Tomasz Nowak