On Friday, April 26, 2013 11:42:44 AM UTC-5, GAEfan wrote:
>
> Thanks, Vinny.
>
> I missed that logs menu.  There are logs.  The error is a 301 at 
>  /_ah/start :
>
> Process terminated because it failed to respond to the start request with an 
> HTTP status code of 200-299 or 404.
>
> So, do I have to add /_ah/start to app.yaml?  That should be handled 
> automatically.
>
>
It's already mapped.

So quick refresher on backend startup: When AppEngine starts up a backend, 
it calls the _ah/start url, That signals the scheduler to allocate and kick 
up a backend, and to run any initialization procedures that are required 
(so for example. in Java it runs the init() function). A 404 status code 
means that this backend has not defined any _ah/start methods, and that it 
doesn't need any initialization; it's ready to go from birth! A 2xx 
response means that the backend did define a startup function, and that 
function has been called, executed, and completed successfully, and now it 
may be used for traffic. 

But here's the problem: AppEngine called your _ah/start, and something went 
wrong, that's why it's complaining of a "failed to respond" properly. Now, 
we don't actually know what exactly went wrong; we just know that 
something, somewhere failed during instance startup. If I were you, I'd 
take a long hard look at the application's startup code: is it possible, 
even remotely, that any code in there can fail? Start pulling out code and 
testing it again, if you have to. 

After all that, if you cannot find any failures, file a ticket. I remember 
a time with a customer (a long time ago) where the backend was stuck for 
some reason - application code deployed and worked fine on other app IDs, 
it just refused to work on a particular app ID. Our executives called our 
Google rep, and apparently the problem was something got stuck in the 
scheduler (some reason like that, like I said, it was a long time ago, and 
there's a nonzero possibility that the executives just didn't care about 
what the reason was). 


On Friday, April 26, 2013 11:42:44 AM UTC-5, GAEfan wrote:
>
> Also, re: the 500 error... Shouldn't the request wait until the backend 
> instance is started?  Otherwise, we have to hit it twice?
>
>
>
Like I said above, the backend instance is not starting at all; it's 
failing somewhere at startup. Once you get that resolved, you only need to 
hit it once.

Also, for some reason, starting up a backend after a new deploy/config 
setting just takes more time than starting up a new frontend instance. My 
theory is that the scheduler takes longer to allocate backend instances 
because it tries to find a server that can maintain a long lasting 
instance; but that's just my pet theory, you'd have to ask Google's 
scheduler people what is actually going on.


-----------------
-Vinny P
Technology & Media Advisor
Chicago, IL

My Go side project: http://invalidmail.com/

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to