On Mon, 28 Jul 2003, Fernando Nasser wrote:
> Darin Ohashi wrote:
> >>As I've mention before they _are_ supported and as _per standard_.
> >>The standard allows implementations to provide a higher
> >>isolation level
> >>in place of any lower level that is not implemented.
> >>
> >
> >
> > With 7.3.3, if you try to set the isolation level to
> > TRANSACTION_READ_UNCOMMITTED or TRANSACTION_REPEATABLE_READ an exception is
> > raised. For these levels to be supported shouldn't the driver accept them and
> > set the actual level to the higher one?
> >
>
> Yes, the JDBC standard assumes the SQL standard, so to be JDBC compliant
> one is assumed to be SQL compliant as well.
>
> We could do this in the driver to make it for the older backends (we are
> going to support 7.3 and 7.2 in the 74 driver still). On the other
> hand, people using 7.3 backends have other non-SQL compliances that we
> cannot mask with the driver, so I wonder if this is worthy of the extra
> if statement. But that is for Barry and Dave to decide, if someone
> submits a patch.
>
Well, considering that DatabaseMetaData has a
supportsTransactionIsolationLevel method I don't believe
setTransationIsolation should ever be called with a value the driver does
not claim to support. This seems to solve the poster's original problem
and allows the client to make the isolation level escaltion decision
instead of the server.
Kris Jurka