Hi there,

I  nearly  broke  my  head  around  some  mysterious  behaviour  of my
application, and right now I don't know if this is all natural and WAD
or maybe if there was a bug in 3.0.2 or maybe still is.

First  I'm gonna give a brief description and maybe one of the experts
here  can  tell  me  what  I am probably understanding wrong about how
FBProvider handles transactions.

1.)
Transaction  T1  saves  a  new  record  to  the database, then commits
(certified!).

2.)
T2 selects records from the database, but does not get the
recently saved record. T2 commits.

3.)
T3  is really doing the same as T2 (because I am only calling the very
same method!), but now the missing record is selected.

I am handling transactions like this:

  t = connXY.BeginTransaction();
  ...
  ...
  // do the stuff
  ...
  ...
  t.commit();
  t = null;

All transactions are using the same connection object.
Isolation   level   is   "read   committed";   using  all  the default
values.


I  would have expected T2 to select the record that has been committed
to the database by T1. And I am certainly surprised that simply "asking
the database again" will then yield the record.

T1 most definitely is committed. Of course I am using try/catch and in
addition I checked with other software using "read committed" and they
can already select the new record.


Where  is  my  misconception  in this story? I plan to implement a lot
more  "live"  updates  using  events  and  would like to get immediate
selecting of freshly inserted records working.


mit freundlichen Grüßen,

André Knappstein
EDV und Controlling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
beta Eigenheim- und Grundstücksverwertungsgesellschaft mbH
Hafenweg 4
59192 Bergkamen-Rünthe

Telefon: +49 2389 9240 140
Telefax: +49 2389 9240 150
e-mail:  knappst...@beta-eigenheim.de

Amtsgericht Hamm Nr. B 420
Geschäftsführer: Achim Krähling, Dirk Salewski und Matthias Steinhaus

USt-IDNr.: DE 125215402


------------------------------------------------------------------------------
Put Bad Developers to Shame
Dominate Development with Jenkins Continuous Integration
Continuously Automate Build, Test & Deployment 
Start a new project now. Try Jenkins in the cloud.
http://p.sf.net/sfu/13600_Cloudbees
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to