Skip to main content

Multiple Snapshots Showing Same Timestamp (KBA6748)




KBA# 6748



When reviewing snapshots in GUI or CLI, multiple snapshots may show with the same timestamp



Applicable Delphix Versions

Click here to view the versions of the Delphix engine to which this article applies
Major Release All Sub Releases




5.0,,,,,,,,, ,,,,,


4.2,,,,,,, ,,



This issue can occur in the following condition:

  • dSource is a standby database in real time apply mode
  • No log switch has taken place between snapshots

When the Delphix Engine takes a SnapSync it ideally needs a log switch to be performed at the end of the SnapSync to allow for accurate mapping of Oracle SCNs to timestamps. When the dSource is a standby in real time apply mode this cannot be done automatically by the Delphix Engine, as such Delphix must selected the best safe timestamp to use, which is the start time of the current redo log.

If multiple SnapSyncs are performed without a log switch, then they will all use the same start time of the current redo log as their LATESTCHANGEPOINT.TIMESTAMP, resulting in the duplicate snapshots.


To resolve this issue, we must ensure that a log switch is performed after ( or before or both ) every SnapSync, this can be done by creating a script which forces a log switch on your primary database server, which will cascade to the standby.

An example of how this could be done is below. The exact method of forcing a log switch is not important, only that it is done.


1. Create script on primary server to switch the logfile

export ORACLE_HOME=/u01/app/oracle/product/
$ORACLE_HOME/bin/sqlplus / as sysdba << EOF
alter system switch logfile;

2. Ensure ssh-keys between primary and standby are configured.

3. Configure Post Sync hook to call the remote script.


Known issues

While this solution will ensure a log switch is performed after each snapshot, the hook script will run after Delphix waits 5 minutes for the log to be automatically archived. If the log is not archived in this time a fault will be generated. A more complete workaround could make use of the api to query the snapshot job until it reaches the "" state, and then perform the snapsync. This would need to be run as a Pre Sync hook in the background.



Related Articles

The following articles may provide more information or related information to this article: