|
Btw, Alexander. May I ask you to specify at Transactions.htm
supported ODBC isolation levels and sorresponding transaction parameters, as in http://www.firebirdsql.org/dotnetfirebird/transaction-isolation-levels.html ? Some people complains that transaction parameters in 2.0.0.148 is not expected or correct, as in document for .Net driver and in .Net driver itself. Example: http://www.sql.ru/forum/actualthread.aspx?tid=843450 (locks on reading non-committed data) At first, none levels must have WAIT default option - everywhere must be NO WAIT, and WAIT must be optional. Second, ReadCommitted isolation mode must have isc_dpb_rec_version option, not no_rec_version. The problem is that driver developers seems that do not use their driver to develop software (do not use driver), and that's because transaction parameters are specified wrong way, than in other drivers or in direct access components like FIBPlus, IBX, etc. I have looked at the russian Transactions.htm, what is problem with current version?
Transaction parameters for ReadCommitted are fixed in 2.0.0.150. I think there must be list of odbc isolation levels with corresponding Firebird transaction parameters. As in example document of .net driver.
Because people using odbc for connecting applications that will never specify Firebird transactions parameters directly. Like this: ODBC Firebird READ_UNCOMMITTED - read committed, no rec version, no wait (this will give deadlock error on reading uncommitted data) READ_COMMITTED - read committed, rec version, no wait REPEATABLE_READ - concurrency, no wait SERIALIZABLE - consistency, no wait |
2) ODBC driver 2.0 uses read-committed/rec-version by default. I have replaced "NO RECORD_VERSION" to "RECORD_VERSION" in help.