Andreas Korneliussen wrote:
Mike Matrigali wrote:


<snip>


I would think there are multiple ways of adressing this issue:

1 We could make the store graciously handle the situation if the RowLocation points to a deleted+purged row, by returning false if the RowLocation is invalid, (and from the caller we can give an exception)


This may not be good option, because purged row location can potentially be used by an another insert from a different
transaction.



2 Or we could make all scrollable updatable resultsets set read-locks or updatelocks on every row, for all isolation levels (including read-uncommitted)

Sounds like a good idea.



3 Or we could make purging require a table level X lock, instead of row locks

No, this can lead to real concurrency issues, if application is doing lot of deletes in parallel to other operations.



Thanks
-suresht

Reply via email to