Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
3.2.2
-
None
Description
SurefireForkChannel.getForkNodeConnectionString returns invalid URI string if localhost is an IPv6 address literal:
public String getForkNodeConnectionString() { return "tcp://" + localHost + ":" + localPort + (isBlank(sessionId) ? "" : "?sessionId=" + sessionId); }
localHost is initialized from InetSocketAddress.getHostString() at SurefireForkChannel.SurefireForkChannel() which may return "... the String form of the address if it doesn't have a hostname (it was created using a literal)."
If an IPv6 address is returned, then the URI computed is something like
tcp://0:0:0:0:0:0:0:1:34398?sessionId=...
instead of required format (cf. URI.URI())
tcp://[0:0:0:0:0:0:0:1]:34398?sessionId=...
At my end the incorrect URI seems to cause hanging build, probably when it is consumed at SurefireMasterProcessChannelProcessorFactory.connect().
Attachments
Issue Links
- links to