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 » Transaction property in Compute Node.

Post new topic  Reply to topic
 Transaction property in Compute Node. « View previous topic :: View next topic » 
Author Message
prat31
PostPosted: Sat Mar 16, 2013 12:10 am    Post subject: Transaction property in Compute Node. Reply with quote

Apprentice

Joined: 01 Feb 2013
Posts: 30

Hi,

I wanted to know about the Transaction property in Compute node in detail.
About the options Commit and Automatic init.

Thanks.
Back to top
View user's profile Send private message
adubya
PostPosted: Sat Mar 16, 2013 1:18 am    Post subject: Re: Transaction property in Compute Node. Reply with quote

Partisan

Joined: 25 Aug 2011
Posts: 377
Location: GU12, UK

prat31 wrote:
Hi,

I wanted to know about the Transaction property in Compute node in detail.
About the options Commit and Automatic init.

Thanks.


The Infocenter describes the property, perhaps if you play back your understanding of the Commit/Automatic values to us then we can fill in the gaps.
Back to top
View user's profile Send private message Send e-mail
prat31
PostPosted: Sat Mar 16, 2013 3:32 am    Post subject: Reply with quote

Apprentice

Joined: 01 Feb 2013
Posts: 30

According to my understanding if it is in Automatic, then the DB queries in that node will be commited once the messages comes out of the node. And if it is in Commit, then the queries in compute node will be commited at the same time when it is executed.

Request you to acknowledge my understanding and add if somthing is missing/incorrect.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sat Mar 16, 2013 3:57 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20697
Location: LI,NY

prat31 wrote:
According to my understanding if it is in Automatic, then the DB queries in that node will be commited once the messages comes out of the node. And if it is in Commit, then the queries in compute node will be commited at the same time when it is executed.

Request you to acknowledge my understanding and add if somthing is missing/incorrect.

Wrong. Automatic does not translate to autocommit. Automatic means that the operation will be committed when the flow instance ends.

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
adubya
PostPosted: Sat Mar 16, 2013 7:05 am    Post subject: Reply with quote

Partisan

Joined: 25 Aug 2011
Posts: 377
Location: GU12, UK

The Infocenter is pretty clear

Quote:
Select the Transaction setting from the list. The values are:
Automatic (the default). The message flow, of which the Compute node is a part, is committed if it is successful. That is, the actions that you define in the ESQL module are performed on the message and it continues through the message flow. If the message flow fails, it is rolled back. If you choose Automatic, the ability to commit or roll back the action of the Compute node on the database depends on the success or failure of the entire message flow.
Commit. To commit the action of the Compute node on the database, irrespective of the success or failure of the message flow as a whole, select Commit. The database update is committed even if the message flow itself fails.
Back to top
View user's profile Send private message Send e-mail
zpat
PostPosted: Sun Mar 17, 2013 5:37 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5849
Location: UK

Don't forget the transaction starts at the MQinput node. Using the correct option there is critical. Note especially that non-persistent messages may not start a transaction depending how you set this node's properties.
Back to top
View user's profile Send private message
yellowbee
PostPosted: Mon Mar 18, 2013 9:35 am    Post subject: Reply with quote

Acolyte

Joined: 14 Apr 2012
Posts: 58

Using Transactionality property we can commit or Rollback the updates whatever made in the node as part of the message flow

Commit :- If we select Commit,Whatever ever updates are made in the node are committed irrespective of the success or failure of the message flow as a whole

Automatic :- If the message flow completes success,the updates are committed. If the message flow fails, the message and the Database updates are Rolled back
Back to top
View user's profile Send private message
mqjeff
PostPosted: Mon Mar 18, 2013 9:57 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

yellowbee wrote:
Automatic :- If the message flow completes success,the updates are committed. If the message flow fails, the message and the Database updates are Rolled back



Wire up a flow as follows:
Code:
MQinput->FlowOrder->(first)->MQOutput
                  ->(second)->MQOutput->Throw


Set transaction mode on MQInput to "none".
Back to top
View user's profile Send private message
yellowbee
PostPosted: Tue Mar 19, 2013 9:50 am    Post subject: Reply with quote

Acolyte

Joined: 14 Apr 2012
Posts: 58

Hi mqjeff
I have also raised the same question before.But i did not get the answer yet.

http://www.mqseries.net/phpBB2/viewtopic.php?p=347789&highlight=#347789

could you answer for the above
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Mar 19, 2013 10:08 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

