The aiarcinterval database startup parameter
The aiarchiver daemon starts in On-Demand mode by default unless a time-interval is specified, in which case ai extents will be switched in Timed mode
The database startup argument processor does not allow values of 0, as such the database cannot explicitly be started with "-aiarcinterval 0" When an "on demand" aiarchive interval is required, simply do not specify the "-aiarcinterval" database startup parameter and on-demand mode is therefore implied.
Independent of the mode (timed or on-demand) in use, the AIMGT daemon wakes up at a non-configurable 5 second interval, to check if there are any AI files to archive :
- Fixed AI Extents are first compressed in a similar fashion to RFUTIL -C aimage extract
- All FULL/LOCKED extents are copied to the current archive directory (-aiarcdir)
- FULL extents are marked EMPTY and are available for re-use
- LOCKED extents are marked as ARCHIVED and will be marked EMPTY once completely applied to the replication target
- An entry corresponding to each archived file is written once the archival process completes (<dbname>.archival.log).
In a production situation where the AI files are sufficiently sized, this 5 second interval will usually imply:
- No action needed
- One ai file needing attention, but even if there are more that have changed their status in 5 seconds, it will manage these as well.
Changing the AIMGT interval
The "rfutil -C aiarchiver setinterval" functionality can be used to change the aiarchiver daemon mode or current timed interval once the AIMGT daemon has started.
Example 1: Switch from Timed mode to On-Demand
$ rfutil dbname -C aiarchiver setinterval 0
(7129) Usr 7 set name to Aiarchiver setinterval.
(13211) The after-image management daemon has been notified about the new archive interval.
(453) Logout by Aiarchiver setinterval
(13213) A new archive interval 0 has been set.
Example 2: Switch from On-Demand to Timed mode, or change the current time-interval
$ rfutil dbname -C aiarchiver setinterval 14400
(7129) Usr 13 set name to Aiarchiver setinterval.
(13211) The after-image management daemon has been notified about the new archive interval.
(453) Logout by Aiarchiver setinterval on CON:.
(13213) A new archive interval 14400 has been set.
An invalid value not change anything:
The specified archive interval is invalid. (13646)
To verify the AIMGT Feature:
The -aiarcinterval or the after-image Management Archival Method is written to database log file. Apart from the messages above when changed online, the database startup parameters:
(13871) After-image Management Archival Method : [ On Demand | Timed ]
(13872) After-image Management Archival Interval (-aiarcinterval) : <value in seconds>
Since OpenEdge 11.3, this information is reported by the describe utility:
Example: proutil dbname -C describe
Database Features
ID Feature Active Details
---- --------------------------------- ------ -------
8 After Image Mangement/Archiver Yes "On-demand 0" or "Timed 14400"