Re: [Firebird-net-provider] Changing transaction isolation levels [huge break]

2012-09-26 Thread Zvjezdan Tomičević
I agree totally with 337.
ReadCommited should be
read committed record version no wait
I had troubles with nhibernate because of this, and used readUncommited as
a workaround.




On Mon, Sep 24, 2012 at 6:45 PM, Alexander Muylaert-Gelein 
amuylaert_gel...@hotmail.com wrote:

 Default should be the current read_uncommitted.

 I really spend a lot of time on asking people to check their
 connectionstrings.



 -Original Message-
 From: Jiri Cincura [mailto:disk...@cincura.net]
 Sent: maandag 24 september 2012 17:33
 To: For users and developers of the Firebird .NET providers
 Subject: Re: [Firebird-net-provider] Changing transaction isolation levels
 [huge break]

 So no other opinions?

 --
 Jiri {x2} Cincura (x2develop.com founder) http://blog.cincura.net/ |
 http://www.ID3renamer.com


 
 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and threat
 landscape has changed and how IT managers can respond. Discussions will
 include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 Firebird-net-provider mailing list
 Firebird-net-provider@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/firebird-net-provider



 --
 Live Security Virtual Conference
 Exclusive live event will cover all the ways today's security and
 threat landscape has changed and how IT managers can respond. Discussions
 will include endpoint security, mobile security and the latest in malware
 threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
 ___
 Firebird-net-provider mailing list
 Firebird-net-provider@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider


Re: [Firebird-net-provider] Changing transaction isolation levels [huge break]

2012-09-24 Thread Jiri Cincura
So no other opinions?

-- 
Jiri {x2} Cincura (x2develop.com founder)
http://blog.cincura.net/ | http://www.ID3renamer.com

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider


Re: [Firebird-net-provider] Changing transaction isolation levels [huge break]

2012-09-16 Thread Mark Rotteveel
On 16-9-2012 7:53, Jiri Cincura wrote:
 On Sat, Sep 15, 2012 at 5:24 PM, Michael Ludwig mil...@gmx.de wrote:
 so why try faking it?

 Because sometimes you're using some tools, designers, wizards. And who
 knows why they will ask for ReadUncommitted. And if you can't change
 it, you'll be stuck.

What does the specification say (if there is such a thing)? For example 
the JDBC specification says the following:
It is possible for a given JDBC driver to not support all four 
transaction isolation levels (not counting TRANSACTION_NONE). If a 
driver does not support the isolation level specified in an invocation 
of setTransactionIsolation, it is allowed to substitute a higher, more 
restrictive transaction isolation level. If a driver is unable
to substitute a higher transaction level, it throws an SQLException.

In other words: upgrading to a higher isolation level is allowed if you 
don't support the lower level, downgrading is an error (because users 
expecting a high level of isolation won't get the guarantees they want, 
while users expecting a lower level of isolation - usually - don't mind 
if they get a higher level.

So to me treating ReadUncommitted as if it is ReadCommitted would be ok.

Mark
-- 
Mark Rotteveel

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider


[Firebird-net-provider] Changing transaction isolation levels [huge break]

2012-09-15 Thread Jiri Cincura
Hi *,

recently I went across bugs and found DNET-337. Read it, think about it.

What my idea is, is to change ReadCommitted and ReadUncommitted to
have same [1] TPB and use rec_version [2].

[1] Because there's no uncommitted mode in Firebird and I think it's
better than throw an exception.
[2] Because of reasons mentioned in ticket.

What do you think? This will, for sure, be version 3.0 because it's
huge breaking change. As much as I don't like breaking changes, this
looks like one worth it. Of course, there will be huge screaming read
exclamation point everywhere around this version.

-- 
Jiri {x2} Cincura (x2develop.com founder)
http://blog.cincura.net/ | http://www.ID3renamer.com

--
How fast is your code?
3 out of 4 devs don\\\'t know how their code performs in production.
Find out how slow your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219672;13503038;z?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider


Re: [Firebird-net-provider] Changing transaction isolation levels [huge break]

2012-09-15 Thread Michael Ludwig
Jiri Cincura schrieb am 15.09.2012 um 13:40 (+0200):
 
 … I went across bugs and found DNET-337. Read it, think about it.

http://tracker.firebirdsql.org/browse/DNET-337

 What my idea is, is to change ReadCommitted and ReadUncommitted to
 have same [1] TPB and use rec_version [2].
 
 [1] Because there's no uncommitted mode in Firebird and I think it's
 better than throw an exception.
 [2] Because of reasons mentioned in ticket.
 
 What do you think?

A. ReadUncommitted

Firebird doesn't do ReadUncommitted, so raising an ArgumentException
when ReadUncommitted is requested would seem to make sense to me.
Falling back to ReadCommitted, on the other hand, would not be what
was requested. Firebird people clearly agree that Firebird doesn't
do ReadUncommitted, so why try faking it?

B. ReadCommitted

For ReadCommitted, I found this discussion from 12/2005, which the
ticket in question reads like an echo of:

firebird-devel - NO_REC_VERSION
http://firebird.1100200.n4.nabble.com/NO-REC-VERSION-td1109867.html

Looks like they didn't change the default of isc_tpb_no_rec_version in
the C API (see ApiGuide.pdf p.66) in order not to break existing code.

 This will, for sure, be version 3.0 because it's huge breaking change.
 As much as I don't like breaking changes, this looks like one worth
 it. Of course, there will be huge screaming read exclamation point
 everywhere around this version.

An argument in favour of changing ReadCommitted to default to
isc_tpb_rec_version would be that a couple knowledgeable people
say it has usability advantages and makes more sense that way.

An argument against it might be that it deviates from the C API.

As for me, first time I'm even hearing about the issue, so I don't
have an opinion on what's wrong or right for ReadCommitted in .NET.

Here's another related and probably relevant discussion (too tired to
read it now):

firebird-devel - ReadCommitted isolation mode in Firebird's drivers
http://firebird.1100200.n4.nabble.com/ReadCommitted-isolation-mode-in-Firebird-s-drivers-td2311647.html

Michael

--
How fast is your code?
3 out of 4 devs don\\\'t know how their code performs in production.
Find out how slow your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219672;13503038;z?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider


Re: [Firebird-net-provider] Changing transaction isolation levels [huge break]

2012-09-15 Thread Jiri Cincura
On Sat, Sep 15, 2012 at 5:24 PM, Michael Ludwig mil...@gmx.de wrote:
 so why try faking it?

Because sometimes you're using some tools, designers, wizards. And who
knows why they will ask for ReadUncommitted. And if you can't change
it, you'll be stuck.

-- 
Jiri {x2} Cincura (x2develop.com founder)
http://blog.cincura.net/ | http://www.ID3renamer.com

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider