Re: JDBC transaction isolation
Richard Maher wrote:
Arne Vajh=F8j wrote ...
Almost all database have it at the SQL level:
http://dev.mysql.com/doc/refman/5.5/en/set-transaction.html
http://www.postgresql.org/docs/9.1/static/sql-set-transaction.html and=
http://www.postgresql.org/docs/9.1/static/transaction-iso.html
http://msdn.microsoft.com/en-us/library/ms173763.aspx
http://docs.oracle.com/cd/B10500_01/server.920/a96524/c21cnsis.htm
Is anyone else of the opinion that Oracle really does not support the
serializable isolation level? (At least not in the way that SQL Server, R=
db,
Are you referring to their database product or some other product, such as =
Java?
and I'm sure others do) That is, it doesn't prevent inserts to the other=
txn's result-set,touched-rows by locking but rather fudges some sort of=
snapshot/consistent-view of old data. (And even then with restrictions)=
Eg: - select count(*) from employees where dept_code=1;
They do support SERIALIZABLE isolation, and properly by all evidence:
<http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_10005.htm=
#SQLRF01705>
"ISOLATION LEVEL Clause
"Use the ISOLATION LEVEL clause to specify how transactions containing data=
base
modifications are handled.
"The SERIALIZABLE setting specifies serializable transaction isolation mode=
as defined in the
SQL standard. If a serializable transaction contains data manipulation lang=
uage (DML) that
attempts to update any resource that may have been updated in a transaction=
uncommitted at
the start of the serializable transaction, then the DML statement fails."
See also
<http://docs.oracle.com/cd/E11882_01/server.112/e25789/consist.htm#BABEAFAH=
There's nothing in the definition of SERIALIZABLE transactions that require=
s locking.
<http://en.wikipedia.org/wiki/Isolation_(database_systems)#Serializable>
So whatever anyone else's opinion, or yours, the facts seem to be that Orac=
le Database properly supports SERIALIZABLE transaction isolation. Why do yo=
u ask for opinion when facts are in evidence?
--
Lew