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 » Workflow Engines - IBM MQ Workflow & Business Process Choreographer » FMC00014E Timeout occurred

Post new topic  Reply to topic Goto page 1, 2  Next
 FMC00014E Timeout occurred « View previous topic :: View next topic » 
Author Message
FloridaSilverback
PostPosted: Fri Jun 18, 2004 6:39 am    Post subject: FMC00014E Timeout occurred Reply with quote

Novice

Joined: 13 May 2004
Posts: 16

I am attempting to perform a forcerestart2() passing in a data container. When I call the forcerestart2(rwc) I get an API timeout:

FMC38009E MQSeries Workflow API Error :
API Return Code : 14
Error Origin : e:\v340\src\fmcjcitm.cxx, line 4331
Error Message : FMC00014E Timeout occurred
Nested Exception : None

If I use the forcerestart() call without the data container everything works as expected.

My real goal here is to handle the case where a end user checkouts a work item, updates some data container elements and puts the work item back in the activity it came from. There may be a different/better way to do this.

Here is a sample of the code I am using:

rwc = workItem.outContainer();
rwc.setString("field1", "1");
rwc.setString("field2", "1");
rwc.setString("field3", "1");
workItem.forceRestart2(rwc);

Note: I have attempted this when the work item is in a "READY" and "CHECKED_OUT" state.


Thanks
Back to top
View user's profile Send private message
manoj
PostPosted: Fri Jun 18, 2004 6:51 am    Post subject: Reply with quote

Master

Joined: 30 Jan 2002
Posts: 237
Location: Virgina

From what i undertood from your post is you want to keep the same workitem in READY state after the user checks out and updating the container.
You can use workitem "exit" condition for this. How this works is you have to "checkin" the workitem with updated container, specify an "exit" condition in the workitem which will evaluate to "false" (you can set this exit condition using some container member) so that the workitem goes to READY state again...But the only problem with this is staff resolution is not done again ....i.e the workitem goes to the same user who checkin...
_________________
-manoj
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
FloridaSilverback
PostPosted: Fri Jun 18, 2004 7:07 am    Post subject: Reply with quote

Novice

Joined: 13 May 2004
Posts: 16

Manoj,
Thanks for you assistance. If I used the exit condition technique then I guess that the same technique would need to be incorporated into all activities that need to behave in this manner. Do you think this would add extra overhead to the processes or is this a 'best practices' approach?

