Managing Inventory Table Locks

This chapter provides an overview of inventory table locks and discusses how to release locks on inventory tables.

Click to jump to parent topicUnderstanding Inventory Table Locks

In an active inventory environment, the system may be processing orders from multiple sources as users initiate requests using both online pages and background processes. This can lead to table contention issues as more than one process needs access to the same table at the same time. For example, two separate process instances could run against the same material stock request order number at the same time, both needing access to this row in the demand table. PeopleSoft Inventory uses a table locking feature and temporary tables to control balance table access.

In order to lock a demand line in the fulfillment table (IN_DEMAND), a row is inserted into the IN_DEMAND_LOCK table. A record only exists on IN_DEMAND_LOCK when the record is locked for update processing. All processes sensitive to locking will check the existence of a row in this table. When the lock is removed, the field LAST_PROCESS_INST on IN_DEMAND is updated with the current process instance and then the row is deleted from the IN_DEMAND_LOCK table.

On the Setup Fulfillment-Fulfillment Tasks page, you can select the Release Additional Locks check box to instruct the fulfillment engine to release any locks not identified by the first processing group of data determined at runtime. When a batch job starts it sometimes selects and locks rows beyond what can actually be processed after further validation. This check box releases the locks on rows that are de-selected and will not actually be processed by the job. If this check box is not selected, then all fulfillment transaction requests and demand lines meeting those requests are soft locked until they are finished processing. When the locks are released using this option, both fulfillment transaction requests and demand lines that were not included in the initial processing group are released to be processed by concurrent fulfillment engine processes.

PeopleSoft Inventory uses two types of table locks:

Click to jump to parent topicReleasing Locks on Inventory Tables

The Release Inventory Locks page is intended for system administrator use only. Administrators can use this page to release the soft locks placed on inventory tables by a process that ended abnormally. The tables are released by deleting the demand line rows from the demand lock table and resetting the status on process scheduler. The process status is automatically set to Canceled when the soft locks are released. This cancellation prevents potential data corruption that could occur without releasing the appropriate soft lock. Soft locks for processes that are currently running with a status of Processing cannot be released using this page. These processes must first be canceled from PeopleSoft Process Scheduler. Once they are in a Canceled, Deleted, or Not Successful status, then soft locks can be released using this page.

The Release Inventory Locks page works on the following tables:

Click to jump to top of pageClick to jump to parent topicPage Used to Release Locks on Inventory Tables

Page Name

Definition Name

Navigation

Usage

Release Inventory Locks

RELEASE_INV_LOCKS

Inventory, Release Inventory Locks

Remove soft locks from some inventory tables by resetting the processing status (database administrators only).

Click to jump to top of pageClick to jump to parent topicUsing the Release Inventory Locks Page

Access the Release Inventory Locks page (Inventory, Release Inventory Locks).

Business Unit

To display the locks applied to business units, enter a single Inventory business unit or leave blank to display all business units.

Process Instance

To display the locks applied by a specific process run, enter the instance number from the Process Monitor component. Leave this field blank to display all processes.

Release Option

Identify the locks that you want to display. Values are:

  • All: Display all locks in all tables.

  • BCT: Display locks in transaction staging table (BCT_CTL).

  • Demand: Display locks in demand table IN_DEMAND.

  • Putaway: Display locks in putaway tables; STAGED_INF_INV and STAGED_ITEM_INV.

Search

Click to initiate a search of all locked records based on the search criteria of business unit, process instance, and release option. The system returns rows of process instances where the process status is not set to Processing and the processing status of the inventory table is set to Process.

Select Lines to Release Soft Locks

This section displays the results of the search criteria. To release the locks on the inventory tables, locate the process that you want to unlock, select the check box and save this page.

Rows Locked

Displays the number of rows locked by this process instance.

User ID

Displays the user that launched the process instance.

End Date/Time

Displays the date and time that the process ended.

Run Status

Displays the current status of the process instance. This page is intended to release soft locks placed on tables by a process that ended abnormally. Soft locks for processes that are currently running with a status of Processing cannot be released using this page. These processes must first be canceled from PeopleSoft Process Scheduler. Once they are in a Canceled, Deleted, or No Success status, then soft locks can be released using this page.

Save

Click to update the selected rows:

  • The row is deleted from IN_DEMAND_LOCK.

  • The BCT_STATUS process status of the BCT_CTL record changes from 3 (in process) to 4 (reprocess).

  • The PROCESS_FLAG of the STAGED_INF_INV record changes from Y (yes) to N (no).

  • The PROCESS_FLAG of the STAGED_ITEM_INV record changes from Y (yes) to N (no).