IBM Support

Inventory Sync process fails to update inventory for some of the records if JBoss JMS is used

Troubleshooting


Problem

Multiple getJob JBoss JMS JBoss JMS configuration Inventory Sync not processing all YFS_INVENTORY_SUPPLY_TEMP records when using JBoss

Symptom

Multiple getJob messages, Inventory Sync agent fails to process some of the records

Cause

The JBoss JMS optional setting prefetchSize determines how many messages client side message consumers will buffer locally. The default value for prefetchSize is 150. This allows the IBM Sterling agent JVM to fetch up to 150 messages locally. Issues may occur with this default setting.
1. Multiple getJob messages for single TRANSACTION.
2. Inventory Sync agent (or any agent that works based on File I/O transaction which has EOF configuration enabled.
- EOF service may fail to process some of the transactions.

Both above issues are symptom of race condition between multiple JVMs for single translations due to prefetchSize setting.

Environment

Sterling SSFS using JBoss JMS

Diagnosing The Problem

This problem is found when not all YFS_INVENTORY_SUPPLY_TEMP records are processed and reflected in YFS_INVENTORY_SUPPLY. A verbose output from syncLoadedInventory will show the records which were processed.

Resolving The Problem

Configure prefetchSize=1 (or less then # of threads in single agent JVM). Refer to JBoss documentation for exact syntax.

[{"Product":{"code":"SS6PEW","label":"Sterling Order Management"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Installation","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.1;9.0","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
16 June 2018

UID

swg21595281