ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WTX map node not working correctly in multi threaded scenari

Post new topic  Reply to topic
 WTX map node not working correctly in multi threaded scenari « View previous topic :: View next topic » 
Author Message
sanjoo
PostPosted: Mon Jan 28, 2013 1:01 am    Post subject: WTX map node not working correctly in multi threaded scenari Reply with quote

Acolyte

Joined: 26 Oct 2005
Posts: 65

OS : AIX 5.3
WMB 6.1.0.4
WTX 8.2.0.4

Problem description: In multi threaded message flow, we use WTX node with following settings -
MapAudit > AuditLocation > File > FileName > Unique
MapTrace > TraceLocation > File > FileName > Unique
WorkSpace > File > WorkFilePrefix > Unique
Cache map property checked

Message flow has 10 instances on it and meant to process bulk files.
When 3 files are played concurrenetly, then 2 threads runs successfully. However for one thread, when control is propagated to WTX node nothing happens. It neither goes to out terminal nor to failure. Control comes back to next statement after propagate and thread is closed as if processing was successful and file is lost.

Obesrvation:
For two concurrent files, no issue observed.
Never ever since last broker deployment was done, 3 concurrent files were run. ie on the very first run of 3 concurrent files, above issue is noticed.

Our theory:
When we deploy message flow with 10 additioanl instances and WTX cache map checked, 10 copies of map are created in memory one per additional thread and these copies are always alive irrespective of thread life time.
We saw several 2 concurrent file runs before this issue popped up but never 3 concurrent file scenario. Does this mean that first 2 cached map instances were saved from garbage collectiion just because they were used more frequently and 3rd onward map instances were removed from cache by garbage collector.
If due to above reason, map is not loaded when thread tries to use it, exception will not be generated as per known APAR PM32225. I am not sure if our analysis is correct but any clues will be highly appreciated. We have raised a PMR anyway.

BROKER WHEN CACHE MAP IS ENABLEDPM32225: WTX MAP NODE FAILURE TO LOAD A MISSING MAP DOES NOT REPORT EXCEPTION TO MESSAGE


Error description
A WTX Map node failure to load a missing map does not report an
exception to Message Broker when the "Cache map" property is
enabled, which prevents the message flow from being able to
perform normal exception handling of the message.
Problem conclusion
The code has been corrected and an exception is reported if the
map cannot be loaded.

Delivered in:
8.2.0.6, 8.3.0.4

Thanks
Sanjoo
_________________
Sanjoo

Keep smiling
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Mon Jan 28, 2013 5:32 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

WTX is not thread safe until 8.4.0.1.

Therefore, adding concurrent threads will not work.

You must run each WTX map in single thread.

http://pic.dhe.ibm.com/infocenter/wtxdoc/v8r4m0/index.jsp?topic=%2Fcom.ibm.websphere.dtx.md.doc%2Freferences%2Fr_md_verifying_map_meets_basic_thread_safe_checks.htm

Even when using 8.4.0.1, there are holes in the WTX engine thread-safe operation and you must construct your map with special care in order to avoid those.

Running multiple instances of a WTX map prior to 8.4.0.1 will result in malfunction.

Your WMB version is also ancient and out of support in eight months.

http://www-01.ibm.com/support/docview.wss?uid=swg27024194

In order to run WTX 8.4.0.1, you must be on WMB V7 and IBM Java 1.6.0 SR 9 FP2.

http://www.mqseries.net/phpBB2/viewtopic.php?p=324970&sid=a8f9968047b387795612df6501f5fc4b

Ultimately, you should migrate to WMB V8, update your WTX flows to remove WTX and use DFDL, if possible.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » WTX map node not working correctly in multi threaded scenari
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.