01.04.2011 11:51, Dimitry Sibiryakov wrote:

> I don't understand why this job is deferred. If DDL is impossible, user must 
> be informed
> about this fact ASAP.

In order to perform the validation, you have to lock the table from 
concurrent modifications. If it's done ASAP and the lock is then 
released, somebody may jump in and violate your check condition before 
you commit, thus leading to invalid metadata changes. And you surely 
don't want to keep the lock until your transaction ends (which may be 
minutes or hours). So we lock the table just before commit and validate 
the data that time.


Dmitry

------------------------------------------------------------------------------
Create and publish websites with WebMatrix
Use the most popular FREE web apps or write code yourself; 
WebMatrix provides all the features you need to develop and 
publish your website. http://p.sf.net/sfu/ms-webmatrix-sf
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to