title: ORA 30926 - Unable to get stable set of rows in source tables
body: <p>I recently encountered a Strange issue on Merge statement. It failed with <em>ORA 30926 error</em>. </p>
  
  <p>I have already checked for the below pitfalls,</p>
  
  <ol>
  <li>Duplicate records check in Source and Target table – Came out clean</li>
  <li>Source and Target tables Analyze structure – Came out clean</li>
  <li>Source and Target tables Indexes Analyze structure – Came out clean</li>
  <li>Same Merge SQL when DBA tried in SYS user – Worked. Still Puzzling</li>
  <li>Same Merge SQL runs successfully in Copy table of Target – Worked. Still Puzzling</li>
  <li>DBA Bounced the TEST server. Though not convincing wanted to give a try as the issue appears to be strange – Didn’t Workout</li>
  <li>Gathered the statistics</li>
  <li>Truncate the Original target table and reload from Copy table and try the Merge again - Didn't Workout. Failed with same error</li>
  </ol>
  
  <p>Nutshell Script:</p>
  
  <pre><code>MERGE INTO TGT_SCHEMA.EMP T 
  USING SRC_SCHEMA.S_EMP S 
  ON 
  (
  T.EMPLOYEE_NO = S.EMPLOYEE_NO AND
  T.START_DATE = S.START_DATE
  )
  </code></pre>
  
  <p>Unique Index (<code>EMPLOYEE_NO, START_DATE</code>) exists on Target table and a normal Index of same combination exists on Source table. Target table is a partitioned table and there are some VPD policies applied to other columns. </p>
  
  <p>My Database version : <strong>Oracle 11.2.0.3.0</strong></p>