Search Results wf_deferred
The APPLSYS.WF_DEFERRED
table in Oracle E-Business Suite (EBS) versions 12.1.1 and 12.2.2 plays a critical role in the Oracle Workflow deferred processing mechanism. This table is part of the Oracle Workflow component, which is integrated into the Oracle Applications Technology Stack (APPLSYS schema). Below is a detailed breakdown of its purpose, structure, and functionality within Oracle EBS.
Purpose of WF_DEFERRED
TheWF_DEFERRED
table stores deferred workflow notifications and activities that are scheduled for asynchronous execution. Oracle Workflow uses this mechanism to improve performance by offloading time-consuming or non-critical tasks to background processes, ensuring that the main application remains responsive. This is particularly important in high-volume transactional environments where immediate processing could degrade system performance.
Key Columns and Structure
The table contains several key columns that define the deferred items and their processing requirements:- DEFERRED_ID: A unique identifier for each deferred item.
- DEFERRED_TYPE: Specifies whether the item is a notification, activity, or another workflow-related entity.
- ITEM_TYPE and ITEM_KEY: References the workflow item type and key, linking the deferred item to its parent workflow process.
- DEFERRED_DATE: The timestamp when the item was deferred.
- PROCESS_DATE: The scheduled execution time for the deferred item.
- STATUS: Indicates the current state (e.g., PENDING, PROCESSED, ERROR).
- ERROR_MESSAGE: Stores error details if processing fails.
Deferred Processing Mechanism
Oracle Workflow's deferred processing relies on theWF_DEFERRED
table in conjunction with background engines:
- Deferral: When a workflow activity or notification is marked for deferred execution, a record is inserted into
WF_DEFERRED
with a futurePROCESS_DATE
. - Polling: The Workflow Background Engine (WFENG) periodically queries this table for items where
PROCESS_DATE
is less than or equal to the current time. - Execution: Eligible items are processed, and their status is updated to
PROCESSED
orERROR
.
Integration with Oracle EBS
In EBS 12.1.1 and 12.2.2, deferred processing is commonly used for:- Approval Workflows: Delaying notifications until business hours.
- Batch Operations: Processing high-volume data updates asynchronously.
- Error Handling: Retrying failed operations after a delay.
Administration and Troubleshooting
System administrators monitor and manage deferred items using:- Concurrent Programs: The "Workflow Background Process" (FNDWFPR) handles deferred item processing.
- Queries: Direct SQL queries against
WF_DEFERRED
to identify stalled or erroneous items. - Purge Scripts: Oracle provides scripts to clean up old records (e.g.,
wfdepurge.sql
).
Performance Considerations
Large volumes of deferred items can impact performance. Best practices include:- Regularly purging processed items.
- Tuning the Workflow Background Engine's polling frequency.
- Monitoring for long-running deferred tasks.
APPLSYS.WF_DEFERRED
table is a foundational component of Oracle Workflow's asynchronous processing architecture in EBS 12.1.1 and 12.2.2, enabling scalable and efficient workflow execution while maintaining system responsiveness.
-
VIEW: APPLSYS.AQ$WF_DEFERRED
12.2.2
-
VIEW: APPLSYS.AQ$WF_DEFERRED
12.1.1
owner:APPLSYS, object_type:VIEW, object_name:AQ$WF_DEFERRED, status:VALID,
-
VIEW: APPLSYS.AQ$WF_DEFERRED
12.2.2
owner:APPLSYS, object_type:VIEW, object_name:AQ$WF_DEFERRED, status:VALID,
-
VIEW: APPLSYS.AQ$WF_DEFERRED
12.1.1
-
APPLSYS.AQ$WF_DEFERRED dependencies on STANDARD
12.1.1
-
APPLSYS.AQ$WF_DEFERRED dependencies on STANDARD
12.2.2
-
TABLE: APPLSYS.WF_DEFERRED
12.1.1
owner:APPLSYS, object_type:TABLE, object_name:WF_DEFERRED, status:VALID,
-
TABLE: APPLSYS.WF_DEFERRED
12.2.2
owner:APPLSYS, object_type:TABLE, object_name:WF_DEFERRED, status:VALID,
-
EVALUATION CONTEXT: APPLSYS.AQ$_WF_DEFERRED_V
12.2.2
owner:APPLSYS, object_type:EVALUATION CONTEXT, object_name:AQ$_WF_DEFERRED_V, status:VALID,
-
EVALUATION CONTEXT: APPLSYS.AQ$_WF_DEFERRED_V
12.1.1
owner:APPLSYS, object_type:EVALUATION CONTEXT, object_name:AQ$_WF_DEFERRED_V, status:VALID,
-
QUEUE: APPLSYS.WF_DEFERRED
12.2.2
owner:APPLSYS, object_type:QUEUE, object_name:WF_DEFERRED, status:VALID,
-
RULE: APPLSYS.WF_DEFERRED$1
12.2.2
owner:APPLSYS, object_type:RULE, object_name:WF_DEFERRED$1, status:VALID,
-
QUEUE: APPLSYS.WF_DEFERRED
12.1.1
owner:APPLSYS, object_type:QUEUE, object_name:WF_DEFERRED, status:VALID,
-
QUEUE: APPLSYS.AQ$_WF_DEFERRED_E
12.1.1
owner:APPLSYS, object_type:QUEUE, object_name:AQ$_WF_DEFERRED_E, status:VALID,
-
SYNONYM: APPS.WF_DEFERRED
12.1.1
owner:APPS, object_type:SYNONYM, object_name:WF_DEFERRED, status:VALID,
-
SYNONYM: APPS.WF_DEFERRED
12.2.2
owner:APPS, object_type:SYNONYM, object_name:WF_DEFERRED, status:VALID,
-
RULE: APPLSYS.WF_DEFERRED$1
12.1.1
owner:APPLSYS, object_type:RULE, object_name:WF_DEFERRED$1, status:VALID,
-
QUEUE: APPLSYS.AQ$_WF_DEFERRED_E
12.2.2
owner:APPLSYS, object_type:QUEUE, object_name:AQ$_WF_DEFERRED_E, status:VALID,
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_H
12.1.1
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_H, status:VALID,
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_H
12.2.2
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_H, status:VALID,
-
APPS.WF_EVENT dependencies on DUAL
12.2.2
-
RULE SET: APPLSYS.WF_DEFERRED$1
12.2.2
owner:APPLSYS, object_type:RULE SET, object_name:WF_DEFERRED$1, status:VALID,
-
12.2.2 DBA Data
12.2.2
-
APPS.WF_EVENT dependencies on DUAL
12.1.1
-
RULE SET: APPLSYS.WF_DEFERRED$1
12.1.1
owner:APPLSYS, object_type:RULE SET, object_name:WF_DEFERRED$1, status:VALID,
-
VIEW: APPLSYS.AQ$_WF_DEFERRED_F
12.1.1
-
12.1.1 DBA Data
12.1.1
-
APPS.WF_EVENT_QH dependencies on STANDARD
12.2.2
-
VIEW: APPLSYS.AQ$_WF_DEFERRED_F
12.2.2
-
TYPE: APPS_NE.WF_EVENT_T
12.2.2
owner:APPS_NE, object_type:TYPE, object_name:WF_EVENT_T, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
APPS.WF_EVENT_PING_PKG SQL Statements
12.2.2
-
APPS.WF_EVENT dependencies on ALL_QUEUES
12.1.1
-
12.2.2 DBA Data
12.2.2
-
12.2.2 DBA Data
12.2.2
-
APPS.WF_EVENT dependencies on ALL_QUEUES
12.2.2
-
APPS.WF_EVENT_QH dependencies on WF_EVENT
12.2.2
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_T
12.1.1
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_T, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
APPS.WF_STANDARD dependencies on WF_AGENTS
12.2.2
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_L
12.1.1
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_L, status:VALID,
-
APPS.WF_EVENT dependencies on WF_AGENT_T
12.1.1
-
APPS.WF_STANDARD dependencies on WF_AGENTS
12.1.1
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_T
12.2.2
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_T, status:VALID,
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_L
12.2.2
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_L, status:VALID,
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_S
12.2.2
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_S, status:VALID,
-
APPS.WF_DIAGNOSTICS dependencies on WF_SYSTEMS
12.2.2
-
APPS.WF_DIAGNOSTICS dependencies on WF_NOTIFICATION_IN
12.2.2
-
TABLE: APPLSYS.AQ$_WF_DEFERRED_S
12.1.1
owner:APPLSYS, object_type:TABLE, object_name:AQ$_WF_DEFERRED_S, status:VALID,
-
APPS.WF_DIAGNOSTICS dependencies on WF_NOTIFICATION_IN
12.1.1