Resolving ORA-19588: archived log recid stamp is no longer valid

ORA-19588: archived log recid 14859 stamp 747949646 is no longer valid

channel dev_0: starting archive log backupset
released channel: dev_0
RMAN-00571: ===============================================
RMAN-00569: ============ ERROR MESSAGE STACK FOLLOWS =====
RMAN-00571: ===============================================
RMAN-03009: failure of backup command on dev_0 channel at 05/20/2015 07:22:55
ORA-19588: archived log recid 14859 stamp 747949646 is no longer valid

ORA-19588: archived log stamp is not longer valid

There are few possible causes for ORA-19588

———————————————————————–
  • Archive logfile which this process is trying to take backup, is already been backed up by another process and file is deleted.
  • Invalid or deleted records in the controlfile. 

This situation occur if both archive backup job and full database backup (including archives) are executing at the same time or two archive backup jobs executing at same time.

Look at the below command
—————————————

RMAN> backup archivelog all archivelog until time 'sysdate -1' delete input ; 

             
The backup command being used is correct by ‘syntax’, however incorrect by ‘logic’ because RMAN will try to backup some archivelogs (archivelogs which completed till ‘sysdate-1’)  twice in the same command:

Here both jobs are trying to backup and delete the SAME archivelog set, one of which failed eventually as the other job had already backed up and deleted the log.

If we don’t specify ‘DELETE INPUT’, the command will be succeeded, however, backup twice (ful archivelog and completed one day before) doesn’t seem to be the intention of above command.

SOLUTION
———————–
Run the below command to synchronize the controlfile with the current status of the backup-related information.

RMAN> crosscheck archivelog all;


No concurrent RMAN backups
—————————————–
Make sure that concurrent backups of the archivelogs of the SAME database are not run. You can find it using the below command.

$ ps -ef | grep rman

Don’t schedule archive backup job during full database backup (including archivelog). Always make sure you have only one RMAN backup in process.

Useful Commands

If we want to take backup of all archivelogs, then:
——————————————————————

RMAN> backup archivelog all delete input ;

If we want to take backup of all archivelogs until time ‘sysdate -1’, then:
——————————————————————————————–

RMAN> backup archivelog until time 'sysdate -1' delete input ;

Note
ORA-19588 may be seen with ‘datafile copy’ as well
like:
.
RMAN-03009: failure of backup command on ch01 channel at 02/01/2013 21:30:59
ORA-19588: datafile copy RECID 1019958 STAMP 806188828 is no longer valid