All,

On 06/23/2014 03:26 PM, Dmitry Yemanov wrote:
> 23.06.2014 23:15, Leyne, Sean wrote:
>> Actually, without the new behaviour, the engine results are not guaranteed 
>> to be correct.
> But the point is that their "correctness" depends on the application
> logic. Lots of applications using RC RO transactions will never be
> affected by the cursor stability issue. But they will be paying the cost.

It is hard to call internally inconsistent result "correct". Just imagine you 
perform a SELECT query 
with a few left joins, or EXISTS clause.

Some records for a join can be read before a transaction is committed, and some 
after. Same with 
EXISTS.
It can see different set of commits from the one when main row was read.
You can see partial commits in results, even inside a single row returned by 
the query.
Nobody is ready for this, this is CRAZY, nobody expects this. If this data is 
used for any remotely 
important purpose, you will get whammed.
The fact that inconsistency shows up infrequently, under parallel load and is 
not easily 
reproducible, sets you up to be eventually burned.
And once burned you will hesitate to trust DMBS that behaves in such ways.

This is not normal. This is a BUG.


Nikolay


------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to