The QBMDBQueueSlot table is responsible for communication of the central dispatcher with individual slots. The maximum number of slots available is determined during initializing of the DBQueue Processor. One entry per slot is created in the QBMDBQueueSlot table. The table contains information about each slot and its status as well as currently running tasks.
Table 191: Meaning of status in the QBMDBQueueSlot table
0 |
No activity required. Initial state (set by initializing) or end state (set by process). |
1 |
The process is triggered to prepared central temporary tables, for example. |
2 |
Ready for operation. The process has started but the currently no tasks exist. This is the state in which tasks can be queued. |
3 |
Transfer to the QBMDBQueueCurrent table. The process has received tasks for processing and needs to begin. |
4 |
The process has recognized the tasks and added them. |
5 |
The process is handling the tasks. |
-1 |
The process was prompted to quit. Stop behavior if the process timed out or errors occurred. |
Stop behavior by maximum timeout
Once the maximum runtime has expired, the tasks of slots in the QBMDBQueueCurrent table currently in use are still processed. No new tasks are added from the QBMDBQueue table. In the QBMDBQueueSlot table, all slots with a slot status 2 are set to the -1 status. This prompts the processes to finish and stop themselves. The central dispatcher checks whether all processes have completed.
Related topics
The following example show the entries in the QBMDBQueueSlot table during processing.
-
Slot initialization
-
Starts the process using the central dispatcher.
-
The process is ready for operation. Preparations, for example, for temporary tables, are complete. The slot status is regularly tested.
-
The central dispatcher distributes tasks. The central dispatcher checks slots for readiness and enters the task from DialogDBQueue table in the QBMDBQueueCurrent table with the slot number. The status of each slots is updated once the QBMDBQueueCurrent table has taken over.
-
The process recognizes a task on the basis of the status, starts processing and updates its slots' status.
-
The process has completed the processing and sets slot number in the DialogDBQueueCurrent table to 0. The process changes the status of its slots to operational.
One Identity Manager Service is configured using a configuration file. The configuration file has to be in the same directory as the viNetworkService.exe. Two configuration files are supported:
Detailed information about this topic
The file Jobservice.cfg is an XML configuration file in One Identity Manager’s own simplified format. The advantage of this file is that run-time loading is supported. There is a configuration section in the file for each of the different modules in the One Identity Manager Service.
NOTE: Entries are case-sensitive. Both the sections and the names of the values must be written in lower case.
The root in the XML file is always called configuration. Each configuration file module and its values are defined in a category section respectively. At the moment the program only supports the System.Configuration.NameValueSectionHandler section type.
<configuration>
<category name="serviceconfiguration">
<value name="jobprovider">VI.JobService.MSSqlJobProvider,jobservice</value>
<value name="HttpPort">1180</value>
<value name="logwriter">VI.JobService.FileLogWriter,jobservice</value>
</category>
</configuration>
Example
Simple configuration with:
<configuration>
<category name="serviceconfiguration">
<value name="jobprovider">VI.JobService.MSSqlJobProvider,jobservice</value>
<value name="logwriter">VI.JobService.FileLogWriter,jobservice</value>
</category>
<category name="sqlprovider">
<value name="connectstring">User ID=sa;initial Catalog=<Database>;Data Source=<SQL-Server>;Password=<Password></value>
</category>
<category name="filelogwriter">
<value name="loglifetime">0.01:00:00</value>
<value name="logseverity">Info</value>
</category>
<category name="dispatcher" />
<category name="jobdestinations">
<value name="queuex">VI.JobService.JobServiceDestination,jobservice</value>
</category>
<category name="queuex">
<value name="queue">\%COMPUTERNAME%</value>
</category>
</configuration>
Related topics