I forgot to mention about one possible workaround which could mitigate
your pain. In the frontend instances, maybe you can get those small
entities with a newly created keys just after putting them in order to
apply the change locally.

This article describes this behavior well:
https://developers.google.com/appengine/articles/transaction_isolation

However, please note that
* It doesn't guarantee 100% 'strong consistency'.
* The latency of submitting scores will become larger.
* Definitely it will cost you more.

Sorry if this doesn't work well for you, but I think it's worth trying.

-- Takashi

On Wed, Aug 1, 2012 at 11:30 PM, Takashi Matsuo <[email protected]> wrote:
> Hi Richard,
>
> I actually played your game and probably encountered the exact issue.
> BTW, it's a cool addictive game.
>
> I agree that eventually consistent window should ideally be more
> steady than now. I have passed your issue to the engineering team.
>
> I'll get back to you when I have some updates.
>
> -- Takashi
>
> On Wed, Aug 1, 2012 at 10:37 PM, Richard <[email protected]> wrote:
>> The thing is.... GAE does a wonderful job.  It has been fine for a year or
>> so.  Now suddenly, we are getting bitten by 'eventual consistency'.  And not
>> at peak load either!  This is hitting us at the lowest load time and at the
>> same time each day.
>>
>> So, maybe we were just lucky before this..... but it still sucks to have
>> something work for a year or so, and then suddenly find out you might need
>> to consider moving to a different stack.
>>
>>
>> On Wednesday, August 1, 2012 7:14:19 AM UTC-4, Richard Watson wrote:
>>>
>>> On Wed, Aug 1, 2012 at 12:13 PM, Jeff Schnitzer <[email protected]>
>>> wrote:
>>>
>>> > Anything that involves batching in a frontend risks orphaning data in
>>> > the frontend... there's just no efective way to ensure that batching
>>> > happens and that the queue is purged when "done".
>>>
>>> It's definitely not bulletproof, but I'd investigate whether I could
>>> achieve "good enough" for 99% and be happy that for the rest the
>>> client could re-request the score if it didn't reflect their own
>>> correct value.
>>>
>>> As you say, if clients can connect directly to some other more
>>> reliable service, maybe that's the way to go.  Mixing platforms (GAE
>>> url fetch to Amazon SQS, or whatever) would leave me worrying about
>>> extra points of failure - you'll now fail if either GAE or
>>> Amazon/Heroku go down.
>>>
>>> Pity.  I would imaging a back-end for a game with hundreds of users is
>>> something GAE should eat up.
>>>
>>> Richard
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Google App Engine" group.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msg/google-appengine/-/MpsNezxGjpkJ.
>>
>> 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?hl=en.
>
>
>
> --
> Takashi Matsuo



-- 
Takashi Matsuo

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" 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?hl=en.

Reply via email to