Subject Re: [firebird-support] Re: TransIsolation
Author Walter Neumann
Thank you Alexander, for your help. But after many tests I believe, that it is
a dbExpress problem. In that table is a field configured as NUMERIC(9,2). If
it containes a value with 2 decimal digits, then comes the error message:
"Row not found or changed from an other user". This message leeds not in the
correct direction. For my understanding it seems, that dbExpress has problems
with NUMERIC-Fields, if they contains decimal digits.
Of corse, this should be discussed in a Delphi/Kylix-list. But did anyone know
this problem?

Walter

Am Dienstag, 22. Juli 2003 14:36 schrieb Alexander V.Nevsky:
> --- In firebird-support@yahoogroups.com, Walter Neumann <walter@b...>
>
> wrote:
> > TransIsolation: ReadCommitted.
> > If user b change a row and commit it, then can user a see the
>
> changed row.
>
> Walter, if user A fetched row after user's B commit - yes.
>
> > After them user a change the row and when he commit, he get the
>
> error, that
>
> > another user has changed the row.
>
> Seems your description is'nt correct - DML statements indicates lock
> conflict on execution, not on commit.
>
> > Why?
>
> Check user's A transaction is read_commited. Seems it is concurrency
> or user B still did'nt commited changes.
>
> > If user a read the row befor
>
> user b
>
> > has changed the row, then, of corse, he can not change.
>
> In read_commited he can, if user B already commited changes,
> regardless of read he row or not. In concurrency he can't if user B
> changed row after user A started transaction regardless of are changes
> made by user B commited or not.
>
> > But after
> > user b has
> > committed, it schould be possible.
>
> Yes.
>
> > Any idea?
>
> User A use concurrency or user B still did'nt commited.
>
> Best regards, Alexander.
>
>
>
> To unsubscribe from this group, send an email to:
> firebird-support-unsubscribe@yahoogroups.com
>
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/