Skip to content

Troubleshooting

Following logs will help to diagnose dSource/VDB issues related to this plugin.

OBI dSource log files

  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/dlpx_oh_versions.txt
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log.0
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log.1
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log.n [ n = 0..9 ]
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/< DSOURCE_NAME >/* –All logs related to this dsource are generated here
  • < dSource_mount_point >/< db_name >/config.txt
  • < dSource_mount_point >/< db_name >/last_*.txt

OBI VDB log files

  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/dlpx_oh_versions.txt
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log.0
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log.1
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/delphix_obi_debug.log.n [ n = 0..9 ]
  • /DELPHIX_TOOLKIT_FOLDER/obi/<8_CHAR_FOLDER>/< VDB_NAME >/* –All logs related to this VDB are generated here
  • < vdb_mount_point >/< db_name >/config.txt
  • < vdb_mount_point >/< db_name >/last_*.txt

Retain OBI logs

By default OBI purge logs after successful deployment. If logs are needed for any troubleshooting, it can be retained by creating a flag file name obidebug.txt under <DELPHIX_TOOLKIT_DIR>/obi

Troubleshooting Queries

Find backup details

SELECT To_char(start_time, 'dd-mon-yyyy hh24:mi:ss') START_TIME,
       To_char(end_time, 'dd-mon-yyyy hh24:mi:ss')   END_TIME,
       input_type,
       status
FROM   v$rman_backup_job_details
WHERE  input_type IN ( 'DB FULL', 'DB INCR' )
ORDER  BY start_time; 

Find Full/Incr backup info

SELECT mycol
FROM   (SELECT Max(end_time) DUMMYCOL,
               To_char(Max(end_time), 'dd-mon-yyyy hh24:mi:ss')
               || '|'
               || input_type AS MYCOL
        FROM   v$rman_backup_job_details
        WHERE  input_type IN ( 'DB FULL', 'DB INCR' )
               AND status IN ( 'COMPLETED', 'COMPLETED WITH WARNINGS' )
        GROUP  BY input_type
        ORDER  BY 1 DESC)
WHERE  ROWNUM = 1; 

Find Incr Level 0/1 backup info

SELECT To_char(Max(completion_time), 'dd-mon-yyyy hh24:mi:ss')
       ||'|'
       ||Decode(incremental_level, 0, 'DB FULL',
                                   'DB INCR') end_time
FROM   v$rman_backup_job_details A,
       v$backup_set_details B
WHERE  B.backup_type = 'I'
       AND A.status IN ( 'COMPLETED', 'COMPLETED WITH WARNINGS' )
       AND A.session_recid = B.session_recid
GROUP  BY completion_time,
          incremental_level; 
SELECT mycol
FROM   (SELECT Max(completion_time) DUMMYCOL,
               To_char(Max(completion_time), 'dd-mon-yyyy hh24:mi:ss')
               || '|'
               || Decode(incremental_level, 0, 'DB FULL',
                                            'DB INCR') AS MYCOL
        FROM   v$rman_backup_job_details A,
               v$backup_set_details B
        WHERE  B.backup_type = 'I'
               AND A.status IN ( 'COMPLETED', 'COMPLETED WITH WARNINGS' )
               AND A.session_recid = B.session_recid
        GROUP  BY incremental_level
        ORDER  BY 1 DESC)
WHERE  rownum = 1; 

Archivelog details

set lines 200 pages 200
SELECT thread#,
       sequence#,
       To_char(first_time, 'dd-mon-yyyy hh24:mi:ss') FIRST_TIME,
       first_change#,
       To_char(next_time, 'dd-mon-yyyy hh24:mi:ss')  NEXT_TIME,
       next_change#
FROM   v$archived_log
WHERE  sequence# IN ( 44, 45, 46, 47 ) -- Update sequence# as per requirements
ORDER  BY sequence#; 

Recovery Area Usage

set lines 300
COL name format a35 wrap
SELECT name,
       To_char(space_limit / 1024 / 1024, '999,999,999,999') AS SPACE_LIMIT_MB,
       To_char(( space_limit - space_used + space_reclaimable ) / 1024 / 1024,
       '999,999,999,999') AS SPACE_AVAILABLE_MB,
       Round(( space_used - space_reclaimable ) / space_limit * 100, 1) AS
                                PERCENT_FULL
FROM   v$recovery_file_dest; 

Know Issues and Solutions

Skip OBI Discovery:
Delphix engine can host multiple plugins. It may happen 1 delphix engine has more than 1 plugin. Some of the configured host may not have Oracle installed as they are configured for some other plugin. Delphix will run discovery on all hosts as soon as they are added to discover OBI related homes. If the storage attached is large to the host, it may take time for delphix to do complete discovery and find that there are no oracle installations.
Solution
To avoid discovery on such nodes create a file name setOBIenv under environment user’s home directory with following contents

export DLPX_ORAINSTLOC=SKIP_OBI_DISCOVERY

OMF not enabled for AWS RDS
OMF is disabled by default.
Solution

alter system set "_omf"=enabled scope=spfile
shutdown immediate
startup

Missing AWR views for AWS RDS VDB
VDB’s created from AWS RDS based backup may have missing Views.
Solution

@?/rdbms/admin/catawrtb.sql
@?/rdbms/admin/utlrp.sql

--On 11g and above
@?/rdbms/admin/execsvrm.sql
alter package dbms_swrf_internal compile;
alter package dbms_swrf_internal compile body;
@?/rdbms/admin/utlrp.sql
exec dbms_lock.sleep(300);

Source Repo: https://github.com/delphix/obi-plugin [ Internal Link ]