[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-serviceability-dev
Subject: Integrated: 8269616: serviceability/dcmd/framework/VMVersionTest.java fails with Address already in
From: Alex Menkov <amenkov () openjdk ! java ! net>
Date: 2021-07-26 20:19:37
Message-ID: xjyRrHhjdIvf3wRq4HYvAScuAzz0RoZcxI7rsJChiso=.bc140e4c-8abc-4e34-842f-c6e9c45139cf () github ! com
[Download RAW message or body]
On Fri, 2 Jul 2021 21:23:39 GMT, Alex Menkov <amenkov@openjdk.org> wrote:
> SocketIOPipe/IOPipe classes can select listening port by 2 ways:
> 1. caller specifies "-transport.address=dynamic" argument creating ArgumentHandler,
> and calls Binder.prepareForPipeConnection (actually see \
> nsk.share.jpda.DebugeeBinder.prepareForPipeConnection()) before start listening. In \
> the case prepareForPipeConnection creates socket and this socket later is used by \
> IOPipe. 2. just start IOPipe listening.
> Then port is selected by calling \
> nsk.share.jpda.DebugeeArgumentHandler.getTransportPort() which use findFreePort() \
> method:
> ServerSocket ss;
> try {
> ss = new ServerSocket(0);
> return String.valueOf(ss.getLocalPort());
> }finally {
> ss.close();
> }
>
> This method is known to be error prone (sometimes causes "address in use" error).
>
> The fix adds "-transport.address=dynamic" argument so IOPipe use 1st method.
This pull request has now been integrated.
Changeset: 8785737b
Author: Alex Menkov <amenkov@openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/8785737ba5f398888816ddd0f50adeea6a75bb0f
Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
8269616: serviceability/dcmd/framework/VMVersionTest.java fails with Address already \
in use error
Reviewed-by: sspitsyn, kevinw
-------------
PR: https://git.openjdk.java.net/jdk/pull/4676
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic