Subject | Re: [firebird-support] Another questions about transactions |
---|---|
Author | Ann Harrison |
Post date | 2013-01-07T03:54:08Z |
On Sun, Jan 6, 2013 at 7:34 PM, W O
<sistemas2000profesional@...>wrote:Hello everybody
- Transaction 535 start
changes made by 526. In any event the most recent version was created by a
transaction concurrent with 535, thus not updateable by 535.
- Transaction 526 commit
than an ordinary select, allowing 535 to see updates made by a concurrent
transaction that is now committed, so if 535 added 10 to the current value,
it would consider the change made by 526. Not Firebird. In Firebird, if
the result was not committed before the updating transaction started, the
update fails.
row is to end that transaction and start a new one.
Good Luck,
Ann
[Non-text portions of this message have been removed]
<sistemas2000profesional@...>wrote:Hello everybody
>OK, most recent version by transaction 510, committed.
> - Transaction 510 inserts a new row
> - Transaction 510 commit
>
> - Transaction 526 startOK, most recent version by 526, not committed.
> - Transaction 526 updates the row inserted by transaction 510
>
- Transaction 535 start
> - Transaction 535 wants to update the row inserted by transaction 510 butRight. In the default (concurrency or snapshot mode) 535 can not see
> unsuccesfully because transaction 526 has locked it
>
changes made by 526. In any event the most recent version was created by a
transaction concurrent with 535, thus not updateable by 535.
- Transaction 526 commit
>No.
> Can now transaction 535 update the row inserted by transaction 510?
> In thisIn some other MVCC systems, a select for update gets a different result
> case, updates makes for transaction 526 will be lost, right?
>
than an ordinary select, allowing 535 to see updates made by a concurrent
transaction that is now committed, so if 535 added 10 to the current value,
it would consider the change made by 526. Not Firebird. In Firebird, if
the result was not committed before the updating transaction started, the
update fails.
> Or transaction 535 should first to read the new row commited (the 526)Not in Firebird. The only way the connection that runs 535 can update that
> before making the update?
>
row is to end that transaction and start a new one.
Good Luck,
Ann
[Non-text portions of this message have been removed]