Important Updates to Cybersecurity Software
HelpSystems is updating the names of our cybersecurity software, including the Powertech product line. Don’t worry—the functionality of your products won’t change.
See the new names here > New, Clearer Names for HelpSystems Security Software.
All of Database Monitor for IBM i’s communications between the trigger programs, journals, and the background jobs is through data queues.
In extreme situations, such as when someone has ended IDT450 and not restarted it, the system can encounter situations in which the queues "fill up". This is more of a problem in versions of the operating system prior to V4R5, when data queues were limited to a size of 16Mb.
Note: No data is lost when a data queue fills up. There are overflow files (IDTOVR) that are automatically used in such cases.
For fine-tuning of the system, it may be desirable to have multiple data queues, especially when your application's files have large record lengths (fat files).
The space needed for each entry in the data queue is equal to two times the record length plus a fixed overhead amount (200 bytes or so, depending on the file). Therefore, the maximum queue length specified on the data queue should be large enough to hold entries for the file with the largest record length.
Care should be taken, then, to define a good mixture of queues with varying sizes so as to minimize space while at the same time minimizing the number of queues needed.
The exact formula used to determine the correct size of the data queues is: Take the record length of the file (in bytes), multiply times two, add the number of fields in the file, add 300, then round up to the nearest 500.
If only one queue is used, however, this queue must be big enough to hold the largest record size. Since data queue entries occupy the maximum entry length regardless of the actual entry size, files with a smaller record size consume a large amount of wasted space.
The program "System Parameters and Settings" (option 12 on the DataThread Menu) is used to maintain the system's data queues. In this program, each parameter beginning with the name IDTLOGQ and optionally followed by a prefix of one character, specifies a data queue. By default, the primary data queue is called IDTLOGQ, and is represented by the entry of that name, with no letter suffix.
The maximum size of each entry, as noted above, will determine which files' entries will fit in the queue.
Find the file that is too large for a data queue
There may be times you don’t know which file is too large for a data queue. If so, you can find it with this method:
Note: You can copy and paste the following command into an SQL statement:
select FMLIB, FMFILE, FMFMTR, sum(FMFLEN) as RcdLen
group by FMLIB, FMFILE, FMFMTR
order by RcdLen desc
Then, adjust at least one data queue so that it is able to fit that data by using the formula in Option 12 (see below). The data queues should be configured so that some of them are long enough to handle the longest file being monitored.
The formula for this is:
Record Length of the file * 2 + (number of fields in file) + 300, (then round off to the nearest highest number)
******** End of data ********
IDTAUDAF4 RCDLEN = 6,077
6077 * 2 = 12154
Find the number of fields:
Record Format List
Record Format Level
Text . . . . . . . . . . . . . . . . . . . : Journal format for entry type AF
Total number of formats . . . . . . . . . . : 1
Total number of fields . . . . . . . . . . . : 54
12154 + 54 = 12208
12208 + 300 = 12508 (round off to 13000)
Create a new Data Queue with a size = 13000
Still have questions? We can help. Submit a case to Technical Support.