Salesforce

Congruency of RFUTIL AIARCHIVE NEXTEXTENT with AIMGT daemon

« Go Back

Information

 
TitleCongruency of RFUTIL AIARCHIVE NEXTEXTENT with AIMGT daemon
URL Name000034169
Article Number000173427
EnvironmentProduct: OpenEdge
Version: 10.1B, 10.1C, 10.2x, 11.x
OS: All supported platforms
Question/Problem Description
What happens if the AIMGT process is also trying to switch and archive an ai file at the same moment that a manual switch is fired with: rfutil aiarchive nextextent

If the AIMGT deamon that archives FULL AI extents and a manual archive triggered by "rfutil -C aiarchive nextextent" are fired at the same time would there be a conflict?

What happens if the AIMGT process is also trying to switch and archive an ai file at the same moment that a manual ai archive is instructed?
Steps to Reproduce
Clarifying Information
RFUTIL AIARCHIVE NEXTEXTENT can be run if the AIMGT deamon is running or not
RFUTIL AIARCHIVE NEXTEXTENT can only be used if the database is enabled for After-Image Management.
Error Message
Defect Number
Enhancement Number
Cause
Resolution
In principle, there should not be a concurrency conflict between the AIMGT deamon process and a manual ai archive .  Either the RFUTIL or the AIMGT deamon process 'gets there first' to find the list of FULL ai files and acquires a lock on these that blocks the 'other' process. In a similar fashion to when two "rfutil aiarchive" commands are run at the same time.

The "RFUTIL -C aiarchive nextextent",
  1. First determines if there are FULL extents.
  2. Then on finding "FULL" extents, RFUTIL triggers the AIMGT deamon to archive ai files to the current archivedir and empty these, otherwise it simply exits.
  3. Once emptied, these particular ai files are no longer candidates for archiving.
Note that ai files that are handled by the RFUTIL aiarchive nextextent actions, are also written to the aiarchival.log file, which shows that the same AIMGT deamon is being used under the covers by the manual archive command, as this is the only process that ever writes to this log file.

Since "rfutil -C aiarchive nextextent" resets the archive interval, this is never going to conflict with the AIMGT deamon running in Timed mode or on-demand mode.

Irrespective of the AIMGT mode (timed | on-demand) there's always 5 second 'wakeup' of the AIMGT deamon to find any FULL extents to archive/empty, so use of the manual "RFUTIL -C aiarchive nextextent" is not something that would ever need to be used under normal circumstances.
Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:21 AM

Powered by