Hi,

Your your way of rolling back: yes, second task and infinity for limit
and that should do it.

My only worry was about the semantics: some operations can't be rolled
back as easily as a subtraction if you just made an add. If your
calculations are more complex it may some time be hard to roll back.
The other possible issue if is a another data in another entity group
has been modified based on your first operation when the second fails.
You may not know it and then be unable to roll it back also...

As said, it's all a question of appl semantics: if semantics is
simple, then fine. If not, the double transaction trick may not be
enough.

cheers

didier

On Jan 20, 9:29 pm, "ss.require" <[email protected]> wrote:
> First of all, thanks very much for quick and reasonable replys!
>
> --What is not guaranteed though is a rollback on the
> --1st update if the second fails or can't happen
> But it is guaranteed that the 2nd update can be rolled forward once to
> infinity or the 1st update can be rolled back(probably via a 3rd task)
> once to infinity. To accomplish that we should configure the queue to
> retry every e.g. 20 sec. and retring will continue to infinity unless
> the task is fulfiled. From this perspective my use case can be
> considered consistent for the duration of infinity. Am I right?
>
> --You have to use distributed transaction as described in
> --http://blog.notdot.net/2009/9/Distributed-Transactions-on-App-Engine
> Actually the approach in this article is the same as Didier described
> except we should manually controll rolling forward(back) in our code.
> So it is better to use Didier's method because every method doesn't
> have any advantages over other but Didier's method is more easy to
> implement. Am I right?
>
> Anyway, these methods don't guarante real transactional consistency.
> And as far I understand there is not any other real transactional
> solution. Am I right?

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to