Salesforce

Manual aiarchive extent offline fails errors 3773 5350 3774

« Go Back

Information

 
TitleManual aiarchive extent offline fails errors 3773 5350 3774
URL Nameaiarchive-extent-offline-fails-error-3773-000074619
Article Number000192995
EnvironmentProduct: OpenEdge
Version: 10.1B, 10.1C, 10.2x, 11.x
OS: All supported platforms
Question/Problem Description
When AI extents are all full, RFUTIL -C aiarchive extent fails offline because it goes through crash recovery as there are no available AI files to switch to in order to record bi Redo and Undo notes.
Database stalled due to no available EMPTY AI files (-aistall).
AIMGT deamon is running but not archiving.
Database was shutdown and AI flies could not be emptied with RFUTIL aiarchive extent errors 3773 5350 3774
Steps to Reproduce
Clarifying Information
More AI files could not be added due to defect PSC00212188 with 'prostrct reorder" Article: Replication was previously disabled with DSRUTIL online which could explain why Full ai extents were not being archived Article:
Error Message(451) Aiarchive extent session begin
(3773) Cannot switch to after-image extent <ai extent> it is full.
(5350) Database Server shutting down as a result of after-image extent switch failure
(3774) Backup after-image extent and mark it as empty.
(334) Aiarchive extent session end.
Defect NumberEnhancement PSC00351212
Enhancement Number
Cause
Unlike RFUTIL -C aimage empty, RFUTIL -C aiarchive extent or -C aiarchive nextextent go through crash recovery.
Resolution
This enhancement has not been implemented in the product.  As an alternative use the workaround below.
Workaround
Offline: Disable the AIMGT feature

1.   Disable the AIMGT Feature
$   proutil dbname -C aiarchiver disable
2.   OS Copy AI extents to the aiarchive directory (-aiarcdir)
3.   Empty all FULL AI extents
$   rfutil dbname -C aimage list | egrep -i "Status|Path"
Run the following command for each Full extent:
$   rfutil dbname -C aimage empty
4.     Re-enable the AIMGT Feature
$   rfutil dbname -C aiarchiver enable
5.   Verify that the archive directory (-aiarcdir) is accessible and has sufficient space available then restart the database

Online Option 1: Restart the AIMGT deamon

1.   Don't shut the database down when -aistall is in effect
2.   Verify that the archive directory (-aiarcdir) is accessible and has sufficient available space
3.   Restart the daemon (AIMD) which will then archive and empty all FULL extents releasing the stall after the first full ai file has been archived:

(12288) There are no available EMPTY AI extents.  Database activity is stalled until an AI extent becomes available. 
$   _mprshut dbname -C aimgt -aiarcdir .\ais1 -aiarcinterval 3600
(13194) The after-image manager is beginning.
(2518)  Started.  
(13199) After-image extent <ai extent> has been copied to <-aiarcdir>
(3789)  Marked after-image extent <ai extent> EMPTY.                       

(12289) Database activity is no longer stalled and will continue normally. 

Online Option 2: Manually archive FULL extents

IF the deamon fails for whatever reason, manually archive FULL ai extents

1.   Take a list of all current FULL AI extents:
$   rfutil dbname -C aimage list | egrep -i "Status|Path"

2.   Manually archive each FULL AI extent ensuring the destination is accessible and has sufficient space
$   rfutil dbname -C aiarchive extent <path>/<dbname>.a1 <FULL/ARCHIVEPATH>/<dbname>.a1

3.   Verify the current AI extent status. All FULL extents will be marked EMPTY after being manually archived
$   rfutil <dbname> -C aimage list | egrep -i "Status|Path"

4.  Disable AIMGT and Re-enable it online (10.1B+)
$   rfutil dbname -C aiarchiver disable
$   probkup online dbname dbname.bak enableaiarchiver -aiarcdir "<dir1>,<dir2>" [ -com -vs < $BKFILEVOLS ]
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:20 AM

Powered by