How to Debug ‘cluvfy” or “runcluvfy.sh”

Debug “cluvfy” or “runcluvfy.sh”:

$ rm -rf /tmp/cvutrace
$ mkdir /tmp/cvutrace
$ export CV_TRACELOC=/tmp/cvutrace
$ export SRVM_TRACE=true
$ export SRVM_TRACE_LEVEL=1

$ cluvfy stage -pre dbinst -allnodes -r 12.2 -d /u01/app/oracle/product/12.2.0/dbhome_1

$ ls -ltr /tmp/cvutrace
total 1960
-rw-r--r-- 1 grid oinstall 0 Sep 8 21:46 cvutrace.log.0.lck
-rw-r--r-- 1 grid oinstall 0 Sep 8 21:47 cvuhelper.log.0.lck
-rw-r--r-- 1 grid oinstall 1586 Sep 8 21:47 cvuhelper.log.0
-rw-r--r-- 1 grid oinstall 2000962 Sep 8 21:47 cvutrace.log.0

Oracle Golden Gate Missing Archive Log Files

OGG extract process is abended due to the missing archive logs as showing in GG error log:

2023-01-21T01:19:23.197+1100  ERROR   OGG-01028  Oracle GoldenGate Capture for Oracle, CAP01.prm:  Could not find archived log for sequence 99 thread 2 under default destinations SQL <SELECT  name   FROM v$archived_log   WHERE sequence# = :1 AND         thread# = :2 AND         resetlogs_id = :3 AND         archived = 'YES' AND         deleted = 'NO'         AND standby_dest = 'NO'         order by name DESC>, error retrieving redo file name for sequence 99, archived = 1, use_alternate = 0.

You can restore the missing archive logs using RMAN from tape backup if they are still available, then restart the extract process.

Otherwise we have to skip the archive log, certainly the data might be missed due to skipping the log files. In this case, let OGG to skip logfile by issuing following command:

GGSCI >ALTER EXTRACT CAP01, extseqno 100

Sometimes we can skip the transactions based on date and time, like :

GGSCI> ALTER EXTRACT CAP01 BEGIN 2024-02-24 15:00

ERROR OGG-01172 Discard file (/home/oracle/ggs/dirrpt/REP01.dsc) exceeded max bytes (3000000)

The replicate process ABENDING due to the following errors exist in replicate process report:

ERROR   OGG-01172  Discard file (/home/oracle/ggs/dirrpt/REP01.dsc) exceeded max bytes (3000000).

SOLUTION

Increase the discardfile maximum size in replicate parameter file from default 3M to 100M:

discardfile /home/oracle/ggs/dirrpt/REP01.dsc, purge, megabytes 100

OGG-00901 Failed to lookup object ID

When starting up OGG extract with the following error in ggserr.log :

ERROR OGG-00901 Failed to lookup object ID for table GG.D7A_GGS_TRACE
ERROR OGG-01668 Oracle GoldenGate Capture for Oracle,CAP.prm:PROCESS ABENDING

Check the parameter file of capture with one line:

tractable GG.D7A_GGS_TRACE

SOLUTION

Manually create trace table as required.

GGSCI>info credentialstore
GGSCI> DBLOGIN USERIDALIAS gg
or
GGSCI>DBLOGIN USERID gg, PASSWORD passwd
GGSCI> INFO TRACETABLE
GGSCI> add tracetable GG.D7A_GGS_TRACE
GGSCI> INFO TRACETABLE
GGSCI>
SQL> desc GG.D7A_GGS_TRACE
Name Null? Type
----------------------------------------- -------- -------------------
GROUP_ID NOT NULL VARCHAR2(8)
DB_USER VARCHAR2(30)
LAST_UPDATE DATE

Add default CHECKPOINTTABLE:

GGSCI> INFO TRACETABLE
GGSCI> ADD CHECKPOINTTABLE
GGSCI> info CHECKPOINTTABLE
SQL> select table_name from dba_tables where owner='GG';

TABLE_NAME
------------------------------
GGS_CHECKPOINT
GGS_CHECKPOINT_LOX
D7A_GGS_TRACE