Subject | RE: [IBO] Suggestions Please |
---|---|
Author | Jason Wharton |
Post date | 2005-04-30T16:22:04Z |
Using a customized TPB (transaction parameter block) you can specifically
reserve a TABLE with tiConsistency isolation. This insures nothing else
will compete in both reading and writing. If you lose your connection while
in this transaction the server will roll it back at some point along with
its normal handling of failed clients. Of course your applications are
going to need to be designed so that they only lightly touch the database
(meaning something like a cached updates model) in spurts and all operations
will need to either perform their own consistency checks if operations need
to span some time (typical of cached updates model).
Reason for this is when you want to use this isolation you don't want to
bump into active users because the transaction will fail to start if they
have transactions open on the table you want to reserve.
HTH,
Jason Wharton
reserve a TABLE with tiConsistency isolation. This insures nothing else
will compete in both reading and writing. If you lose your connection while
in this transaction the server will roll it back at some point along with
its normal handling of failed clients. Of course your applications are
going to need to be designed so that they only lightly touch the database
(meaning something like a cached updates model) in spurts and all operations
will need to either perform their own consistency checks if operations need
to span some time (typical of cached updates model).
Reason for this is when you want to use this isolation you don't want to
bump into active users because the transaction will fail to start if they
have transactions open on the table you want to reserve.
HTH,
Jason Wharton
> -----Original Message-----
> From: IBObjects@yahoogroups.com [mailto:IBObjects@yahoogroups.com]On
> Behalf Of Matt Nielsen
> Sent: Thursday, April 28, 2005 3:10 PM
> To: IBObjects@yahoogroups.com
> Subject: [IBO] Suggestions Please
>
>
> I have an application that needs to prevent a user from performing an
> action until all other users are out of a specific table. I
> can think
> of several ways to accomplish this but not of which is resistant to
> abnormal database disconnects. I would appreciate any suggestions.
>
> Example:
>
> User A, B, C are entering payroll numbers for the month.
>
> User D processes those number, but as a failsafe the system needs to
> make sure that users A, B, C are not still entering numbers into the
> table that User D is going to process. I don't want to prevent users
> A, B, C from entering number but I want to tell user D that they are
> still doing so.
>
> Thanks,
>
> Matt