title: SQL Server 2016 secondary often issued error 3456, how to prevent SQL database error 3456?
body: <blockquote>
    <p>Could not redo log record (410417:192254:28), for transaction ID (0:1838907632), on page (1:761914), allocation unit 72057594280869888, database '****' (database ID 5). Page: LSN = (410417:191949:3), allocation unit = 72057594280869888, type = 10. Log: OpCode = 7, context 10, PrevPageLSN: (410417:192254:26). Restore from a backup of the database, or repair the database.</p>
  </blockquote>
  
  <p>Version:</p>
  
  <pre><code>Microsoft SQL Server 2016 (SP2) (KB4052908) - 13.0.5026.0 (X64)   
  Mar 18 2018 09:11:49   
  Copyright (c) Microsoft Corporation  Enterprise Edition (64-bit) 
  on Windows Server 2016 Datacenter 10.0 &lt;X64&gt; (Build 14393) (Hypervisor)
  </code></pre>
  
  <p>The error 3456 often occurs in the <code>INSERT</code> operation after the <code>TRUNCATE</code> table.</p>
  
  <pre><code>SELECT * 
  FROM fn_dump_dblog ('410417:191949:3', '410417:192254:28', N'DISK', 1, N'E:\BackUp\dbname_2019_05_04_020310_6766368.trn',
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT,
      DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
   WHERE \[transaction ID\] ='0000:6d9b80f0'
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/e8426.png" alt="enter image description here"></p>