Board index » delphi » Deadlock Update Conflicts

Deadlock Update Conflicts

Hi all,

    I'm using D5, IB6 and IBX 4.52.

    I've developed an app and now I'm testing it. To test the behavior
of concurrent access to the DB I run 2 clients A and B and try to update
the same record expecting an error message from the DB and a clean app.
evolution.

    I update the record with A and it works of course fine. But when I
try to update the record with B it seems hanged up until I close A. Then
an EIBException: deadlock update conflicts with current update' is
raised in B.

    The questions are 1) How can I avoid the hang up-like behavior in B?

                                2) How can I treat the exception to
cleanly continue running B?

    Now I'm not handling commits and rollbacks. If the problem is in
this direction, 3) How can I by code or automatically (I mean setting
properties in the OI)?

        Thank you in advance

            Elas Todorovich

 

Re:Deadlock Update Conflicts


Hi all,

    I'm using D5, IB6 and IBX 4.52.

    I've developed an app and now I'm testing it. To test the behavior
of concurrent access to the DB I run 2 clients A and B and try to update
the same record expecting an error message from the DB and a clean app.
evolution.

    I update the record with A and it works of course fine. But when I
try to update the record with B it seems hanged up until I close A. Then
an EIBException: deadlock update conflicts with current update' is
raised in B.

    The questions are 1) How can I avoid the hang up-like behavior in B?

                                2) How can I treat the exception to
cleanly continue running B?

    Now I'm not handling commits and rollbacks. If the problem is in
this direction, 3) How can I work with commits and rollbacks by code or
automatically (I mean setting properties in the OI)?

        Thank you in advance

            Elas Todorovich

Re:Deadlock Update Conflicts


1. Commit transactions as soon as posible.
2. Use "read commited no wait" transactions for data entry forms.

--
Sergio Samayoa
Lgica Software
http://www.geocities.com/logicasw/

Re:Deadlock Update Conflicts


where are these properties?\

Quote
"Sergio Samayoa" <serg...@terra.com.gt> wrote in message

news:3b1e8646$1_1@dnews...
Quote
> 1. Commit transactions as soon as posible.
> 2. Use "read commited no wait" transactions for data entry forms.

> --
> Sergio Samayoa
> Lgica Software
> http://www.geocities.com/logicasw/

Re:Deadlock Update Conflicts


Quote
Aristide Triantafillakis wrote:

> where are these properties?\

Double click the IBTransaction component to get the component editor.  The
Transaction level is stored in the params property.

Quote
> "Sergio Samayoa" <serg...@terra.com.gt> wrote in message
> news:3b1e8646$1_1@dnews...
> > 1. Commit transactions as soon as posible.
> > 2. Use "read commited no wait" transactions for data entry forms.

--
Jeff Overcash (TeamB)
      (Please do not email me directly unless  asked. Thank You)
Anyone who cannot cope with mathematics is not fully human.
At best he is a tolerable subhuman who has learned to wear
shoes, bathe and not make messes in the house.   (Heinlein)

Other Threads