- 3 Minutes to read
- Print
- DarkLight
- PDF
Scenario Locking
- 3 Minutes to read
- Print
- DarkLight
- PDF
To prevent the Consolidation Process and a Data Load Rule from running on the same scenario simultaneously, Scenario Lock functionality is in place.
How It Works
When Data Load Rules and Consolidation Processes are executed, the first one to be initiated will acquire a lock at the Scenario level preventing the second process from executing on the same scenario until the first process is complete. For example, let's say a second process is initiated before the first one completes, the system will wait 10 minutes before canceling the second process. Note that information on status (canceled, completed and queued processes) is available in Cloud Scheduler. During the 10 minutes, the second process will automatically attempt to execute every 30 seconds to acquire a hold on the scenario. If the scenario lock is acquired by the second process (meaning that the first process completes within the 10 minutes) then it will execute and complete. If the scenario is not acquired by the second process within 10 minutes (meaning that the first process takes longer to complete), then it will be canceled and you can retry the process later.
Application Behavior
You can run Data Load Rules synchronously and/or asynchronously.
Behavior When Running Asynchronous Data Load Rules
Asynchronous Data Load Rules run in cloud and are executed via Cloud Scheduler.
Asynchronous Data Load Rules have a limit of one process per application. So when two Data Load Rules are executed by the same or different users (on the same or two different scenarios), they are queued in the Cloud Scheduler and executed one after another.
Behavior When Running Synchronous Data Load Rules
Synchronous Data Load Rules run instantaneously and you cannot continue to work in the application until completion.
You will not see entries in the Cloud scheduler. You will see entries in the Data Load History.
Two different users can run a Data Load Rule independently at the same time as long as each is run for a different scenario. If the same scenario, subsequent process will fail and result in an error.
Behavior When Running a Combination of Synchronous and Asynchronous Data Load Rules
You can run Data Load Rules asynchronously and synchronously within the same application. If an asynchronous is running and a synchronous Data Load Rule is initiated for a different scenario, both will be executed.
If an asynchronous Data Load Rule is running and a synchronous Data Load Rule is initiated for the same scenario, the synchronous Data Load Rule will fail immediately.
If a synchronous Data Load Rule is running and an asynchronous Data Load Rule is initiated for the same scenario, the asynchronous Data Load Rule will be queued in the Cloud Scheduler (the Status will be ‘running’ while waiting). The wait time is ten minutes, after which the application cancels the queued process.
Behavior When Running Consolidation Process Scenarios
If a Consolidation Process is running and a synchronous Data Load Rule is initiated for a different scenario, both will be executed.
If a Consolidation Process is running and a synchronous Data Load Rule is initiated for the same scenario, the synchronous Data Load Rule will fail immediately.
If a Consolidation Process is running and an asynchronous Data Load Rule is initiated for a different scenario, both will be executed immediately in Cloud Scheduler.
If a Consolidation Process is running and an asynchronous Data Load Rule is initiated for the same scenario, the asynchronous Data Load Rule will be queued in the Cloud Scheduler (the Status will be ‘running’ while waiting). The wait time is ten minutes, after which the application cancels the queued process
If an asynchronous or a synchronous Data Load Rule is running and a Consolidation Process is initiated for the same scenario, the Consolidation Process will be queued in the Cloud Scheduler (Status will be ‘running’ while waiting). The wait time is ten minutes, after which the application cancels the queued process.