Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • chk_space_SID.ksh Linux/Unix
  • remove archfiles only when it is applied to DR rm_archfiles.sh Linux/Unix
  • purge_trc.sh Linux/Unix
  • tblwopk.sql /* Find Tables Without PK */ Oracle
  • runsql_once.ksh Linux/Unix
  • To see how much time or progress of long transaction Oracle
  • Roles and Stored Procs II Oracle
  • JSON/XML Types in Oracle Oracle
  • segment_wise_space.sql segspace.sql Segment wise space usage (allocated and used) Oracle
  • Good Doc 28-JUN-2006 Oracle
  • CPU speed on solaris Linux/Unix
  • Reading parameter file and printing Linux/Unix
  • Temporary Tablespsace Temp tablespace behaviour Oracle
  • handling filenname with space Linux/Unix
  • longtx.sql Oracle

Difference between SYNC and AFFIRM

Posted on 27-Jan-2010 By Admin No Comments on Difference between SYNC and AFFIRM

LGWR SYNC AFFIRM in Oracle Data Guard is used for zero data loss. How does one ensure zero data loss? Well, the redo block generated at the primary has to reach the standby across the network (that’s where the SYNC part comes in – i.e. it is a synchronous network call), and then the block has to be written on disk on the standby (that’s where the AFFIRM part comes in) – typically on a standby redo log.

Can you have LGWR SYNC NOAFFIRM? Yes sure. Then you will have synchronous network transport, but the only thing you are guaranteed is that the block has reached the remote standby’s memory. It has not been written on to disk yet. So not really a zero data loss solution (e.g. what if the standby instance crashes before the disk I/O).

To sum up -> LGWR SYNC AFFIRM means primary transaction commits are waiting for ntk I/O + disk I/O acks. LGWR SYNC NOAFFIRM means primary transaction commits are waiting for ntk I/O only.

Oracle, rman-dataguard

Post navigation

Previous Post: useful dg links
Next Post: oracle fast start failover best practice

Related Posts

  • How to know current SID Oracle
  • How to calculate PROCESSES parameter Oracle
  • Nice notes on wait events Oracle
  • TABLE SIZING WITH DB_BLOCK ARCHITECTURE Reference : Metalink note : 10640.1 Oracle
  • Oracle Recommended Patches — Oracle Database ID 756671.1 Oracle
  • Goog notes on X$ tables Oracle

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Categories

  • AWS (2)
  • Azure (1)
  • Linux/Unix (149)
  • Oracle (392)
  • PHP/MYSQL/Wordpress (10)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (17)
  • rman-dataguard (26)
  • shell (149)
  • SQL scripts (341)
  • Uncategorized (0)
  • Videos (0)

Recent Posts

  • load SPM baseline from cursor cache05-Jun-2025
  • Drop all SPM baselines for SQL handle05-Jun-2025
  • Load SPM baseline from AWR05-Jun-2025
  • Drop specific SQL plan baseline – spm05-Jun-2025
  • findinfo.sql (SQL for getting CPU and Active session info)27-May-2025
  • SQL Tracker by SID sqltrackerbysid.sql22-Apr-2025
  • How to connect to Oracle Database with Wallet with Python.21-Mar-2025
  • JSON/XML Types in Oracle18-Mar-2025
  • CPU Core related projections12-Mar-2025
  • Exadata Basics10-Dec-2024

Archives

  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • Generating XML from SQLPLUS Oracle
  • age_alert.ksh aging out alert.log Linux/Unix
  • Pending Transaction Neighbors Script Oracle
  • Adding Datafile on Primary Server and Impact on Standby Server Oracle
  • switchlogfile.sh Linux/Unix
  • CTAS with LONG Column for 7.x and 8 and 8i Oracle
  • oracle 10g on linux Linux/Unix
  • Example of How To Resize the Online Redo Logfiles Note:1035935.6 Oracle

Copyright © 2025 pvmehta.com.

Powered by PressBook News WordPress theme