IBM Support

changeOrder API hangs

Troubleshooting


Problem

changeOrder API has an attribute SelectMethod which can sometimes cause this api to hang.

Symptom

changeOrder API hangs

Cause

Customer scenario : coded WAIT for SelectMethod of changeOrder API. The Default value of this attribute is NOWAIT.

If you pass the value of this attribute to WAIT then the SELECT SQL fired by changeOrder API will have to WAIT to get a lock. It will not timeout.

The impact of setting SelectMethod to WAIT will be changeOrder call will wait instead of failing. The wait time depends on how long the original transaction holds the lock. As soon as original transaction releases the lock changeOrder then will acquire lock and process the record.
If you take care of sequential amendments then there will be very less chances of deadlocks.

However, we have a property which we can control the query timeout value. You may consider to use one of the following properties if you feel that it will help you if you decide to use WAIT as the attribute.

If you are calling changeOrder API from agent then you can use property
yfs.agentserver.queryTimeout

If you are calling changeOrder API from UI then you can use property
yfs.ui.queryTimeout

Please refer to properties guide for more details on above properties.

Resolving The Problem

Code the SelectMethod to NOWAIT.

[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Performance","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.2.1;9.2;9.1","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
10 May 2022

UID

swg21623202