IBM Support

IV24588: COM.SUN.JDI.CONNECT.LISTENINGCONNECTOR.ACCEPT() FAILS WITH BINDE XCEPTION: ADDRESS ALREADY IN USE

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

  • Error Message: The call to
    com.sun.jdi.connect.ListeningConnector.accept() fails with
    java.net.BindException: Address already in use despite the port
    being free.
    .
    Stack Trace: java.net.BindException: Address already in use
     at java.net.PlainSocketImpl.socketBind(Native Method)
     at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:402)
     at java.net.ServerSocket.bind(ServerSocket.java:328)
     at java.net.ServerSocket.bind(ServerSocket.java:286)
     at
    com.sun.tools.jdi.SocketTransportService.startListening(SocketTr
    ansportService.java:237)
     at
    com.sun.tools.jdi.SocketTransportService.startListening(SocketTr
    ansportService.java:265)
     at
    com.sun.tools.jdi.GenericListeningConnector.startListening(Gener
    icListeningConnector.java:96)
     at
    com.sun.tools.jdi.SocketListeningConnector.startListening(Socket
    ListeningConnector.java:67)
     at
    com.sun.tools.jdi.GenericListeningConnector.accept(GenericListen
    ingConnector.java:143)
     at
    tests.com.ibm.jtc.jdi.debugger.Connectors.createListeningVM(Conn
    ectors.java:569)
     at
    tests.com.ibm.jtc.jdi.debugger.Connectors$CreateConnectionThread
    .run(Connectors.java:730)
    .
    Is reported by SVT
    

Local fix

  • No
    

Problem summary

  • The call to com.sun.jdi.connect.ListeningConnector.accept()
    fails with java.net.BindException: Address already in use
    despite the port being free.
    

Problem conclusion

  • This defect will be fixed in:
    7.0.0 SR2
    6.0.0 SR11
    .
    ListeningConnector is an Interface and is implemented by
    GenericListeningConnector, which is used in JDI package. This
    class is internally maintaining a HashMap (will have "address"
    and "timeout" arguments stored) for book keeping purposes. Code
    blocks updating this HasMap are not synchronized causing
    HashMap.get(arg) return null. When null returned, to keep
    compatibility with previous releases in cases where debugger
    hasn't called startListening, code does a one-off accept,
    resulting in a failure.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV24588

  • Reported component name

    JAVA CLASS LIBS

  • Reported component ID

    620700130

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-07-10

  • Closed date

    2012-07-10

  • Last modified date

    2012-07-10

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    JAVA CLASS LIBS

  • Fixed component ID

    620700130

Applicable component levels

  • R700 PSY

       UP

  • R600 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Java Class Libraries

Software version: 700

Reference #: IV24588

Modified date: 10 July 2012