-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Description
После запуска dbgs делаю
Coverage41C start -i DefAlias -u http://127.0.0.1:1550 -o /test/genericCoverage.xml
потом в соседнем терминале
Coverage41C stop -i DefAlias -u http://127.0.0.1:1550
потом в первом терминале, как только служба завершается, повторно вызываю start - получаю вот что
# Coverage41C start -i DefAlias -u http://127.0.0.1:1550/ -o /test/genericCoverage.xml
java.io.IOException: org.scalasbt.ipcsocket.NativeErrorException: [98] Address already in use
at org.scalasbt.ipcsocket.UnixDomainServerSocket.bind(UnixDomainServerSocket.java:140)
at org.scalasbt.ipcsocket.UnixDomainServerSocket.<init>(UnixDomainServerSocket.java:114)
at org.scalasbt.ipcsocket.UnixDomainServerSocket.<init>(UnixDomainServerSocket.java:88)
at com.clouds42.Commands.CoverServer.getServerSocket(CoverServer.java:70)
at com.clouds42.Commands.CoverageCommand.call(CoverageCommand.java:128)
at com.clouds42.Commands.CoverageCommand.call(CoverageCommand.java:62)
at picocli.CommandLine.executeUserObject(CommandLine.java:1953)
at picocli.CommandLine.access$1300(CommandLine.java:145)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
at picocli.CommandLine.execute(CommandLine.java:2078)
at com.clouds42.Coverage41C.main(Coverage41C.java:47)
Caused by: org.scalasbt.ipcsocket.NativeErrorException: [98] Address already in use
at org.scalasbt.ipcsocket.JNAUnixDomainSocketLibraryProvider.bind(UnixDomainSocketLibrary.java:178)
at org.scalasbt.ipcsocket.UnixDomainServerSocket.bind(UnixDomainServerSocket.java:136)
... 14 more
Таким образом повторный запуск через start заканчивается ошибкой.
При остановке приложения видим что не закрывается сокет, хотя в винде закрывается и там такой проблемы нет.
# ss -a
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
nl UNCONN 0 0 rtnl:915 *
nl UNCONN 0 0 rtnl:kernel *
nl UNCONN 4352 0 tcpdiag:ss/1334 *
nl UNCONN 768 0 tcpdiag:kernel *
nl UNCONN 0 0 xfrm:kernel *
nl UNCONN 0 0 audit:kernel *
nl UNCONN 0 0 fiblookup:kernel *
nl UNCONN 0 0 nft:kernel *
nl UNCONN 0 0 uevent:kernel *
nl UNCONN 0 0 genl:kernel *
u_str LISTEN 0 4096 /tmp/.X11-unix/X99 3513007 * 0
u_str LISTEN 0 4096 @/tmp/.X11-unix/X99 3513006 * 0
tcp LISTEN 0 128 127.0.0.1:1554 0.0.0.0:*
tcp TIME-WAIT 0 0 127.0.0.1:54432 127.0.0.1:1554
tcp TIME-WAIT 0 0 127.0.0.1:36460 127.0.0.1:1554
В коде подозрительного ничего не вижу
Coverage41C/src/main/java/com/clouds42/Commands/CoverServer.java
Lines 66 to 72 in 4de4f8c
| String pipeName = Utils.getPipeName(getConnectionOptions()); | |
| if(serverSocket == null) { | |
| if (isWindows) { | |
| serverSocket = new Win32NamedPipeServerSocket(pipeName, false, Win32SecurityLevel.OWNER_DACL); | |
| } else { | |
| serverSocket = new UnixDomainServerSocket(pipeName); | |
| } |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels