I'm now hitting TONS of "over quota" errors, and I wasn't before.

This is really hurting my revenue today.

http://www.careercup.com

On Nov 13, 11:09 am, "Brett (Google)" <[EMAIL PROTECTED]>
wrote:
> Hi Gee,
>
> Definitely understood that there's been quite a bit of trouble the
> last two days, especially for you and a few other apps. We're sorry
> you guys have been hurting from this. I can imagine it's especially
> frustrating for a growing service.
>
> In the specific case of this memcache maintenance, the fail-fast issue
> lead to high CPU and response time problems for applications that rely
> heavily on memcache. We're working to resolve this fail-fast issue so
> it will not happen again. We also came up with an interim solution
> that will prevent this problem from happening during future memcache
> maintenances.
>
> Otherwise, I understand the pain you're feeling here, and relaxing
> response times and CPU times would be one way to alleviate that. Our
> team is working hard to improve this in general. Feel free to email
> Pete, Paul, or me if you have any more questions.
>
> The good news is that memcache is now back up and serving. Please let
> us know if you encounter any more issues!
>
> -Brett
>
> On Nov 13, 10:50 am, gee <[EMAIL PROTECTED]> wrote:
>
> > Hi Brett,
>
> > During this time, it would have been very extremely helpful if CPU/
> > response time quotas were relaxed.
>
> > All our cache misses are adding up, and we're now over quota.
>
> > We've had significant downtime over the last two days due to the
> > scheduled downtimes going awry (our app was one of those taken down
> > unexpectedly Tuesday night), and it's definitely hurting our users'
> > experience with our growing service.  Any help would be much
> > appreciated.
>
> > Thanks
> > Gee
>
> > On Nov 13, 10:30 am, "Brett (Google)" <[EMAIL PROTECTED]>
> > wrote:
>
> > > Memcache calls should now be failing fast. That should significantly
> > > reduce the number of request deadlines people are seeing. Otherwise,
> > > we're working to bring the memcache API back online for all
> > > applications as soon as possible. Thanks again for your patience,
> > > everyone!
>
> > > On Nov 13, 10:12 am, "Brett (Google)" <[EMAIL PROTECTED]>
> > > wrote:
>
> > > > Hi Gayle,
>
> > > > Yes, the *request* times out during the API call. It's not the API
> > > > call itself that's timing out. But there is no effective difference to
> > > > your application if you're caught in this situation (as you pointed
> > > > out). I'd assume the first few calls you make to memcache during a
> > > > request actually return False and None. But later on in your request
> > > > handler, so much time has already passed that your API call gets
> > > > interrupted by the DeadlineExceededException for the entire request.
>
> > > > I think for now your best bet is to catch the runtime
> > > > DeadlineExceededException and immediately return with some kind of
> > > > error code. We're looking into the cause of the delayed memcache calls
> > > > on failure. They should be immediately failing instead of waiting up
> > > > to a second to return. That's the root cause of the issue here.
>
> > > > I'm sorry for the trouble this is causing for your application. We're
> > > > working right now to address this issue. Someone from the team will
> > > > follow up when everything has been resolved.
>
> > > > -Brett
>
> > > > On Nov 13, 9:57 am, Gayle Laakmann <[EMAIL PROTECTED]> wrote:
>
> > > > > It was timing out within memcache.get and memcache.set -
> > > > > consistently.  If I understand you correctly - you're saying that
> > > > > memcache isn't technically timing out, on the grounds that it would
> > > > > complete if given enough time.  But, the cache misses take SO much
> > > > > time that it consistently timeouts during the operations of
> > > > > memcache.get and memcache.set.
>
> > > > > Ok, sure, that may be the case.  I'm afraid I don't really see the
> > > > > difference between that and timing out.  Either way, memcache.get and
> > > > > memcache.set aren't exactly just "return false and letting your
> > > > > application proceed."  The fact is they are causing timeouts.
>
> > > > > obj = memcache.get(cache_key)
> > > > >   File "/base/data/home/apps/careercup/13.329261908074364999/memcache/
> > > > > __init__.py", line 362, in get
> > > > >     self._make_sync_call('memcache', 'Get', request, response)
>
> > > > >   File "/base/python_lib/versions/1/google/appengine/api/
> > > > > apiproxy_stub_map.py", line 46, in MakeSyncCall
> > > > >     stub.MakeSyncCall(service, call, request, response)
> > > > >   File "/base/python_lib/versions/1/google/appengine/runtime/
> > > > > apiproxy.py", line 245, in MakeSyncCall
>
> > > > >     rpc.Wait()
> > > > >   File "/base/python_lib/versions/1/google/appengine/runtime/
> > > > > apiproxy.py", line 161, in Wait
> > > > >     rpc_completed = _apphosting_runtime___python__apiproxy.Wait(self)
>
> > > > > On Nov 13, 9:45 am, Brett <[EMAIL PROTECTED]> wrote:
>
> > > > > > Hi Gayle,
>
> > > > > > I'm sorry to hear you're seeing issues. It's important to note that
> > > > > > there are two types of DeadlineExceededErrors. One is defined in
> > > > > > apiproxy_errors.py. The other is in runtime/__init__.py:
>
> > > > > >http://code.google.com/p/googleappengine/source/browse/trunk/google/a...
>
> > > > > > The names are the same, which makes this confusing. The latter error
> > > > > > is raised when the request has been processing for too long (~10
> > > > > > seconds). Perhaps what's happening here is that the cache misses are
> > > > > > causing a lot of extra work to be done, causing your application to
> > > > > > hit this other deadline.
>
> > > > > > The traceback sent by Pratham confirms this behavior. More detail on
> > > > > > how to deal with this is here, in the section entitled "The Request
> > > > > > Timer":
>
> > > > > >http://code.google.com/appengine/docs/python/requestsandcgi.html
>
> > > > > > -Brett
>
> > > > > > On Nov 13, 9:29 am, Gayle Laakmann <[EMAIL PROTECTED]> wrote:
>
> > > > > > > Despite what the post at the link below says, memcache is actually
> > > > > > > timing out and throwing a DeadlineExceededError.  Furthermore, it
> > > > > > > hardly seems accurate to say that our apps should continue serving
> > > > > > > normally.  The quota limits are so ridiculously low that we CAN'T
> > > > > > > serve pages without caching.
>
> > > > > > >http://groups.google.com/group/google-appengine-downtime-notify/brows...
> > > > > > > We will be taking memcache offline tomorrow morning from 9-10am 
> > > > > > > PST
> > > > > > > (GMT-8) for routine maintenance.  Calls to the memcache API will 
> > > > > > > *not*
> > > > > > > throw exceptions but will instead return false for set() calls and
> > > > > > > None for get() calls (just like any other cache miss.)
>
> > > > > > > Your app should continue serving normally during this period, and
> > > > > > > we'll keep you updated on our progress. "
>
> > > > > > > Additonally, I'd like to make two suggestions:
> > > > > > > 1. If you're going to take down memcache, wouldn't it make sense 
> > > > > > > to
> > > > > > > remove the quota limits?  It hardly seems fair to penalized for
> > > > > > > exceeding quota when caching is disabled.
>
> > > > > > > 2.  If you have to take down our apps for an hour, can you pick
> > > > > > > something like 2am - 3am?  I know you don't want to go to work at 
> > > > > > > 2am,
> > > > > > > but it's not really ok to take down our apps for an hour during 
> > > > > > > prime-
> > > > > > > time.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
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