Chuck,

On 21. 2. 2015, at 20:09, Chuck Hill <ch...@gevityinc.com> wrote:
> I think it is a fair expectation that EOF may not properly support optimistic

pessimistic, I guess?

> locking.  I am not even sure how to set it up properly.  There are some 
> methods on EOEditingContext and EODatabaseContext, and one the 
> EODatabaseContext Delegate.

Thanks!

One closely related question -- I suppose there is no way to explicitly set up 
the isolation level and locking discipline for a particular transaction 
(differently from the default of the JDBC connexion URL)? Or is there one?

Thanks again and all the best,
OC

> On 2015-02-21, 3:42 AM, "OC" wrote:
> 
> Anyway, back to the original question --
> 
> On 20. 2. 2015, at 18:27, OC <o...@ocs.cz> wrote:
> Actually _this_ should not be weird, this should be quite a normal code; the 
> only requirement is that check-and-save, i.e., conceptually,
> ===
> if (TEST(eo.someRelationship().someAttribute(),newAttributeValue)) {
>   def 
> new=EOUtilities.createAndInsertInstance(eo.editingContext(),'SomeRelationshipTarget')
>   new.someAttribute=newAttributeValue
>   eo.editingContext().saveChanges()
> }
> ===
> so that I can be absolutely sure that nobody stores an attribute value which 
> -- at the moment of COMMITTing the appropriate INSERT -- would not pass the 
> TEST
> 
> I don’t think you can make a rock-solid guarantee from the app code level.
> Can't I? That's bad.
> 
> -- I have succeeded to consult with my client, and the option of „allowing to 
> save any bid, determine whether it was valid or not in future“ is out.
> 
> On the other hand, he again suggests pessimistic locking: „why don't we 
> simply lock the auction row when user reads the data to determine whether his 
> bid is valid, and unlock when he saves the valid bid or when he determines 
> the bid is not valid“?
> 
> I can see only one slight drawback -- unnecessary locks in case the bid 
> validation fails -- but that should be a negligible problem, most bid 
> attempts are valid (and _if_ they become invalid, then since other bid was 
> entered shortly before, which would lead to optimistic exception anyway).
> 
> Far as I understand though based on your
> 
> ===
> On 24. 1. 2015, at 0:12, Chuck Hill <ch...@gevityinc.com> wrote:
> I doubt that lockObject() code in EOF has been run in… maybe forever.  It is 
> highly possible that it is causing EOF to get confused and resulting in the 
> errors below.  Get rid of the lockObject() calls and see if the problem below 
> goes away.
> ===
> 
> I guess the proper answer is „Well we can't use pessimistic row locking at 
> all, since EOF does not support it reliably, and that's that.“
> 
> Is that right?
> 
> Thanks again,
> OC
> 
> 


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to