Message Image  

Have you experienced abends in your WebSphere Message Broker or IBM Integration Bus product after upgrading zOS to V2R1

 View Only

Have you experienced abends in your WebSphere Message Broker or IBM Integration Bus product after upgrading zOS to V2R1 

Tue June 02, 2020 08:05 AM

In z/OS V2R1, Language Environment (LE) introduced optimization changes to the dynamic_cast call that allowed the possibility of an incorrect return value. After upgrading z/OS to V2R1, you may experience abends in WebSphere Message Broker or IBM Integration Bus on a fairly frequent basis. These abends might occur at various points in a message flow, as the message is propagated from one node to the next.

It is recommended that all users of WebSphere Message Broker or IBM Integration Bus on z/OS that have upgraded to z/OS V2R1 request and apply PTF UI17014.

WebSphere Message Broker or IBM Integration Bus make use of the C++ dynamic_cast call to obtain a pointer to a specific object subtype. This object is obtained from a pointer to a generic supertype that contains specific context information relevant to the message flow node that is currently being executed.

In z/OS V2R1, Language Environment (LE) introduced optimization changes to the dynamic_cast call that resulted in a small timing window that allowed the possibility of an incorrect return value.

As a result, you might get an abend when WebSphere Message Broker or IBM Integration Bus attempts to access an object of the casted type and this is not a valid object.  WebSphere Message Broker or IBM Integration Bus tries to access an invalid storage address and this results in the abend(s).

This issue is resolved by z/OS APAR PI15855 and is available in PTF UI17014. Further details of APAR PI15855 can be found at:
PI15855: DYNAMIC_CAST NOT RETURNING THE CORRECT POINTER

Though the abend stack might look different each time, the root cause is usually the same. Below is a list of some of the commonly occurring traceback stacks, containing the last calls on each of the stacks, that are the result of APAR PI15855:

1.
ImbConfigurableServicesData::refreshShadow(ImbThreadContext*
ImbConfigurableServices::refresh(ImbThreadContext*)     

2.
ImbSemaphoreBase::Semaphore::Semaphore(ImbSemaphoreBase&,Imb
CpContext::loadDictionary(const ImbWstring&)            
CpContext::initialize(MtiImbSyntaxElement*)             

3.
ImbNamedLogSource::logName() const                       
ImbOwnedLogSource::logName() const                       
ImbRRSContextPreserver::¯ImbRRSContextPreserver()       

4.
ImbJniNode::EvaluationContext::deleteMessage(ImbMessage*,boo
c::Java_com_ibm_broker_plugin_MbMessage                 

5.
ImbJniNode::getEvaluationContext(ImbThreadContext*)
c::Java_com_ibm_broker_plugin_MbMessage

6.
ImbConverter::ImbConverterCache::find(const std::pair<unsign
ImbConverter::setCodepage(unsigned int,int,ImbThreadContext*

7.
ImbActivityLogThreadContext::getLogThreadBuffer(const ImbWst
ImbActivityLog::addEntry(const ImbActivityLogEntry&)   


#MQSI
#WMB
#Abend
#L3Service
#z/OS

Entry Details

Statistics
0 Favorited
10 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Related Entries and Links

No Related Resource entered.