Documentation demo

The scheduler demo contains scheduler scripts and a PL/SQL package that covers most of the scheduler functionality. The demo is free available on the download demo page.
The demo contains the next eleven scheduler scripts.

SO_DEMO_MULTI_OUTPUT Demonstrates how the scheduler task output works.
SO_DEMO_PROGRESS_INFO Demonstrates how scheduler task progress works.
SO_DEMO_PROGRESS_PARALLEL_1
SO_DEMO_PROGRESS_PARALLEL_2
Demonstrates two ways on how scheduler task progress works when data is processed in parallel running scheduler tasks.
SO_DEMO_RESTART_MAIN
SO_DEMO_RESTART_SUBTASK
Demonstrates how scheduler task restart information is used when tasks are restarted.
SO_DEMO_SUSPEND
SO_DEMO_SUSPEND_RESTART
Demonstrates how to suspend scheduler tasks.
SO_DEMO_TRACE Demonstrates how to generate scheduler trace output.
SO_DEMO_TREE Demonstrates creating tasks from within another tasks.
SO_DEMO_WAIT Demonstrates how a task waits on a child task.
Each demo script executes a PL/SQL program located in the SO_DEMO package with the same name. For example script SO_DEMO_WAIT starts procedure SO_DEMO.WAIT.
Back to top 

Installation

The easiest way is installing the demo under the installation user and grant the demo scripts to other scheduler users.
If another scheduler user wants to install the demo it needs the following privileges.

  1. The developer privilege needed for creating the demo scheduler scripts.
  2. The oracle user needs the oracle privilege CREATE TABLE and execute privilege on the DBMS_LOCK package.

If a new oracle user (and scheduler user) is needed a new oracle account with the required privileges can be created with the SQL*Plus script demouser.sql. This script must be run by an oracle administrator. After creation register the oracle user and grant the developer privilege.

Before the demo can be installed a demo queue must be created. This must be done by a scheduler user with the administrator privilege. This user must login using sqlplus and run the SQL*Plus script so_demo_queue.sql.

Now login with SQL*Plus under the scheduler user where the demo must be installed and run the SQL*Plus script so_demo.sql.

Back to top 

Scheduler task output

The SO_DEMO_MULTI_OUTPUT script demonstrates how to write data to a task output destination.
After starting this script the output is displayed on the task properties window (output panel).
In this script is demonstrated:

The demo program is explained in the PL/SQL output example.

Back to top 

Scheduler task progress information

The demo contains three scripts on how to display scheduler task progress information. Progress information is displayed on the task properties window (progress panel).
The SO_DEMO_PROGRESS_INFO script demonstrates on how scheduler task progress information is generated. This demo program is explained in the PL/SQL progress example.
The SO_DEMO_PROGRESS_PARALLEL_1 and SO_DEMO_PROGRESS_PARALLEL_2 script demonstrates two ways on how data can be processed parallel and to set scheduler task progress information for each parallel process. The first script keeps track of which items to be processed by updating the database, the second script uses only scheduler functionality to accomplish the same.

Each of the above scheduler scripts demonstrate how we:

Back to top 

Scheduler task restart

The restart demo contains two scheduler scripts which demonstrate how the scheduler task restart functionality works. A scheduler task can be restarted at the same point as where it is terminated before successfully completion.
The SO_DEMO_RESTART_MAIN script demonstrates how restart values are read and set if the scheduler task ended with an error and is restarted. This demo program is explained in the PL/SQL restart example.
The SO_DEMO_RESTART_SUBTASK script demonstrates how restart values are used in the restarted child tasks. In this demo can be seen that the scheduler software takes notice to which child task a restart value belongs even if they have the same name.

Back to top 

Suspend scheduler tasks

The suspend demo contains two scheduler scripts in which the scheduler task suspend option is enabled. Both scripts also contain progress code. Notice that when a scheduler task is suspended the progress information is automatically updated.
The SO_DEMO_SUSPEND script is explained in the PL/SQL suspend example.
Script SO_DEMO_SUSPEND_RESTART is the same as the previous but with extra restart functionality added.

Back to top 

Scheduler task trace

The task trace demo contains one script in which all the available scheduler trace procedures are used. Trace output is only generated when the scheduler task trace is enabled on the script submit window (trace panel).
The SO_DEMO_TRACE script is further explained in the PL/SQL trace example.

Back to top 

Scheduler task tree

The SO_DEMO_TREE script starts a program that itself creates new child tasks.
The result is best viewed on the task tree window.

Back to top 

Scheduler task wait

With the SO_DEMO_WAIT script is demonstrated how tasks wait on other tasks.
In this demo a parent task submits a child task and waits until it is finished.

Back to top