title: Lock while Oracle constraints are enabled with VALIDATE?
body: <p>Is there a lock:</p>
  
  <ol>
  <li>While the constraint is being changed from <em>disabled</em> to <em>enabled</em>? </li>
  <li>And while it is being changed from <em>novalidate</em> to <em>validate</em>?</li>
  </ol>
  
  <p><a href="http://docs.oracle.com/cd/B19306_01/server.102/b14200/clauses002.htm#i1010237" rel="nofollow">The documentation</a> says no lock:</p>
  
  <blockquote>
    <p>If you change the state of any single constraint from ENABLE
    NOVALIDATE to ENABLE VALIDATE, the operation can be performed in
    parallel, and does not block reads, writes, or other DDL operations.</p>
  </blockquote>
  
  <p>Here it says there is a lock:</p>
  
  <blockquote>
    <p>A constraint in a table is defined with the INITIALLY IMMEDIATE
    clause.  You executed the ALTER TABLE command with the ENABLE VALIDATE
    option to enable the constraint that was disabled. It prevents insert,
    update, and delete operations on the table while the constraint is in
    the process of being enabled.</p>
  </blockquote>