The staff resolution 'thing' may be ok in this case. There will be times where the end user will want to keep ownership of the work item and there may be times when they don't. If they don't want to retain ownership then it will be tricky to figure out how to make the work item available for the authorized users. ( I'll think about this a bit )

I was hoping to use the forcerestart2 because I think everything is handled. I will implement the exit condition approach and test.

Thanks again
Back to top
View user's profile Send private message
manoj
PostPosted: Fri Jun 18, 2004 7:15 am    Post subject: Reply with quote

Master

Joined: 30 Jan 2002
Posts: 237
Location: Virgina

I am pretty sure using the "exit" condition has less overhead than using "forcerestart2". Also you may want to use "transfer" api to transfer the workitem back to the "pool"...

If you still want to use "forcerestart2" and want to debug the errors you are getting..please post details of your
Platform, MQ Workflow version and what kind of setup (2 tier, 3 tier..)...

Also you may want to run the checker utilty "fmczchk" and post the errors if you get some errors...
_________________
-manoj
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
Ratan
PostPosted: Fri Jun 18, 2004 7:27 am    Post subject: Reply with quote

Grand Master

Joined: 18 Jul 2002
Posts: 1245

I would follow Manoj's suggestion to do what you want to achieve.

From your original post I see you are getting the WorkItem's output Container and passing it as a parameter in the forceRestart2 call. Are your InContainer and OutContainer the same DataStructure?
_________________
-Ratan
Back to top
View user's profile Send private message Send e-mail
jmac
PostPosted: Fri Jun 18, 2004 7:53 am    Post subject: Re: FMC00014E Timeout occurred Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

FloridaSilverback wrote:
rwc = workItem.outContainer();
rwc.setString("field1", "1");
rwc.setString("field2", "1");
rwc.setString("field3", "1");
workItem.forceRestart2(rwc);


forceRestart2(container) wants an INPUT container not an output container. I use this API all the time and it does not time out. I find the error being reported (Timeout) somewhat strange, but if you are trulyly trying to use the input container, that could be the issue. Please try with the output container, and let me know if that works.


manoj wrote:
I am pretty sure using the "exit" condition has less overhead than using "forcerestart2".


FYI, not true, forceRestart is less overhead as it never does a checkout. In doing some sizing I queried the lab on this one and was told that 1 forcrestart is less overhead than a CO/CI which would be required for the Exit condition method.
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
jmac
PostPosted: Fri Jun 18, 2004 8:00 am    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

I started thinking about this more, and when I use forcerestart I am using the ActivityInstance, not the workitem. Who is the owner of the workitem that you are attempting to forcefinish?
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
manoj
PostPosted: Fri Jun 18, 2004 8:09 am    Post subject: Reply with quote

Master

Joined: 30 Jan 2002
Posts: 237
Location: Virgina

John,
You are right about that he's using the wrong container to forcerestart..this may the problem..

He was mentioning about doing forcerestart after checking out the workitem....that's one of the reasons why i thought it's better to checkin the workitem back with a false exit condition...
_________________
-manoj
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
jmac
PostPosted: Fri Jun 18, 2004 8:31 am    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

manoj wrote:
He was mentioning about doing forcerestart after checking out the workitem....that's one of the reasons why i thought it's better to checkin the workitem back with a false exit condition...


Agreed... if the item is going to be in a checked out state, then the checkin with failed exit condition is best. Based on the original note, I really cant tell what state the item is in. Both are mentioned... In any case I ran some tests, and I have no problem doing a forceRestart2() against the workitem when it is in a ready or a checked out state. So there is obviously some other issue with his code. OR... something we are not being told
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
FloridaSilverback
PostPosted: Fri Jun 18, 2004 9:52 am    Post subject: Reply with quote

Novice

Joined: 13 May 2004
Posts: 16

Everyone,
I am performing some tests on the input you gave. I will get back with my results soon.

You all are a great help!
Back to top
View user's profile Send private message
FloridaSilverback
PostPosted: Fri Jun 18, 2004 11:30 am    Post subject: Reply with quote

Novice

Joined: 13 May 2004
Posts: 16

I ran some more tests with your recommendations and had success. Below are the answers to the questions you had along the way.

Ratan wrote:
Quote:
From your original post I see you are getting the WorkItem's output Container and passing it as a parameter in the forceRestart2 call. Are your InContainer and OutContainer the same DataStructure?


Yes, both the input container and output container are the same.


jmac wrote:
Quote:
I started thinking about this more, and when I use forcerestart I am using the ActivityInstance, not the workitem. Who is the owner of the workitem that you are attempting to forcefinish?


The owner of the work item is the logged on user.


jmac wrote:
Quote:
Agreed... if the item is going to be in a checked out state, then the checkin with failed exit condition is best. Based on the original note, I really cant tell what state the item is in. Both are mentioned... In any case I ran some tests, and I have no problem doing a forceRestart2() against the workitem when it is in a ready or a checked out state. So there is obviously some other issue with his code. OR... something we are not being told


I ran tests with the work item in both states (ready and checked_out)


jmac wrote:
Quote:
forceRestart2(container) wants an INPUT container not an output container. I use this API all the time and it does not time out. I find the error being reported (Timeout) somewhat strange, but if you are trulyly trying to use the input container, that could be the issue. Please try with the output container, and let me know if that works.


I changed the forcerestart2() to use a input container and everything now seems to work. I did see an intermitent issue where it worked in one test and then timedout on the next. At the time I had a lot of things running (WAS, DB2, 2 Workflow configurations, JBuilder, etc, etc, ) so I rebooted and I have not seen the timeout occur again.


Here is the code I am using to get the input container:
roc = workItem.inContainer();
rwc = roc.asReadWriteContainer();
rwc.setString("field 1", "1");
roc = rwc.asReadOnlyContainer();
workItem.forceRestart2(roc);


The timeout error doesn't seem to make sense (as jmac said) so I am going to perform more testing on this item and make sure I don't have something else going on here.


Thanks for all of the help!

[/quote]
Back to top
View user's profile Send private message
jmac
PostPosted: Fri Jun 18, 2004 11:50 am    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

The fact that you sometimes get the timeout is pretty strange... what is in your fmcsys and fmcerr log files?
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
manoj
PostPosted: Fri Jun 18, 2004 11:57 am    Post subject: Reply with quote

Master

Joined: 30 Jan 2002
Posts: 237
Location: Virgina

With version 3.3.2/3.3 on SUN Solaris this problem (time out with RC=14) happen some times if you don't have the SUN OS patches upgraded to the correct (or higher ) levels
_________________
-manoj
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
FloridaSilverback
PostPosted: Mon Jun 21, 2004 6:35 am    Post subject: Reply with quote

Novice

Joined: 13 May 2004
Posts: 16

jmac,
Below is a section from the fmcsys log file. This is repeated over and over in the log file.

6/18/2004 10:20:55 AM FMC31050E An error has occurred which has terminated processing.
6/18/2004 10:20:55 AM FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000
6/18/2004 10:20:55 AM FMC31050E An error has occurred which has terminated processing.
6/18/2004 10:20:55 AM FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000
6/18/2004 10:20:55 AM FMC12240E Execution server instance(s) stopped with an error.
6/18/2004 10:20:55 AM FMC12240E Execution server instance(s) stopped with an error.
6/18/2004 10:20:56 AM FMC10500I Execution server instance started.
6/18/2004 10:20:56 AM FMC31050E An error has occurred which has terminated processing.
6/18/2004 10:20:56 AM FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000
6/18/2004 10:20:56 AM FMC10500I Execution server instance started.
6/18/2004 10:20:56 AM FMC31050E An error has occurred which has terminated processing.
6/18/2004 10:20:56 AM FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000
6/18/2004 10:20:56 AM FMC12240E Execution server instance(s) stopped with an error.
6/18/2004 10:20:56 AM FMC12240E Execution server instance(s) stopped with an error.
6/18/2004 10:20:56 AM FMC10500I Execution server instance started.
6/18/2004 10:20:56 AM FMC31050E An error has occurred which has terminated processing.
6/18/2004 10:20:56 AM FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000
6/18/2004 10:20:56 AM FMC10500I Execution server instance started.
6/18/2004 10:20:56 AM FMC12240E Execution server instance(s) stopped with an error.
6/18/2004 10:20:57 AM FMC10500I Execution server instance started.

Thanks
Back to top
View user's profile Send private message
FloridaSilverback
PostPosted: Mon Jun 21, 2004 6:38 am    Post subject: Reply with quote

Novice

Joined: 13 May 2004
Posts: 16

Here is information from the fmcerr log file that occurred at the same time.

WebSphere MQ Workflow 3.4 Error Report

Report creation = 6/18/2004 10:20:55 AM
Related message = FMC31050E An error has occurred which has terminated processing.


Error location = File=e:\v340\objnopt\db2cs\fmcdbac1\fmcdbctr.cxx, Line=527, Function=FmcDatabase::Container::updcli
Error data = FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000


WebSphere MQ Workflow 3.4 Error Report

Report creation = 6/18/2004 10:20:55 AM
Related message = FMC31050E An error has occurred which has terminated processing.


Error location = File=e:\v340\objnopt\db2cs\fmcdbac1\fmcdbctr.cxx, Line=527, Function=FmcDatabase::Container::updcli
Error data = FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000


WebSphere MQ Workflow 3.4 Error Report

Report creation = 6/18/2004 10:20:56 AM
Related message = FMC31050E An error has occurred which has terminated processing.


Error location = File=e:\v340\objnopt\db2cs\fmcdbac1\fmcdbctr.cxx, Line=527, Function=FmcDatabase::Container::updcli
Error data = FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000


WebSphere MQ Workflow 3.4 Error Report

Report creation = 6/18/2004 10:20:56 AM
Related message = FMC31050E An error has occurred which has terminated processing.


Error location = File=e:\v340\objnopt\db2cs\fmcdbac1\fmcdbctr.cxx, Line=527, Function=FmcDatabase::Container::updcli
Error data = FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000


WebSphere MQ Workflow 3.4 Error Report

Report creation = 6/18/2004 10:20:56 AM
Related message = FMC31050E An error has occurred which has terminated processing.


Error location = File=e:\v340\objnopt\db2cs\fmcdbac1\fmcdbctr.cxx, Line=527, Function=FmcDatabase::Container::updcli
Error data = FmcSQLException, Sqlcode=-723, Sqlerrmc=FMC.PD_UPDTÿ-803ÿ23505ÿ1|FMC.HS_PROC_DATA, Sqlerrp=SQLDMISR, Sqlerrd[0]=-2146303874, Sqlerrd[1]=5, Sqlerrd[2]=0, Sqlerrd[3]=0, Sqlerrd[4]=0, Sqlerrd[5]=0, Sqlwarn= , Sqlstate=09000
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » Workflow Engines - IBM MQ Workflow & Business Process Choreographer » FMC00014E Timeout occurred
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.