The archiver process received an error while trying to archive the redo logfile. Due to this issue oracle database will stop executing the transaction. So we have to check the archive destination because most likely cause of this error is the destination device is out of space to store the archived logfile.
$ adpatch
FAILED: file xla_ae_lines.xdf on worker 1.
Index XLA_AE_LINES_N1 matches exactly with the XDF definition.
Index XLA_AE_LINES_N4 matches exactly with the XDF definition.
Index XLA_AE_LINES_U1 matches exactly with the XDF definition.
Index XLA_AE_LINES_N5 does not exist in XLA.
CREATE INDEX "XLA"."XLA_AE_LINES_N5" ON "XLA"."XLA_AE_LINES" ("CODE_COMBINATION_ID", "LEDGER_ID", "ACCOUNTING_DATE")
PCTFREE 10 INITRANS 11 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 16384 NEXT 131072 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 4 FREELIST GROUPS 4 BUFFER_POOL DEFAULT)
TABLESPACE "APPS_TS_TX_IDX"
PARALLEL NOLOGGING
ALTER INDEX XLA."XLA_AE_LINES_N5" NOPARALLEL LOGGING
Start time for statement above is Tue Jul 21 18:09:31 IST 2020
Start time for statement above is Tue Jul 21 18:21:15 IST 2020
ORA-12801 error occured during Index creation.
==========================================================
Done calling the utility function. Return Code = [1] TimeStamp = [Tue Jul 21 18:21:15 IST 2020]
Updating task with status 1
AD Worker error:
The utility FndXdfCmp returned error for the above task.
AD Worker error:
The above program failed. See the error messages listed
above, if any, or see the log and output files for the program.
Check the existing archivelog destination size.
SQL> show parameter DB_RECOVERY_FILE_DEST_SIZE
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size big integer 20
There are two ways to resolve the 'oracle ora 00257 archiver error' issue.
1> Increase the size of db_recovery_file_dest_size.
2> remove the old or expired archivelog which was already backuped.
1> Increase the size of db_recovery_file_dest_size.
We can increase the size of db_recovery_file_dest_size as below.
SQL>alter system set db_recovery_file_dest_size=30g scope=spfile;
SQL> show parameter db_recovery_file_dest_size;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size big integer 30
2> remove the old or expired archivelog which was already backuped.
To delete the the archivelog file , if you have backup or no longer necessary.
RMAN> delete archivelog until time 'SYSDATE-1';
or
RMAN> delete expired archivelog all;
RMAN> delete archivelog all;
In last manually switch the logfile.
SQL> alter system switch logfile;
System altered.;
No comments:
Post a Comment
Thanks for reading till end. I hope this will help you more to improve your knowledge.
Now it's your turn!
What do you think? Share your experience in the comments box and subscribe for more interesting post.