IBM Support

PM01840: JAVA SOCKET CODE MAKES BAD CALL TO SETSOCKOPT FOR EVERY BIND OPERATION.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • In certain situations on z/OS, when IPv6 is enabled, socket
    operations in Java will issue extraneous and invalid calls to
    the getsockopt and setsockopt system services.
    
    These calls will fail, but will not cause any problems with
    sockets or data communication.
    
    A trace of USS calls (either via CTRACE or GTF trace with SLIPs)
    may show these repeated failures under the covers.
    

Local fix

  • To eliminate the calls to get/setsockopt, you will need to
    deactivate IPv6 support in the Java Virtual Machine.
    
    This can be accomplished with the Java System Property:
    java.net.preferIPv4Stack = true
    
    At the commandline this can be set with a -D commandline option.
    Alternately the IBM_JAVA_OPTIONS environment variable can be
    used to set this at a higher scope for all running JVM processes
    with access to the variable.
    
    IBM_JAVA_OPTIONS = -Djava.net.preferIPv4Stack=true
    
    
    NOTE:
    The extraneous and erroneous system calls do not cause any
    failures of application or JVM functionality. The only
    potentially visible symptom is a performance impact while
    performing socket operations.
    The Local Fix / Circumvention above should be used only in cases
    where the syscall error performance issue is causing an impact
    on the system. And only when IPv6 communication is not required.
    

Problem summary

  • Java socket code is making extra calls to setsockopt and
    getsockopt for every bind operation resulting in failures
    

Problem conclusion

  • This defect will be fixed in:
    5.0.0 SR11 FP2
    .
    Invalid calls are removed from NET_Bind function.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM01840

  • Reported component name

    JAVA 5 Z/OS 31

  • Reported component ID

    620500105

  • Reported release

    500

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-11-20

  • Closed date

    2010-01-29

  • Last modified date

    2010-04-29

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

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

    PM13601

Fix information

  • Fixed component name

    JAVA 5 Z/OS 31

  • Fixed component ID

    620500105

Applicable component levels

  • R500 PSY

       UP

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"5.0","Edition":"","Line of Business":{"code":"LOB16","label":"Mainframe HW"}}]

Document Information

Modified date:
09 August 2022