yellowbee wrote:
Hi mqjeff
I have also raised the same question before.But i did not get the answer yet.

http://www.mqseries.net/phpBB2/viewtopic.php?p=347789&highlight=#347789

could you answer for the above


I answered that question before.

I suggested, in this thread, a very simple experiment.

I suggested this experiment as a rebuttal to your assertion that "Automatic" means that a transaction is created.

Review the documentation again.

Run the very simple experiment I mentioned.

Observe the results.

Consider the results.

Make changes to the very simple experiment.

Observe and consider the new results.

Read the documentation again.

Think about what you've seen and read.
Back to top
View user's profile Send private message
yellowbee
PostPosted: Thu Mar 21, 2013 12:17 pm    Post subject: Reply with quote

Acolyte

Joined: 14 Apr 2012
Posts: 58

hi Mqjeff

I tryed that in both cases the message not getting rolledback.after the mqoutput node of second leg because of throw node..it throwng exception like this
if i select transactionality as no
File:CHARACTER:F:\build\S700_P\src\DataFlowEngine\ImbDataFlowNode.cpp
Line:INTEGER:1073
Function:CHARACTER:ImbDataFlowNode::createExceptionList
Type:CHARACTER:ComIbmMQInputNode
Name:CHARACTER:Transaction#FCMComposite_1_1
Label:CHARACTER:Transaction.MQ Input
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:2230
Text:CHARACTER:Node throwing exception
UserException
File:CHARACTER:F:\build\S700_P\src\DataFlowEngine\BasicNodes\ImbThrowNode.cpp
Line:INTEGER:265
Function:CHARACTER:ImbThrowNode::evaluate
Type:CHARACTER:ComIbmThrowNode
Name:CHARACTER:Transaction#FCMComposite_1_5
Label:CHARACTER:Transaction.Throw
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:1
Number:INTEGER:3001
Text:CHARACTER:User exception thrown by throw node
Insert
Type:INTEGER:5
Text:CHARACTER:


if select as Automatic
File:CHARACTER:F:\build\S700_P\src\DataFlowEngine\ImbDataFlowNode.cpp
Line:INTEGER:1073
Function:CHARACTER:ImbDataFlowNode::createExceptionList
Type:CHARACTER:ComIbmMQInputNode
Name:CHARACTER:Transaction#FCMComposite_1_1
Label:CHARACTER:Transaction.MQ Input
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:2230
Text:CHARACTER:Node throwing exception
UserException
File:CHARACTER:F:\build\S700_P\src\DataFlowEngine\BasicNodes\ImbThrowNode.cpp
Line:INTEGER:265
Function:CHARACTER:ImbThrowNode::evaluate
Type:CHARACTER:ComIbmThrowNode
Name:CHARACTER:Transaction#FCMComposite_1_5
Label:CHARACTER:Transaction.Throw
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:1
Number:INTEGER:3001
Text:CHARACTER:User exception thrown by throw node
Insert
Type:INTEGER:5
Text:CHARACTER:
Back to top
View user's profile Send private message
adubya
PostPosted: Thu Mar 21, 2013 12:31 pm    Post subject: Reply with quote

Partisan

Joined: 25 Aug 2011
Posts: 377
Location: GU12, UK

Is your MQ input queue persistent ?
Back to top
View user's profile Send private message Send e-mail
yellowbee
PostPosted: Mon Mar 25, 2013 8:59 am    Post subject: Reply with quote

Acolyte

Joined: 14 Apr 2012
Posts: 58

No
Back to top
View user's profile Send private message
adubya
PostPosted: Mon Mar 25, 2013 9:58 am    Post subject: Reply with quote

Partisan

Joined: 25 Aug 2011
Posts: 377
Location: GU12, UK

yellowbee wrote:
No


Well there you go then

http://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/index.jsp?topic=%2Fcom.ibm.etools.mft.doc%2Fac00414_.htm

"Non-transactional messages are not rolled back to the input queue when an exception occurs."

With a transaction setting of "Automatic" on your MQ Input node then the transactionality will be derived from the message persistence.
Back to top
View user's profile Send private message Send e-mail
zpat
PostPosted: Mon Mar 25, 2013 10:41 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5849
Location: UK

Even when queues have default persistence, messages may not be.

I have a problem sometimes with developers sending non-persistent test messages using rfhutilc and wondering why the transaction does not work normally.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Transaction property in Compute Node.
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.