IBM Support

IC66174: WMQ V7.0 CLIENT CONVERSATION SHARING MEMORY ACCESS VIOLATION UNDER RESOURCE CONSTRAINT CONDITIONS

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A client application using conversation sharing failed during
    the MQ connect call due to an error when starting a thread.
    Afterwards, the client application ended abruptly with a memory
    access violation.
    
    A xecP_E_NO_RESOURCE FFST was produced by xcsCreateThread,
    accompanied by the following additional FFST:
    
    Operating System  :- Windows Server 2003, Build 3790: SP2
    LVLS              :- 7.0.1.0
    Product Long Name :- WebSphere MQ for Windows
    Probe Id          :- XC130031
    Application Name  :- MQM
    Component         :- xehExceptionHandler
    Addressing mode   :- 32-bit
    Process           :- 00009264
    Major Errorcode   :- xecF_E_UNEXPECTED_SYSTEM_RC
    Minor Errorcode   :- OK
    Probe Type        :- MSGAMQ6119
    Probe Severity    :- 2
    Probe Description :- AMQ6109: An internal WebSphere MQ error has
    occurred.
    FDCSequenceNumber :- 1
    Comment1          :- Access Violation at address 00000590 when
    reading
    .
    MQM Function Stack
    ImqQueueManager::connect
    MQCONNX
    trmzstMQCONNX
    reqDoConnect
    reqConnectChl
    reqFreeSess
    rriFreeSess
    ccxFreeSocket
    xcsFFST
    
    FDC Trace History Snippet:
    ---} xcsFFST rc=OK
    --} xcsCreateThread rc=xecP_E_NO_RESOURCE
    --{ cccFreeMem
    ---{ xcsFreeMemFn
    ---} xcsFreeMemFn rc=OK
    --} cccFreeMem rc=OK
    --{ rrxError
    --} rrxError rc=rrcE_CREATE_THREAD_ERROR
    -} ccxSetAsyncMode rc=rrcE_CREATE_THREAD_ERROR
    -{ ccxFreeMem
    --{ ccxPoolFree
    ---{ xcsRequestThreadMutexSem
    ---} xcsRequestThreadMutexSem rc=OK
    ---{ xcsReleaseThreadMutexSem
    ---} xcsReleaseThreadMutexSem rc=OK
    --} ccxPoolFree rc=OK
    -} ccxFreeMem rc=OK
    } rriInitSess rc=rrcE_CREATE_THREAD_ERROR
    { rrxError
    } rrxError rc=rrcE_CREATE_THREAD_ERROR
    { rrxReportError
    -{ xcsDisplayMessageForSubpool
    --{ xcsQueryDateTime2
    --} xcsQueryDateTime2 rc=OK
    --{ xcsGetEnvironmentString
    --} xcsGetEnvironmentString rc=xecE_E_ENV_VAR_NOT_FOUND
    --{ xcsGetEnvironmentInteger
    ---{ xcsGetEnvironmentString
    ---} xcsGetEnvironmentString rc=xecE_E_ENV_VAR_NOT_FOUND
    --} xcsGetEnvironmentInteger rc=xecE_E_ENV_VAR_NOT_FOUND
    --{ xcsQueryValueForSubpool
    --} xcsQueryValueForSubpool rc=OK
    --{ xcsDisplayMessage
    ---{ xcsGetMemFn
    ---} xcsGetMemFn rc=OK
    ---{ xcsGetMessage
    ----{ xcsGetMemFn
    ----} xcsGetMemFn rc=OK
    ----{ xeeConvertInserts
    -----{ xcsGetMemFn
    -----} xcsGetMemFn rc=OK
    ----} xeeConvertInserts rc=OK
    ----{ xgmNTGetMessage
    -----{ xgmCheckMsgSource
    -----} xgmCheckMsgSource rc=OK
    -----{ xgmDetermineMsgCatLanguage
    ------{ xcsGetEnvironmentString
    ------} xcsGetEnvironmentString rc=xecE_E_ENV_VAR_NOT_FOUND
    ------{ xgmValidLanguage
    ------} xgmValidLanguage rc=OK
    -----} xgmDetermineMsgCatLanguage rc=OK
    ----} xgmNTGetMessage rc=OK
    ----{ xcsFreeMemFn
    ----} xcsFreeMemFn rc=OK
    ----{ xcsFreeMemFn
    ----} xcsFreeMemFn rc=OK
    ---} xcsGetMessage rc=OK
    ---{ xcsIsEnvironment
    ---} xcsIsEnvironment rc=OK
    ---{ xeeOpenFiles
    ---} xeeOpenFiles rc=OK
    ---{ xeeCloseFiles
    ---} xeeCloseFiles rc=OK
    ---{ xgmWriteNTEventLog
    ----{ xgmCheckMsgRequired
    ----} xgmCheckMsgRequired rc=OK
    ----{ xgmCheckMsgSource
    ----} xgmCheckMsgSource rc=OK
    ----{ xeeConvertInserts
    -----{ xcsGetMemFn
    -----} xcsGetMemFn rc=OK
    ----} xeeConvertInserts rc=OK
    ----{ xcsFreeMemFn
    ----} xcsFreeMemFn rc=OK
    ---} xgmWriteNTEventLog rc=OK
    ---{ xcsFreeMemFn
    ---} xcsFreeMemFn rc=OK
    --} xcsDisplayMessage rc=OK
    -} xcsDisplayMessageForSubpool rc=OK
    } rrxReportError rc=OK
    { reqFreeSess
    -{ rriFreeSess
    --{ ccxAllocMem
    ---{ cciAllocMem
    ----{ cccGetMem
    -----{ xcsGetMemFn
    -----} xcsGetMemFn rc=OK
    ----} cccGetMem rc=OK
    ---} cciAllocMem rc=OK
    --} ccxAllocMem rc=OK
    --{ ccxSend
    ---{ cciTcpSend
    ----{ send
    ----} send rc=OK
    Data: 0x0000001c
    ---} cciTcpSend rc=OK
    --} ccxSend rc=OK
    --{ ccxFreeMem
    --} ccxFreeMem rc=OK
    --{ ccxFreeSocket
    ---{ xcsRequestThreadMutexSem
    ---} xcsRequestThreadMutexSem rc=OK
    ---{ xcsCheckPointer
    ---} xcsCheckPointer rc=OK
    ---{ xcsReleaseThreadMutexSem
    ---} xcsReleaseThreadMutexSem rc=OK
    ---{ cciTcpFreeConv
    ----{ ioctl
    ----} ioctl rc=OK
    ----{ soclose
    ----} soclose rc=OK
    ---} cciTcpFreeConv rc=OK
    ---{ xcsFFST
    .
    --->------------------------------<DUMP
    END>------------------------------<---
    As a result of a Severe Abend Error, a MiniDump has been written
    to: AMQ9264.6468.0.dmp
    An Unhandled Exception detected in process 9264, on thread
    0x1944.
    Type: EXCEPTION_ACCESS_VIOLATION (C0000005).
    Address: 001B:4E373B76.
    The thread could not read from memory address 0x00000590
    
    This will be accompanied by error message AMQ9233 (error
    creating receive thread) in the machine-wide WebSphere MQ error
    logs.
    
    The same failure can also occur on UNIX systems, where it will
    cause a SIGSEGV FFST with probe XC130003.
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Users of WebSphere MQ 7 clients who use conversation sharing.
    The failure will occur when a resource constraint prevents the
    creation of new threads.
    
    Platforms affected:
    All Distributed (iSeries, all Unix and Windows)
    ****************************************************************
    PROBLEM SUMMARY:
    When starting a new client connection when conversation sharing
    is enabled, WebSphere MQ starts a new thread to handle socket
    receives for all conversations sharing the socket.
    
    If the receive thread could not be started, the WebSphere MQ
    code did not correctly free the connection state data. Whilst
    attempting to close the failed connection, MQ attempted to wait
    for the receive thread which had never started. This
    dereferenced an invalid pointer, which caused a memory access
    violation.
    

Problem conclusion

  • The WebSphere MQ code has been modified to correctly handle
    cleanup of failed connections after a failure to start the
    receive thread.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
                       v7.0
    Platform           Fix Pack 7.0.1.3
    --------           --------------------
    Windows            tbc_p700_0_1_3
    AIX                tbc_p700_0_1_3
    HP-UX (PA-RISC)    tbc_p700_0_1_3
    HP-UX (Itanium)    tbc_p700_0_1_3
    Solaris (SPARC)    tbc_p700_0_1_3
    Solaris (x86-64)   tbc_p700_0_1_3
    iSeries            tbc_p700_0_1_3
    Linux (x86)        tbc_p700_0_1_3
    Linux (x86-64)     tbc_p700_0_1_3
    Linux (zSeries)    tbc_p700_0_1_3
    Linux (Power)      tbc_p700_0_1_3
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available, information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IC66174

  • Reported component name

    WMQ WINDOWS V7

  • Reported component ID

    5724H7220

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-02-09

  • Closed date

    2010-02-25

  • Last modified date

    2010-03-04

  • 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

    WMQ WINDOWS V7

  • Fixed component ID

    5724H7220

Applicable component levels

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCPQ63","label":"APAR \/ Maintenance"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
04 March 2010