25.06.2014 13:13, Roman Simakov wrote: > Explain it to "strange developers" who start transaction and open > cursor at the begin of day in order to fetch at the end :) > > And one more about logic. Currently it's possible: > 1) We have a table X(c char) with 2 records {A, B} > 2) transaction T1 opens select * from X,X and fetch > A,A > A,B > B,A > B,B > 3) Transaction T2 inserts C into X and commit > 4) T1 continue fetchs > C,A > C,B > C,C > > right?
This is right only for those who set up READ COMMITTED transaction isolation level which is not default. > So cross join of X will return > A,A > A,B > B,A > B,B > C,A > C,B > C,C > > It's semantically incorrect and maybe considered as bug. Bug should > not be by default. And it isn't default now. You have to explicitly set different TIL to get such behavior. Default TIL (concurrency) works correctly. -- WBR, SD. ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel