[google-appengine] Re: App did not scale as expected?

2009-03-11 Thread Bemmu

Just wanted to confirm that this issue went away, and is working great
now! I did make some changes, but not any change which would seem to
affect scalability. Only major change was that a big percentage of my
calls was raising an exception that was logged as an error, and I
fixed that.

The important thing is that it works now. There is no doubt I will be
using App Engine instead of PHP running on my own servers from now on.
Already I can see that the better response times are leading to a lot
more visits to my MySpace app.

-Bemmu

On Mar 10, 4:36 am, Brett Slatkin brett-appeng...@google.com wrote:
 Hi there,

 On Mon, Mar 9, 2009 at 5:06 PM, Bemmu bemmu@gmail.com wrote:

  First of all, thanks for the great development environment. It has
  been a pleasure to use it.

 Thanks!

  I was testing my app when no-one else was still using it, and was
  getting response times of 0.5 - 3 seconds. My app calls MySpace over
  REST and then fetches about 100 datastore objects on each call, so
  AFAIK it is mostly waiting for MySpace to respond.

  Then I released it to the public, and started getting 72 requests /
  second, which is what I expected because the app is visible in a lot
  of peoples' profile boxes on MySpace. What I didn't expect was that
  the response times from App Engine suddenly went to over 10 seconds,
  causing MySpace to consider it a timeout.

 Has the performance improved here? Looks like it has to me, but I want
 to be sure.

  Isn't App Engine supposed to allocate enough resources automatically
  to scale my app? I repeated the test, unreleasing and re-releasing the
  app and it clearly affects the response times.

 Part of this has to do with the way we scale out your application in
 response to demand. Our system is optimized to handle natural traffic
 patterns. When you go from zero to 72 requests per second in the span
 of a couple minutes you are likely seeing additional latency as your
 application gets distributed to multiple instances. The best way to
 load test on App Engine is to slowly increase the load from zero to
 some percentage of your target qps over the span of 15-20 minutes,
 followed by the full brunt of the load after that.

 One of our teammates explains this idea in a talk he gave at Google I/O.

 http://sites.google.com/site/io/best-practices---building-a-productio...

 We're going to add this information to our FAQ (and maybe and article)
 so people won't hit this issue in the future. Is there anything else
 we could have done to make this more understandable?

 One other thing: if you realize that you need to throw even more load
 at us that you already have, please read this documentation about our
 quota burst limits:http://code.google.com/appengine/kb/billing.html#cpu

 By filling out the linked form we can help you accommodate more load
 than our billing system automatically allows for at the present time.

 -Brett
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread Jarek Zgoda

I'm seeing the same behaviour but I do not use Django (Werkzeug +
Jinja2). While this combo seems lighter (in terms of CPU usage), my
app becomes cold each 2-3 seconds and request takes  1200ms CPU to
be served, with Jinja2 Environment creation taking most of CPU
resources. I tried to optimize this process by caching what can be
cached but got little to none improvement as not much can be cached
here (only loader and templates).

On 10 Mar, 18:22, Jason C jason.a.coll...@gmail.com wrote:
 We have a new application that receives _very_ little load. So little,
 in fact, that each request spins up a new application instance. We are
 using Django trunk and the import overhead is high. All of this yields
 a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

 With very little load, it makes sense that instances are recycled. On
 that assumption, we've started applying some primer load against a
 couple of uris in an attempt to keep some instances hot. We're
 applying around 1 request/second across 2 uris.

 When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
 91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
 App Engine console Logs tool and I'm not completely sure if this
 represents Runtime, or combined Runtime/API - I believe the latter).

 Under this 1 request/second load, we are still seeing lots of instance
 startup - even after 40-50 minutes of sustained load. Subjectively,
 the instance startups seem to come in bursts, though we've done no
 formal analysis around this.

 Does anyone else see this behavior? It _really_ kills our application
 performance - so much so, that we're considering moving away from
 Django in an effort to minimize the start-up pain.

 Any info or war stories would be appreciated.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread peterk

I went back to my logs..I was ignoring a certain request previously,
so that's why I was missing my 'cold starts'! For some reason, one of
my particular requests seems to get all my cold starts. However, the
request and cpu times I'm seeing for these cold starts are quite
different from what Jason is reporting. Typically they range from
1000-1600ms and 1900-2100 ms-cpu.

On Mar 11, 8:13 am, Jarek Zgoda jarek.zg...@gmail.com wrote:
 I'm seeing the same behaviour but I do not use Django (Werkzeug +
 Jinja2). While this combo seems lighter (in terms of CPU usage), my
 app becomes cold each 2-3 seconds and request takes  1200ms CPU to
 be served, with Jinja2 Environment creation taking most of CPU
 resources. I tried to optimize this process by caching what can be
 cached but got little to none improvement as not much can be cached
 here (only loader and templates).

 On 10 Mar, 18:22, Jason C jason.a.coll...@gmail.com wrote:

  We have a new application that receives _very_ little load. So little,
  in fact, that each request spins up a new application instance. We are
  using Django trunk and the import overhead is high. All of this yields
  a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

  With very little load, it makes sense that instances are recycled. On
  that assumption, we've started applying some primer load against a
  couple of uris in an attempt to keep some instances hot. We're
  applying around 1 request/second across 2 uris.

  When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
  91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
  App Engine console Logs tool and I'm not completely sure if this
  represents Runtime, or combined Runtime/API - I believe the latter).

  Under this 1 request/second load, we are still seeing lots of instance
  startup - even after 40-50 minutes of sustained load. Subjectively,
  the instance startups seem to come in bursts, though we've done no
  formal analysis around this.

  Does anyone else see this behavior? It _really_ kills our application
  performance - so much so, that we're considering moving away from
  Django in an effort to minimize the start-up pain.

  Any info or war stories would be appreciated.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Stored Data figure suddenly way higher than Data Viewer suggests

2009-03-11 Thread Michael O'Brien

Hi,

I'm still testing my app, so it only has a small amount of test data
in it right now (maybe 200 small entities max). I hadn't paid much
attention to the Stored Data figure on the dashboard page until now
since today for the first time it looks like I actually owe money (1
cent, but hey it's something :).

I'd guess the actual size of the data I have is under 1 MB, but the
dashboard page says I'm using 2GB! The actual figure is 2.01 GB, which
curiously is 1% of the 201 GB max.

I have seven extra indexes and I did have more data in the datastore
before, but deleted that at least a week ago. Still, I don't expect
this could account for such a huge difference?

Anyone else seeing similar behaviour?

thanks!
Michael
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread Antonin Hildebrand

I can also confirm this behavior with my app, recycling takes place
after about 2 seconds of inactivity. I also guess, that this recycling
timeout had to be lowered by GAE team during last week, because I had
running and working application on appspot. I did no updates to it and
the app did break because of this change.

On Mar 10, 6:22 pm, Jason C jason.a.coll...@gmail.com wrote:
 We have a new application that receives _very_ little load. So little,
 in fact, that each request spins up a new application instance. We are
 using Django trunk and the import overhead is high. All of this yields
 a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

 With very little load, it makes sense that instances are recycled. On
 that assumption, we've started applying some primer load against a
 couple of uris in an attempt to keep some instances hot. We're
 applying around 1 request/second across 2 uris.

 When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
 91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
 App Engine console Logs tool and I'm not completely sure if this
 represents Runtime, or combined Runtime/API - I believe the latter).

 Under this 1 request/second load, we are still seeing lots of instance
 startup - even after 40-50 minutes of sustained load. Subjectively,
 the instance startups seem to come in bursts, though we've done no
 formal analysis around this.

 Does anyone else see this behavior? It _really_ kills our application
 performance - so much so, that we're considering moving away from
 Django in an effort to minimize the start-up pain.

 Any info or war stories would be appreciated.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] problem with import django

2009-03-11 Thread arbi

Hi,
While making google's tutorial (google-app-engine-django), I had
exactly the same problem as mentioned here :
http://groups.google.fr/group/google-appengine/browse_thread/thread/7b2445428b8115c2#.
I create a new post to make my pb visible.

It is an  importing django error. The warning I got is :

[WARNING:root:Blocking access to skipped file /Users/brouard/
mysite/.google_appengine/lib/django/django/foo]
The problem comes from the . in the path : /.google_appengine/ that
causes the no module named Django error.

I have the 1.1.9 version of appengine. The SDK folder
(google_appengine) is already in /usr/local.
But I don't understand what Brett said in the forum :

The fix should be not use the Django helper's little trick of keeping
your SDK in .google_appengine but instead actually install it, or at
least keep it outside of your app directory. That should prevent the
skipped file blocking from interfering with your imports.

How can I fix this pb? (I am kind of newb)
Thx
Arbi

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] A question for Jaiku's developers, if they're watching..

2009-03-11 Thread peterk

I just read on your blog (from January) the intention to release the
appengine port of Jaiku as open source when the port is finished..but
I was wondering if I could be so cheeky as to jump ahead with a couple
of questions about it. The requirements of Jaiku seem to line up
roughly similarly with issues I'm having in a slightly different
context, that I'm finding pretty challenging to implement efficiently
on app engine.

With your service, you seem to track updates for friends and other
people I follow..so I  might have a long list of people I'm following,
and you feed me their updates.

How do you implement this on GAE?

I've been toying with a very similar problem for some time now. It
seems to me you cannot chain together queries such as
me.friends.updates.order(..) to get your friends' latest updates, for
example. You can't make n writes to n update queues for n people
following you, since writes are so costly. If I store my friends in a
list of keys, this limits the number of friends I can query at a given
time to 30. e.g. updates.all().filter('user IN', me.friends) is
limited to 30 subqueries. I may have many more friends, so this
approach doesn't seem to be sufficient.


I've been scratching my head over a similar problem for some time now,
coming up with various hairbrained schemes that have been overly-
complex, none of which deliver scalability to the nth degree. So I'd
really, really, really appreciate any insight you could provide in
implementing this kind of data model on GAE!! Many thanks!
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] how to use google Analytics

2009-03-11 Thread Coonay

in order to use google  Analytics,the tracking code should be include
into every page?i 've inserted the code, but it does't,
could u mater tell me how to do it correctly?
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: iterate thru 2 stringlistproperties in template

2009-03-11 Thread sagey

Perfect!

Thanks Andi, this has really helped me refactor my code away from a
complete kludge into something almost workable.
its amazing how much i've been trying to code round my lack of
knowledge of python (the project i'm working on is primarily a python/
django/gae learning excercise)


Thanks again


On Mar 9, 1:24 pm, Andi Albrecht albrecht.a...@googlemail.com wrote:
 I would zip() both lists on the Python side and iterate over that
 zipped lists in the template, e.g.

 # Python side
 newval = zip(stringlist1, stringlist2)

 # Template
 {%for item in newval%}
 {{item.0}} and {{item.1}}
 {%endfor%}

 Regards,

 Andi



 On Mon, Mar 9, 2009 at 2:19 PM,sageysage...@gmail.com wrote:

  Hello,

  please forgive the beginners question.

  I have a model with 2 string list properties.

  How do i iterate through each list in the template at the same time.

  What i mean is, say i wanted to output

  stringlist1value1    and stringlist2value1
  stringlist1value2    and string list2value2
  stringlist1value3    and string list2value3

  etc etc

  how would i do this?

  if i were doing this in python code i would maybe increment a
  loopcount in a for loop
  but i don't believe i can do this using django template syntax.- Hide 
  quoted text -

 - Show quoted text -
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: A question for Jaiku's developers, if they're watching..

2009-03-11 Thread Andrew Badera

you'd have to wonder if there's a push out to Gnip somewhere ... or if
protocol buffers are involved ..

Thanks-
- Andy Badera
- and...@badera.us
- (518) 641-1280
- Tech Valley Code Camp 2009.1: http://www.techvalleycodecamp.com/
- Google me: http://www.google.com/search?q=andrew+badera




On Wed, Mar 11, 2009 at 9:21 AM, peterk peter.ke...@gmail.com wrote:

 I just read on your blog (from January) the intention to release the
 appengine port of Jaiku as open source when the port is finished..but
 I was wondering if I could be so cheeky as to jump ahead with a couple
 of questions about it. The requirements of Jaiku seem to line up
 roughly similarly with issues I'm having in a slightly different
 context, that I'm finding pretty challenging to implement efficiently
 on app engine.

 With your service, you seem to track updates for friends and other
 people I follow..so I  might have a long list of people I'm following,
 and you feed me their updates.

 How do you implement this on GAE?

 I've been toying with a very similar problem for some time now. It
 seems to me you cannot chain together queries such as
 me.friends.updates.order(..) to get your friends' latest updates, for
 example. You can't make n writes to n update queues for n people
 following you, since writes are so costly. If I store my friends in a
 list of keys, this limits the number of friends I can query at a given
 time to 30. e.g. updates.all().filter('user IN', me.friends) is
 limited to 30 subqueries. I may have many more friends, so this
 approach doesn't seem to be sufficient.


 I've been scratching my head over a similar problem for some time now,
 coming up with various hairbrained schemes that have been overly-
 complex, none of which deliver scalability to the nth degree. So I'd
 really, really, really appreciate any insight you could provide in
 implementing this kind of data model on GAE!! Many thanks!
 


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Google AdSense on App Engine

2009-03-11 Thread Dennis Peterson

I posted a feature request on this...it would be nice to have adsense
feed directly into app engine fees, so it can all just run itself
without you bothering with it. Then even a third-world kid with an
OLPC could build a big site.

If the adsense revenues fall short, respond to any excess hits with a
donation page. For the kinds of sites that people feel charitable
towards, this could work nicely.

-d

On Mon, Mar 9, 2009 at 12:40 PM, Ryan Lamansky spam...@kardax.com wrote:

 Yes.

 If you direct both AdSesnse and App Engine to the same bank account,
 it will pay for itself if your advertising income covers your resource
 usage fees.

 -Ryan

 On Mar 8, 12:11 pm, Let Delete My Apps davide.rogn...@gmail.com
 wrote:
 Idea:
 Can I put AdSense on my app to receive additional computing resources,
 instead to receive money?

 I saw:http://www.google.com/services/adsense_tour/index.html
 


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] My own domain

2009-03-11 Thread georgec

I'm having all sorts of problems adding my own domain name to
AppEngine. I've already signed up to Google Apps and utilise their
email, docs etc.

I logged into AppEngine and went Versions  Add Domain and entered
my domain. It duly appeared in my Google Apps dashboard. When I click
on it and Add new URL I can add something like info (http://
info.example.com) but am unable to enter www (http://
www.example.com/). It goes through the motions but then doesn't appear
on my list. and the DNS is all set up correctly in Network Solutions

if it try to browse to www all I get is:

The site you have requested could not be found. (404)

Am I missing something completely obvious?

thx

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: A question for Jaiku's developers, if they're watching..

2009-03-11 Thread peterk

Hmm. Good thinking Andrew. I've done a bit more digging along those
lines..I don't think Jaiku has publically said if and what messaging
protocols they might use, but there seems to be some speculation that
it uses XMPP.

That might also neatly align with their comment that they are in some
cases extending GAE in their port..and the recent news that XMPP is
scheduled to come to GAE at some point in the next 6 months. Perhaps
it's the work on the Jaiku port that's bringing that functionality...

I didn't know anything about messaging protocols or XMPP until I dug
around after your post, so it's all new to me. I found a project
purporting to provide XMPP functionality in advance of Google's
official support, at http://imified-demo.appspot.com/, but looking at
the code for it, I cannot for the life of me see how this could be
used to address the problems discussed in my original email. That
project seems only to take instant messages via a POST to a URL and
save them to the datastore..but there doesn't seem to be any of the
'instant distribution' of updates to people subscribed to your
presence etc. that other XMPP software boast about. Using that xmpp
project linked, there doesn't seem to be anything there about pushing
updates to subscribed users etc.

I dug around the app gallery for other open source apps along similar
lines..there are some would-be twitter/jaiku clones..all I've seen use
non-messaging approaches, but they all make one compromise or another
similar to solutions I'd come up with myself (e.g. taking the last 5
updates from friends and sorting them yourself in memory by
date..which has its own issues, for example, if one user had made 5
updates recently..+  you'd inevitably hit a roadblock on all these
reads beyond a certain number of friends..there's only so many friends
you could do this for before it gets too slow).

Any thoughts/ideas...?

On Mar 11, 1:54 pm, Andrew Badera and...@badera.us wrote:
 you'd have to wonder if there's a push out to Gnip somewhere ... or if
 protocol buffers are involved ..

 Thanks-
 - Andy Badera
 - and...@badera.us
 - (518) 641-1280
 - Tech Valley Code Camp 2009.1:http://www.techvalleycodecamp.com/
 - Google me:http://www.google.com/search?q=andrew+badera

 On Wed, Mar 11, 2009 at 9:21 AM, peterk peter.ke...@gmail.com wrote:

  I just read on your blog (from January) the intention to release the
  appengine port of Jaiku as open source when the port is finished..but
  I was wondering if I could be so cheeky as to jump ahead with a couple
  of questions about it. The requirements of Jaiku seem to line up
  roughly similarly with issues I'm having in a slightly different
  context, that I'm finding pretty challenging to implement efficiently
  on app engine.

  With your service, you seem to track updates for friends and other
  people I follow..so I  might have a long list of people I'm following,
  and you feed me their updates.

  How do you implement this on GAE?

  I've been toying with a very similar problem for some time now. It
  seems to me you cannot chain together queries such as
  me.friends.updates.order(..) to get your friends' latest updates, for
  example. You can't make n writes to n update queues for n people
  following you, since writes are so costly. If I store my friends in a
  list of keys, this limits the number of friends I can query at a given
  time to 30. e.g. updates.all().filter('user IN', me.friends) is
  limited to 30 subqueries. I may have many more friends, so this
  approach doesn't seem to be sufficient.

  I've been scratching my head over a similar problem for some time now,
  coming up with various hairbrained schemes that have been overly-
  complex, none of which deliver scalability to the nth degree. So I'd
  really, really, really appreciate any insight you could provide in
  implementing this kind of data model on GAE!! Many thanks!
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Google App Engine and Google Maps

2009-03-11 Thread Danny

I am trying to geocode an address server side using the app engine. I
am using the fetch() function to do this against the google maps
servers. This worked fine on the development server, but now that I
have deployed my app, I am getting 620 errors from Google Maps. My key
is set correctly as well for the appspot address.

Any help would be greatly appreciated.

DB

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: DownloadError: ApplicationError: 5 Using GData Provisioning API

2009-03-11 Thread scott

David,

I'm receiving the same error and similar results albeit with a
different API. This happens when I try to create a new empty (not
uploaded) spreadsheet. The spreadsheet shows up, but I still get
ApplicationError:5. Until I can find the solution, I've chosen to just
catch the exception and work around it. On my dev engine I receive a
slightly different exception, ApplicationError:2 timeout. This happens
on the request to google. Again, in dev even though I get the error
the spreadsheet is created. The details of the request are listed
below. The request looks to be in line with the API sample code at
http://groups.google.com/group/Google-Docs-Data-APIs/browse_frm/thread/26d983bfda97d1fe
and  
http://code.google.com/apis/documents/docs/2.0/developers_guide_protocol.html#UploadingMetadata.

I'll keep looking and will let you know if I find anything out.

Scott

operation   str: POST
url Url: http://docs.google.com/feeds/documents/private/full
headers dict: {'Content-Length': '254', 'Content-Type': 'application/
atom+xml', 'User-Agent': 'None GData-Python/1.2.2'}
dataGDataEntry:
?xml version='1.0' encoding='UTF-8'?
ns0:entry xmlns:ns0=http://www.w3.org/2005/Atom;
ns0:category scheme=http://schemas.google.com/g/2005#kind;
term=http://schemas.google.com/docs/2007#spreadsheet; /
ns0:titleNoNameSheet/ns0:title
/ns0:entry

From the error log:
  File /base/data/home/apps/mamooproject/1.331984609576213456/gdata/
service.py, line 1147, in Post
media_source=media_source, converter=converter)
  File /base/data/home/apps/mamooproject/1.331984609576213456/gdata/
service.py, line 1232, in PostOrPut
headers=extra_headers)
  File /base/data/home/apps/mamooproject/1.331984609576213456/atom/
service.py, line 176, in request
data=data, headers=all_headers)
  File /base/data/home/apps/mamooproject/1.331984609576213456/gdata/
auth.py, line 704, in perform_request
return http_client.request(operation, url, data=data,
headers=headers)
  File /base/data/home/apps/mamooproject/1.331984609576213456/gdata/
alt/appengine.py, line 144, in request
method=method, headers=all_headers, follow_redirects=False))
  File /base/python_lib/versions/1/google/appengine/api/urlfetch.py,
line 273, in fetch
raise DownloadError(str(e))
DownloadError: ApplicationError: 5


On Mar 9, 7:03 pm, David Cifuentes david.cifuen...@eforcers.com
wrote:
 Hello,

 I'm getting this error when I'm using the GData Provisioning API to
 create user accounts from GAE. The weird thing is that it works well
 on the development environment and even in the production server the
...

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Whats the max size that GAE allows to upload.

2009-03-11 Thread Hareem Ul Haque

Whats the max file size for an object that needs to be stored on GAE.
I am trying to upload a simple wav file and its around 3mb and its not
uploading at all.

Any help is greatly apprecaited.


Regards
Hareem Ul Haque

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Server Error A server error has occurred.

2009-03-11 Thread Jim

Situation: trying to delete a bunch (100,000) entries in a table.

Can't find drop table so the best that I've been able to come up with
is deleting all of the entries.

My app is apparently running fine - hard to tell with almost all the
data gone.   But the data viewer is not happy.   It gives me the
server error message when I try to delete the remaining entries it's
showing me.  It gives me the error message if I try to go past the
first screen.   And so on.

Given a choice between alter table and delete table, I'll take delete
table.  Let me copy from table1 to table2 and then delete table1.

In this case, if I'd had alter table, I wouldn't have needed delete
table.

Any suggestions on how to get GAE to tidy itself up?

Thanks!

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Searching in GeoPt

2009-03-11 Thread Dan Course

Morning Group,

Hope everyone's all good? Got a dev. problem driving me nuts and I
can't figure out or find a simple solution throughout the posts.

We're saving Lat/Lng in a GeoPt datatype. We then need to search
within all those GeoPts for the nearest within a radius/square (range)

eg, search?lat=2lng=5range=5metres

What's the easiet way of sorting this? The bounding box method seems
overly complex and crazy, are we just hoping for a simple solution to
quite a complex solution?

WHERE GEOPT NEAR (LAT=2, LNG=2)

Any clues?

Thanks,

DanC

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] what about memcache flush_all() performance

2009-03-11 Thread Chris

If my app has a lot of data in memcache, and calls flush_all() now,
what about the performance of this function call? I'm not sure how the
memcache backend is implemented.

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] appcfg.py made to exclude dirs/files?

2009-03-11 Thread Jon

Just starting to look at GAE so I'm not certain that this is even an issue.

Does appcfg.py only upload certain files, and if not, can it be told to exclude 
certain files and dirs in your app?  For example, say I want to exclude .hg or 
.bzr or .svn directories.

Thanks, Jon

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Expected Database Performance with Millions of Rows?

2009-03-11 Thread peterk

Ahh, thanks Ryan..that makes sense.

So for lenza...you need to try and squeeze your itemBs construction
into one RPC call..so..something like this might do the trick:

def myQuery():
   query = A.all().filter('intProperty', val).filter('date =', date)
   itemAs = [itemA for itemA in query]
   itemBkeys = [A.typeB.get_value_for_datastore(itemA) for itemA in
itemAs]
   itemBs = db.get(itemBkeys)
   return itemBs

I haven't tested it, but I think that should boil down itemBs'
construction from n RPC calls to 1, which should bring it more in line
with the cost of itemA's construction.

On Mar 11, 12:02 am, ryan ryanb+appeng...@google.com wrote:
 On Mar 10, 4:38 pm, peterk peter.ke...@gmail.com wrote:

  Sorry if some redundant points are being raised here.. my lingering
  question in light of your post is regarding the variation in
  performance between itemAs' construction and itemBs' if both boil down
  to the same read behaviour on the datastore. To walk through lenza's
  code:

 sorry, you're right. i misread the original code snippets. let me try
 again.

  query = A.all().filter('intProperty', val).filter('date =', date) # no 
  reads at this point (?)

 correct.

  itemAs = [itemA for itemA in query]  # n disk seeks and reads where n = 
  number of itemAs matching query (?)

 roughly, yes. it's actually around n + n/20.

  itemBs = [itemA.typeB for itemA in itemAs]  # n disk seeks and reads for n 
  automatic dereferencing of itemA.typeB accesses (?)

 correct.

  I'm guessing it's not that simple given the variation in performance
  between line 2 and line 3 reported by lenza. I'm gonna dig into your
  links tomorrow, so if an answer is in there, don't mind me! :)

 the difference in performance is probably due to the RPC overhead
 between the app and the datastore. the query only takes n/20 RPCs, one
 for each result batch. the itemBs list comprehension takes n RPCs,
 since it does a get() for each itemA.typeB. (that's due to the list
 comprehension itself, which is in the app's code, so we can't collapse
 those RPCs because we don't know they're coming ahead of 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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: MemCache/datastore failing

2009-03-11 Thread Marzia Niccolai
Hi,

This should now be fixed.  Please let us know if you continue to see this
issue.

-Marzia

On Fri, Feb 27, 2009 at 12:05 PM, bradfitz b...@danga.com wrote:


 DarkCoiote,

 I've fixed the memcache server bug.  It was an obscure case that could
 happen when a delete-locked (delete with expiration time) item being
 at the tail of the namespace LRU chain.  In other words, totally not
 related to your code at all... this should've worked.

 Thanks for the bug report!

 I'm rolling up a new package of the memcacheg server now and then the
 App Engine folks can deploy it whenever works best for them.

 - Brad

 On Feb 19, 4:56 am, DarkCoiote darkcoi...@gmail.com wrote:
  Hi,
 
  somehow my app. can't use memcache anymore (it was working fine a week
  ago).
 
  For instance, I clear the cache (memcache.flush_all()), use the app
  (almost every operation uses caching) and then call the cache stats
  page (stats = memcache.get_stats()) but the stats variable gets
  consistently 'none' value.
 
  As a result, latency has increased a lot making responses exceed the
  10sec. timeout (maybe other bug here, as now it should be 30s right?
  although the timeout can be from the 'gadgets.io.makeRequest' from the
  opensocial part of the app.)
 
  The traceback of the problem I got with the datastore:
 
  An error occurred for the API request datastore_v3.RunQuery().
  Traceback (most recent call last):
File /base/python_lib/versions/1/google/appengine/ext/webapp/
  __init__.py, line 503, in __call__
  handler.post(*groups)
File /base/data/home/apps/date-review/2.331374829726725911/
  main.py, line 371, in post
  avgRating = get_avg_rating(friend)
File /base/data/home/apps/date-review/2.331374829726725911/
  main.py, line 95, in get_avg_rating
  ratings = query.get()
File /base/python_lib/versions/1/google/appengine/ext/db/
  __init__.py, line 1346, in get
  results = self.fetch(1)
File /base/python_lib/versions/1/google/appengine/ext/db/
  __init__.py, line 1390, in fetch
  raw = self._get_query().Get(limit, offset)
File /base/python_lib/versions/1/google/appengine/api/
  datastore.py, line 942, in Get
  return self._Run(limit, offset)._Next(limit)
File /base/python_lib/versions/1/google/appengine/api/
  datastore.py, line 883, in _Run
  apiproxy_stub_map.MakeSyncCall('datastore_v3', 'RunQuery', pb,
  result)
File /base/python_lib/versions/1/google/appengine/api/
  apiproxy_stub_map.py, line 68, in MakeSyncCall
  apiproxy.MakeSyncCall(service, call, request, response)
File /base/python_lib/versions/1/google/appengine/api/
  apiproxy_stub_map.py, line 240, in MakeSyncCall
  stub.MakeSyncCall(service, call, request, response)
File /base/python_lib/versions/1/google/appengine/runtime/
  apiproxy.py, line 183, in MakeSyncCall
  rpc.CheckSuccess()
File /base/python_lib/versions/1/google/appengine/api/
  apiproxy_rpc.py, line 111, in CheckSuccess
  raise self.exception
  Error: An error occurred for the API request datastore_v3.RunQuery().
 
  Some times I get this kind of traceback, which I'm sure is the
  deadline problem:
 
  class 'google.appengine.runtime.DeadlineExceededError':
  Traceback (most recent call last):
File /base/data/home/apps/date-review/2.331374829726725911/
  main.py, line 620, in main
  run_wsgi_app(application)
File /base/python_lib/versions/1/google/appengine/ext/webapp/
  util.py, line 76, in run_wsgi_app
  result = application(env, _start_response)
File /base/python_lib/versions/1/google/appengine/ext/webapp/
  __init__.py, line 503, in __call__
  handler.post(*groups)
File /base/data/home/apps/date-review/2.331374829726725911/
  main.py, line 372, in post
  numVisit = get_num_visits(friend)
File /base/data/home/apps/date-review/2.331374829726725911/
  main.py, line 487, in get_num_visits
  delete_old_visits(owner)
File /base/data/home/apps/date-review/2.331374829726725911/
  main.py, line 492, in delete_old_visits
  results = query.fetch(1000)
File /base/python_lib/versions/1/google/appengine/ext/db/
  __init__.py, line 1390, in fetch
  raw = self._get_query().Get(limit, offset)
File /base/python_lib/versions/1/google/appengine/api/
  datastore.py, line 942, in Get
  return self._Run(limit, offset)._Next(limit)
File /base/python_lib/versions/1/google/appengine/api/
  datastore.py, line 1536, in _Next
  apiproxy_stub_map.MakeSyncCall('datastore_v3', 'Next', req,
  result)
File /base/python_lib/versions/1/google/appengine/api/
  apiproxy_stub_map.py, line 68, in MakeSyncCall
  apiproxy.MakeSyncCall(service, call, request, response)
File /base/python_lib/versions/1/google/appengine/api/
  apiproxy_stub_map.py, line 240, in MakeSyncCall
  stub.MakeSyncCall(service, call, request, response)
File /base/python_lib/versions/1/google/appengine/runtime/
  apiproxy.py, line 182, in MakeSyncCall
  rpc.Wait()
File 

[google-appengine] Re: what about memcache flush_all() performance

2009-03-11 Thread Brett Slatkin

On Wed, Mar 11, 2009 at 8:39 AM, Chris chris1...@gmail.com wrote:

 If my app has a lot of data in memcache, and calls flush_all() now,
 what about the performance of this function call? I'm not sure how the
 memcache backend is implemented.

Like all memcache calls, flush is O(1). Everything is done lazily. So
there is no overhead.

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread johnP

I've been tracking (and seeing) this for a while already.  Besides the
latency that occurs each time Django gets re-zipimported, what is
concerning is the thought of paying for CPUs to constantly reload the
cache.  My app's not live yet - so there is some time before this
becomes a $$$ problem for me, but...

I remain forever hopeful that it will be solved by then. :)



On Mar 11, 4:26 am, Antonin Hildebrand antonin.hildebr...@gmail.com
wrote:
 I can also confirm this behavior with my app, recycling takes place
 after about 2 seconds of inactivity. I also guess, that this recycling
 timeout had to be lowered by GAE team during last week, because I had
 running and working application on appspot. I did no updates to it and
 the app did break because of this change.

 On Mar 10, 6:22 pm, Jason C jason.a.coll...@gmail.com wrote:

  We have a new application that receives _very_ little load. So little,
  in fact, that each request spins up a new application instance. We are
  using Django trunk and the import overhead is high. All of this yields
  a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

  With very little load, it makes sense that instances are recycled. On
  that assumption, we've started applying some primer load against a
  couple of uris in an attempt to keep some instances hot. We're
  applying around 1 request/second across 2 uris.

  When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
  91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
  App Engine console Logs tool and I'm not completely sure if this
  represents Runtime, or combined Runtime/API - I believe the latter).

  Under this 1 request/second load, we are still seeing lots of instance
  startup - even after 40-50 minutes of sustained load. Subjectively,
  the instance startups seem to come in bursts, though we've done no
  formal analysis around this.

  Does anyone else see this behavior? It _really_ kills our application
  performance - so much so, that we're considering moving away from
  Django in an effort to minimize the start-up pain.

  Any info or war stories would be appreciated.


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Web Server Startup problem

2009-03-11 Thread msuh

Hey guys anyone having similar problem? Everything is ok, I start the
server through dev_appserver and it starts showing this :
programmerfish.com/screenshot.jpg

Even though the server is running at localhost:8080 but when i try to
access it, it displays 404 error. Browser settings are ok and I have
also tried to reset the path of datastore but stilll doesnt work.

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] garutilities Session objects in Django app

2009-03-11 Thread Ritesh Nadhani

Hi

So I was reading the session utility at
http://code.google.com/p/gaeutilities/wiki/Session. I am using Django
instead of web.py.

The sample shows code:

self.session = Session()

In django, we dont get an object, rather a method is called, how can I
store the session object similar to self.session.

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread Jason C

Hmm. Never thought about that aspect; I was only concerned with the
response performance.

Perhaps the AdWords profit maximization heuristic has been applied to
the instance recycling algorithm? ;)


On Mar 11, 10:28 am, johnP j...@thinkwave.com wrote:
 I've been tracking (and seeing) this for a while already.  Besides the
 latency that occurs each time Django gets re-zipimported, what is
 concerning is the thought of paying for CPUs to constantly reload the
 cache.  My app's not live yet - so there is some time before this
 becomes a $$$ problem for me, but...

 I remain forever hopeful that it will be solved by then. :)

 On Mar 11, 4:26 am, Antonin Hildebrand antonin.hildebr...@gmail.com
 wrote:

  I can also confirm this behavior with my app, recycling takes place
  after about 2 seconds of inactivity. I also guess, that this recycling
  timeout had to be lowered by GAE team during last week, because I had
  running and working application on appspot. I did no updates to it and
  the app did break because of this change.

  On Mar 10, 6:22 pm, Jason C jason.a.coll...@gmail.com wrote:

   We have a new application that receives _very_ little load. So little,
   in fact, that each request spins up a new application instance. We are
   using Django trunk and the import overhead is high. All of this yields
   a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

   With very little load, it makes sense that instances are recycled. On
   that assumption, we've started applying some primer load against a
   couple of uris in an attempt to keep some instances hot. We're
   applying around 1 request/second across 2 uris.

   When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
   91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
   App Engine console Logs tool and I'm not completely sure if this
   represents Runtime, or combined Runtime/API - I believe the latter).

   Under this 1 request/second load, we are still seeing lots of instance
   startup - even after 40-50 minutes of sustained load. Subjectively,
   the instance startups seem to come in bursts, though we've done no
   formal analysis around this.

   Does anyone else see this behavior? It _really_ kills our application
   performance - so much so, that we're considering moving away from
   Django in an effort to minimize the start-up pain.

   Any info or war stories would be appreciated.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: App did not scale as expected?

2009-03-11 Thread Brett Slatkin

On Wed, Mar 11, 2009 at 12:47 AM, Bemmu bemmu@gmail.com wrote:

 Just wanted to confirm that this issue went away, and is working great
 now! I did make some changes, but not any change which would seem to
 affect scalability. Only major change was that a big percentage of my
 calls was raising an exception that was logged as an error, and I
 fixed that.

 The important thing is that it works now. There is no doubt I will be
 using App Engine instead of PHP running on my own servers from now on.
 Already I can see that the better response times are leading to a lot
 more visits to my MySpace app.

That's great news!

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: garutilities Session objects in Django app

2009-03-11 Thread Joe Bowman

Hi,

gaeutilities includes a session middleware

Just add it in your settings.py

For example, for one app I have

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'common.appengine_utilities.django-
middleware.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
)

Note, this only verified with appengine-patch, and not the django0.96
bundled with appengine. Not saying it doesn't work, just saying I've
never tried it.

Also, the middleware takes advantage of the new session cookie writer.
This is a large performance improvement by storing all session data in
cookies for anonymous requests. In order to switch to the datastore
backed solution for your logged in users, you'll need to reset the
session when they log in. The easiest way to do this after you've
authenticated the user, use request.session.save() to convert the
session to the datastore backed solution.

ie:

user = auth.authenticate()
request.session.save()
auth.login(request, user)

On Mar 11, 12:40 pm, Ritesh Nadhani rite...@gmail.com wrote:
 Hi

 So I was reading the session utility 
 athttp://code.google.com/p/gaeutilities/wiki/Session. I am using Django
 instead of web.py.

 The sample shows code:

 self.session = Session()

 In django, we dont get an object, rather a method is called, how can I
 store the session object similar to self.session.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Server Error A server error has occurred.

2009-03-11 Thread Jim

This seemed to get cleaned up overnight so I went back to deleting.
It's now been 4 hours and data viewer is locked on server error 500.

It's great that the rest of the site is working but there's nothing in
the admin logs, etc. that gives me any idea when things will be
working again.

On Mar 10, 8:33 pm, Jim jdeib...@gmail.com wrote:
 Situation: trying to delete a bunch (100,000) entries in a table.

 Can't find drop table so the best that I've been able to come up with
 is deleting all of the entries.

 My app is apparently running fine - hard to tell with almost all the
 data gone.   But the data viewer is not happy.   It gives me the
 server error message when I try to delete the remaining entries it's
 showing me.  It gives me the error message if I try to go past the
 first screen.   And so on.

 Given a choice between alter table and delete table, I'll take delete
 table.  Let me copy from table1 to table2 and then delete table1.

 In this case, if I'd had alter table, I wouldn't have needed delete
 table.

 Any suggestions on how to get GAE to tidy itself up?

 Thanks!
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: garutilities Session objects in Django app

2009-03-11 Thread Ritesh Nadhani

Thanks.

I have the stock .96 running. I will try it out with it and let you
know how it goes. Hopefully it will work for 0.96 out of box and then
soon I will read upon the complete appengine-port.

On Wed, Mar 11, 2009 at 10:12 AM, Joe Bowman bowman.jos...@gmail.com wrote:

 Hi,

 gaeutilities includes a session middleware

 Just add it in your settings.py

 For example, for one app I have

 MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'common.appengine_utilities.django-
 middleware.middleware.SessionMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
 )

 Note, this only verified with appengine-patch, and not the django0.96
 bundled with appengine. Not saying it doesn't work, just saying I've
 never tried it.

 Also, the middleware takes advantage of the new session cookie writer.
 This is a large performance improvement by storing all session data in
 cookies for anonymous requests. In order to switch to the datastore
 backed solution for your logged in users, you'll need to reset the
 session when they log in. The easiest way to do this after you've
 authenticated the user, use request.session.save() to convert the
 session to the datastore backed solution.

 ie:

 user = auth.authenticate()
 request.session.save()
 auth.login(request, user)

 On Mar 11, 12:40 pm, Ritesh Nadhani rite...@gmail.com wrote:
 Hi

 So I was reading the session utility 
 athttp://code.google.com/p/gaeutilities/wiki/Session. I am using Django
 instead of web.py.

 The sample shows code:

 self.session = Session()

 In django, we dont get an object, rather a method is called, how can I
 store the session object similar to self.session.
 




-- 
Ritesh
http://www.riteshn.com

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread peterh





On Mar 11, 12:28 pm, johnP j...@thinkwave.com wrote:
 I've been tracking (and seeing) this for a while already.  Besides the
 latency that occurs each time Django gets re-zipimported, what is
 concerning is the thought of paying for CPUs to constantly reload the
 cache.  My app's not live yet - so there is some time before this
 becomes a $$$ problem for me, but...


But how can you reach your billing limit if the issue is that you get
low traffic in the first place? other than that, I agree, it would be
great if this 2-sec limit was increased.


 I remain forever hopeful that it will be solved by then. :)


 On Mar 11, 4:26 am, Antonin Hildebrand antonin.hildebr...@gmail.com
 wrote:

  I can also confirm this behavior with my app, recycling takes place
  after about 2 seconds of inactivity. I also guess, that this recycling
  timeout had to be lowered by GAE team during last week, because I had
  running and working application on appspot. I did no updates to it and
  the app did break because of this change.

  On Mar 10, 6:22 pm, Jason C jason.a.coll...@gmail.com wrote:

   We have a new application that receives _very_ little load. So little,
   in fact, that each request spins up a new application instance. We are
   using Django trunk and the import overhead is high. All of this yields
   a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

   With very little load, it makes sense that instances are recycled. On
   that assumption, we've started applying some primer load against a
   couple of uris in an attempt to keep some instances hot. We're
   applying around 1 request/second across 2 uris.

   When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
   91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
   App Engine console Logs tool and I'm not completely sure if this
   represents Runtime, or combined Runtime/API - I believe the latter).

   Under this 1 request/second load, we are still seeing lots of instance
   startup - even after 40-50 minutes of sustained load. Subjectively,
   the instance startups seem to come in bursts, though we've done no
   formal analysis around this.

   Does anyone else see this behavior? It _really_ kills our application
   performance - so much so, that we're considering moving away from
   Django in an effort to minimize the start-up pain.

   Any info or war stories would be appreciated.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: problem with import django

2009-03-11 Thread WallyDD

What command are you using to call Django in your code?

On Mar 11, 7:57 am, arbi arbin...@gmail.com wrote:
 Hi,
 While making google's tutorial (google-app-engine-django), I had
 exactly the same problem as mentioned here 
 :http://groups.google.fr/group/google-appengine/browse_thread/thread/7
 I create a new post to make my pb visible.

 It is an  importing django error. The warning I got is :

 [WARNING:root:Blocking access to skipped file /Users/brouard/
 mysite/.google_appengine/lib/django/django/foo]
 The problem comes from the . in the path : /.google_appengine/ that
 causes the no module named Django error.

 I have the 1.1.9 version of appengine. The SDK folder
 (google_appengine) is already in /usr/local.
 But I don't understand what Brett said in the forum :
 
 The fix should be not use the Django helper's little trick of keeping
 your SDK in .google_appengine but instead actually install it, or at
 least keep it outside of your app directory. That should prevent the
 skipped file blocking from interfering with your imports.
 
 How can I fix this pb? (I am kind of newb)
 Thx
 Arbi
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: My own domain

2009-03-11 Thread WallyDD

Try doing a redirect on the www part to your domain. You will need to
do this at the dns/domain register level.

On Mar 11, 11:29 am, georgec george.chap...@gmail.com wrote:
 I'm having all sorts of problems adding my own domain name to
 AppEngine. I've already signed up to Google Apps and utilise their
 email, docs etc.

 I logged into AppEngine and went Versions  Add Domain and entered
 my domain. It duly appeared in my Google Apps dashboard. When I click
 on it and Add new URL I can add something like info (http://
 info.example.com) but am unable to enter www (http://www.example.com/). It 
 goes through the motions but then doesn't appear
 on my list. and the DNS is all set up correctly in Network Solutions

 if it try to browse to www all I get is:

     The site you have requested could not be found. (404)

 Am I missing something completely obvious?

 thx
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: how to use google Analytics

2009-03-11 Thread WallyDD

This question might be better on the google analytics help board.

Can you see the code you inserted when you View Source?

A link to the page(s) in question might also be helpful.

On Mar 11, 9:22 am, Coonay fla...@gmail.com wrote:
 in order to use google  Analytics,the tracking code should be include
 into every page?i 've inserted the code, but it does't,
 could u mater tell me how to do it correctly?
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Web Server Startup problem

2009-03-11 Thread Ryan Lamansky

When you access the page, do you see another line appear in the
console output?

-Ryan

On Mar 11, 11:25 am, msuh m.salmanul...@yahoo.com wrote:
 Hey guys anyone having similar problem? Everything is ok, I start the
 server through dev_appserver and it starts showing this :
 programmerfish.com/screenshot.jpg

 Even though the server is running at localhost:8080 but when i try to
 access it, it displays 404 error. Browser settings are ok and I have
 also tried to reset the path of datastore but stilll doesnt work.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: appcfg.py made to exclude dirs/files?

2009-03-11 Thread Ryan Lamansky

You can manage what does and does not get uploaded using the app.yaml
file, described here: 
http://code.google.com/appengine/docs/python/tools/configuration.html

-Ryan

On Mar 11, 10:38 am, Jon jon.for...@gmail.com wrote:
 Just starting to look at GAE so I'm not certain that this is even an issue.

 Does appcfg.py only upload certain files, and if not, can it be told to 
 exclude certain files and dirs in your app?  For example, say I want to 
 exclude .hg or .bzr or .svn directories.

 Thanks, Jon
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Updating App Engine Project via Eclipse

2009-03-11 Thread Keith

I used the tutorial for setting up App Engine on Eclipse and
everything is working, including the ability to run the GAE server
locally and to update the latest version to the web.  However, when I
update my app - the console window asks for the user name/password as
usual - but actually displays the characters for my password (instead
of the echo characters I'd like to get that shield my password from
view).

I'm running everything on Windows.  Does anybody know how to fix this
issue?  Also, does Eclipse log the console data.  I'd rather not enter
my password into the Eclipse console if it's saving it, without
encryption, on my local machine.

Thanks for your help!

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] hello webapp 404 error

2009-03-11 Thread Mike Witt

Hello GAEers,

I am a complete newb on both GAE and python (I've mostly been in .net
for the last 4 or 5 years).  So I've probably just done something
ignorant here.

I've found that when I do the initial Hello World sample in the
getting started guide, which just has a few print statements,
everything is fine.  But then, when I go to the next example at
http://code.google.com/appengine/docs/python/gettingstarted/usingwebapp.html,
I get a 404 error.

I've reimplemented this on several machines and I always get the same
problem.  I've searched, but I haven't found this same issue so I'm a
little dumbfounded.  My appserver output looks like this:

DEBUG2009-03-11 18:03:20,878 dev_appserver.py] Matched /
favicon.ico to CGI dispatcher with path helloworld.py
DEBUG2009-03-11 18:03:20,878 dev_appserver.py] Executing CGI with
env:
{'APPLICATION_ID': 'helloworld',
 'AUTH_DOMAIN': 'gmail.com',
 'CONTENT_LENGTH': '',
 'CONTENT_TYPE': 'application/x-www-form-urlencoded',
 'CURRENT_VERSION_ID': '1.1',
 'GATEWAY_INTERFACE': 'CGI/1.1',
 'HTTP_ACCEPT': '*/*',
 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,*,utf-8',
 'HTTP_ACCEPT_LANGUAGE': 'en-US,en',
 'HTTP_CONNECTION': 'Keep-Alive',
 'HTTP_HOST': 'localhost:8080',
 'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US)
AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.48 Safari/
525.19',
 'PATH_INFO': '/favicon.ico',
 'PATH_TRANSLATED': 'd:\\dev\\apps\\helloworld\\helloworld.py',
 'QUERY_STRING': '',
 'REMOTE_ADDR': '127.0.0.1',
 'REQUEST_METHOD': 'GET',
 'SCRIPT_NAME': '',
 'SERVER_NAME': 'localhost',
 'SERVER_PORT': '8080',
 'SERVER_PROTOCOL': 'HTTP/1.0',
 'SERVER_SOFTWARE': 'Development/1.0',
 'TZ': 'UTC',
 'USER_EMAIL': ''}
DEBUG2009-03-11 18:03:20,878 dev_appserver.py] Reusing main()
function of module helloworld
INFO 2009-03-11 18:03:20,894 dev_appserver.py] GET /favicon.ico
HTTP/1.1 404 -
DEBUG2009-03-11 18:03:20,894 dev_appserver_index.py] No need to
update index.yaml

Any ideas, I'd sure be grateful!

Mike

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: appcfg.py made to exclude dirs/files?

2009-03-11 Thread Jon

doh.  there it is plain as day...skip_files...RTFM-a-little-slower :(

 
On Wed, 11 Mar 2009 11:27:54 -0700 (PDT)
Ryan Lamansky spam...@kardax.com wrote:

 
 You can manage what does and does not get uploaded using the app.yaml
 file, described here: 
 http://code.google.com/appengine/docs/python/tools/configuration.html
 
 -Ryan
 
 On Mar 11, 10:38 am, Jon jon.for...@gmail.com wrote:
  Just starting to look at GAE so I'm not certain that this is even an issue.
 
  Does appcfg.py only upload certain files, and if not, can it be told to 
  exclude certain files and dirs in your app?  For example, say I want to 
  exclude .hg or .bzr or .svn directories.
 
  Thanks, Jon
  

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Extracting a City from a PostalAddress

2009-03-11 Thread David Wolfe
The PostalAddressProperty appears to be just a string with some
authentication (though I haven't looked into how to authenticate.)  Which
begs the questions:

(1)  How does one extract, say, a City from a PostalAddressProperty ?
(2)  How does one select all Models with a postal address in, say, London?

I assume that to accomplish (2) with a query, one first needs to have
attached the City before saving a Model reducing the problem of solving
(2) to solving (1).

Thanks!

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] App Engine SDK Cheat Sheet

2009-03-11 Thread John

Hi All,

Not sure if you saw the blog post this morning, but we created a cheat
sheet:

http://googleappengine.googlecode.com/files/google_app_engine_cheat_sheet_119_1.pdf

We'd love your feedback. Feel free to post it on this thread.

If you're attending SxSW, please say hello!

Cheers,

John

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: A question for Jaiku's developers, if they're watching..

2009-03-11 Thread peterk

I've done a good bit of googling about what exactly it is I'm trying
to achieve, the correct terminology etc. and turns out I'm really
looking for an efficient way to do pub/sub, publication/subscription,
on appengine.

Which led me to this eyebrow-raising little app from Brett Slakin and
Brad Fitzpatrick:

http://code.google.com/p/pubsubhubbub/

Jaiku folk seem to be involved too.

Basically they have an experimental pub/sub system running on GAE,
using http instead of xmpp. The goals are somewhat broader than my
requirements - basically you have an atom feed at one url you post
data to, the atom feed updates a hub, and the hub then updates your
subscribers at different urls, so it's all a lot more distributed than
I need.

I imagine one could do something similar rolled into one application
that handles publishing, the hub, and subscription (e.g. like jaiku or
twitter). But the big minus point that sticks out here for me in
pubsubhubub is that it completely avoids the question of the total
write-cost per update. It can afford to do that because subscribers
here are distributed all over the place on different domains and
servers etc. so the write load gets spread across all those different
urls/machines..it's not the concern of the hub running on appengine.
But if pubs/subs/hub are all rolled into one application on appengine,
then your application will be soaking up the total write cost. The hub
handles updating each subscriber in the background, I think, so it
does solve the issue of writing to n subscribers in the space of one
request..the publisher issues its update to the hub, returns
immediately, and then the hub partitions out the subscriber updates
and works on updating everyone over time. But it doesn't solve the
issue of monetary cost of doing n writes for n subscribers...if one
publisher had lots of subscribers (e.g. hundreds of thousands or
millions), each of their updates could cost $$$!

But I guess one might be safe in assuming the average number of subs
per publisher will be much lower than that..and make the idea
financially feasible..

Anyway, I thought this project looked very interesting...it's giving
me a lot to chew on now..

On Mar 11, 3:50 pm, peterk peter.ke...@gmail.com wrote:
 Hmm. Good thinking Andrew. I've done a bit more digging along those
 lines..I don't think Jaiku has publically said if and what messaging
 protocols they might use, but there seems to be some speculation that
 it uses XMPP.

 That might also neatly align with their comment that they are in some
 cases extending GAE in their port..and the recent news that XMPP is
 scheduled to come to GAE at some point in the next 6 months. Perhaps
 it's the work on the Jaiku port that's bringing that functionality...

 I didn't know anything about messaging protocols or XMPP until I dug
 around after your post, so it's all new to me. I found a project
 purporting to provide XMPP functionality in advance of Google's
 official support, athttp://imified-demo.appspot.com/, but looking at
 the code for it, I cannot for the life of me see how this could be
 used to address the problems discussed in my original email. That
 project seems only to take instant messages via a POST to a URL and
 save them to the datastore..but there doesn't seem to be any of the
 'instant distribution' of updates to people subscribed to your
 presence etc. that other XMPP software boast about. Using that xmpp
 project linked, there doesn't seem to be anything there about pushing
 updates to subscribed users etc.

 I dug around the app gallery for other open source apps along similar
 lines..there are some would-be twitter/jaiku clones..all I've seen use
 non-messaging approaches, but they all make one compromise or another
 similar to solutions I'd come up with myself (e.g. taking the last 5
 updates from friends and sorting them yourself in memory by
 date..which has its own issues, for example, if one user had made 5
 updates recently..+  you'd inevitably hit a roadblock on all these
 reads beyond a certain number of friends..there's only so many friends
 you could do this for before it gets too slow).

 Any thoughts/ideas...?

 On Mar 11, 1:54 pm, Andrew Badera and...@badera.us wrote:

  you'd have to wonder if there's a push out to Gnip somewhere ... or if
  protocol buffers are involved ..

  Thanks-
  - Andy Badera
  - and...@badera.us
  - (518) 641-1280
  - Tech Valley Code Camp 2009.1:http://www.techvalleycodecamp.com/
  - Google me:http://www.google.com/search?q=andrew+badera

  On Wed, Mar 11, 2009 at 9:21 AM, peterk peter.ke...@gmail.com wrote:

   I just read on your blog (from January) the intention to release the
   appengine port of Jaiku as open source when the port is finished..but
   I was wondering if I could be so cheeky as to jump ahead with a couple
   of questions about it. The requirements of Jaiku seem to line up
   roughly similarly with issues I'm having in a slightly different
   context, that I'm finding pretty 

[google-appengine] Re: A question for Jaiku's developers, if they're watching..

2009-03-11 Thread bFlood

great find peterk! cant help but notice the very interesting
async_apiproxy.py code in that project either...async db and url calls
would be awesome

cheers
brian

On Mar 11, 3:22 pm, peterk peter.ke...@gmail.com wrote:
 I've done a good bit of googling about what exactly it is I'm trying
 to achieve, the correct terminology etc. and turns out I'm really
 looking for an efficient way to do pub/sub, publication/subscription,
 on appengine.

 Which led me to this eyebrow-raising little app from Brett Slakin and
 Brad Fitzpatrick:

 http://code.google.com/p/pubsubhubbub/

 Jaiku folk seem to be involved too.

 Basically they have an experimental pub/sub system running on GAE,
 using http instead of xmpp. The goals are somewhat broader than my
 requirements - basically you have an atom feed at one url you post
 data to, the atom feed updates a hub, and the hub then updates your
 subscribers at different urls, so it's all a lot more distributed than
 I need.

 I imagine one could do something similar rolled into one application
 that handles publishing, the hub, and subscription (e.g. like jaiku or
 twitter). But the big minus point that sticks out here for me in
 pubsubhubub is that it completely avoids the question of the total
 write-cost per update. It can afford to do that because subscribers
 here are distributed all over the place on different domains and
 servers etc. so the write load gets spread across all those different
 urls/machines..it's not the concern of the hub running on appengine.
 But if pubs/subs/hub are all rolled into one application on appengine,
 then your application will be soaking up the total write cost. The hub
 handles updating each subscriber in the background, I think, so it
 does solve the issue of writing to n subscribers in the space of one
 request..the publisher issues its update to the hub, returns
 immediately, and then the hub partitions out the subscriber updates
 and works on updating everyone over time. But it doesn't solve the
 issue of monetary cost of doing n writes for n subscribers...if one
 publisher had lots of subscribers (e.g. hundreds of thousands or
 millions), each of their updates could cost $$$!

 But I guess one might be safe in assuming the average number of subs
 per publisher will be much lower than that..and make the idea
 financially feasible..

 Anyway, I thought this project looked very interesting...it's giving
 me a lot to chew on now..

 On Mar 11, 3:50 pm, peterk peter.ke...@gmail.com wrote:

  Hmm. Good thinking Andrew. I've done a bit more digging along those
  lines..I don't think Jaiku has publically said if and what messaging
  protocols they might use, but there seems to be some speculation that
  it uses XMPP.

  That might also neatly align with their comment that they are in some
  cases extending GAE in their port..and the recent news that XMPP is
  scheduled to come to GAE at some point in the next 6 months. Perhaps
  it's the work on the Jaiku port that's bringing that functionality...

  I didn't know anything about messaging protocols or XMPP until I dug
  around after your post, so it's all new to me. I found a project
  purporting to provide XMPP functionality in advance of Google's
  official support, athttp://imified-demo.appspot.com/, but looking at
  the code for it, I cannot for the life of me see how this could be
  used to address the problems discussed in my original email. That
  project seems only to take instant messages via a POST to a URL and
  save them to the datastore..but there doesn't seem to be any of the
  'instant distribution' of updates to people subscribed to your
  presence etc. that other XMPP software boast about. Using that xmpp
  project linked, there doesn't seem to be anything there about pushing
  updates to subscribed users etc.

  I dug around the app gallery for other open source apps along similar
  lines..there are some would-be twitter/jaiku clones..all I've seen use
  non-messaging approaches, but they all make one compromise or another
  similar to solutions I'd come up with myself (e.g. taking the last 5
  updates from friends and sorting them yourself in memory by
  date..which has its own issues, for example, if one user had made 5
  updates recently..+  you'd inevitably hit a roadblock on all these
  reads beyond a certain number of friends..there's only so many friends
  you could do this for before it gets too slow).

  Any thoughts/ideas...?

  On Mar 11, 1:54 pm, Andrew Badera and...@badera.us wrote:

   you'd have to wonder if there's a push out to Gnip somewhere ... or if
   protocol buffers are involved ..

   Thanks-
   - Andy Badera
   - and...@badera.us
   - (518) 641-1280
   - Tech Valley Code Camp 2009.1:http://www.techvalleycodecamp.com/
   - Google me:http://www.google.com/search?q=andrew+badera

   On Wed, Mar 11, 2009 at 9:21 AM, peterk peter.ke...@gmail.com wrote:

I just read on your blog (from January) the intention to release the
appengine port of Jaiku 

[google-appengine] Re: App Engine SDK Cheat Sheet

2009-03-11 Thread Let Delete My Apps

Thanks :-)

On Mar 11, 7:44 pm, John skid...@google.com wrote:
 Hi All,

 Not sure if you saw the blog post this morning, but we created a cheat
 sheet:

 http://googleappengine.googlecode.com/files/google_app_engine_cheat_s...

 We'd love your feedback. Feel free to post it on this thread.

 If you're attending SxSW, please say hello!

 Cheers,

 John
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: My own domain

2009-03-11 Thread Marzia Niccolai
Hi,

Sometimes Google Sites or another service that had previously been mapped to
the 'www' domain does not get properly deleted.  Try following these
directions:
http://groups.google.com/group/google-appengine/web/deleting-existing-www-mapping-from-google-apps

-Marzia

On Wed, Mar 11, 2009 at 8:29 AM, georgec george.chap...@gmail.com wrote:


 I'm having all sorts of problems adding my own domain name to
 AppEngine. I've already signed up to Google Apps and utilise their
 email, docs etc.

 I logged into AppEngine and went Versions  Add Domain and entered
 my domain. It duly appeared in my Google Apps dashboard. When I click
 on it and Add new URL I can add something like info (http://
 info.example.com) but am unable to enter www (http://
 www.example.com/). It goes through the motions but then doesn't appear
 on my list. and the DNS is all set up correctly in Network Solutions

 if it try to browse to www all I get is:

The site you have requested could not be found. (404)

 Am I missing something completely obvious?

 thx

 


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Server Error A server error has occurred.

2009-03-11 Thread Marzia Niccolai
Hi,

When doing bulk deletes in App Engine, the datastore may begin to experience
the errors you have observed.  This is a known issue. After a short time it
should return to normal.

-Marzia

On Wed, Mar 11, 2009 at 10:10 AM, Jim jdeib...@gmail.com wrote:


 This seemed to get cleaned up overnight so I went back to deleting.
 It's now been 4 hours and data viewer is locked on server error 500.

 It's great that the rest of the site is working but there's nothing in
 the admin logs, etc. that gives me any idea when things will be
 working again.

 On Mar 10, 8:33 pm, Jim jdeib...@gmail.com wrote:
  Situation: trying to delete a bunch (100,000) entries in a table.
 
  Can't find drop table so the best that I've been able to come up with
  is deleting all of the entries.
 
  My app is apparently running fine - hard to tell with almost all the
  data gone.   But the data viewer is not happy.   It gives me the
  server error message when I try to delete the remaining entries it's
  showing me.  It gives me the error message if I try to go past the
  first screen.   And so on.
 
  Given a choice between alter table and delete table, I'll take delete
  table.  Let me copy from table1 to table2 and then delete table1.
 
  In this case, if I'd had alter table, I wouldn't have needed delete
  table.
 
  Any suggestions on how to get GAE to tidy itself up?
 
  Thanks!
 


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Google AdSense on App Engine

2009-03-11 Thread Let Delete My Apps

Yes, thanks.
I think computing resources = money
.
.
.
On Mar 11, 3:10 pm, Dennis Peterson dennisbpeter...@gmail.com wrote:
 I posted a feature request on this...it would be nice to have adsense
 feed directly into app engine fees, so it can all just run itself
 without you bothering with it. Then even a third-world kid with an
 OLPC could build a big site.

 If the adsense revenues fall short, respond to any excess hits with a
 donation page. For the kinds of sites that people feel charitable
 towards, this could work nicely.

 -d

 On Mon, Mar 9, 2009 at 12:40 PM, Ryan Lamansky spam...@kardax.com wrote:

  Yes.

  If you direct both AdSesnse and App Engine to the same bank account,
  it will pay for itself if your advertising income covers your resource
  usage fees.

  -Ryan

  On Mar 8, 12:11 pm, Let Delete My Apps davide.rogn...@gmail.com
  wrote:
  Idea:
  Can I put AdSense on my app to receive additional computing resources,
  instead to receive money?

  I saw:http://www.google.com/services/adsense_tour/index.html
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: *** BigTable vs SQLite vs MySQL ***

2009-03-11 Thread Let Delete My Apps

Ok :-)
Where is your documentation?
.
.
.
On Mar 10, 4:07 am, Ryan Lamansky spam...@kardax.com wrote:
 The App Engine datastore is pretty slow for individual actions.  It's
 specialty is being able to do those things with 50,000 concurrent
 users.

 -Ryan

 On Mar 9, 4:32 pm, Let Delete My Apps davide.rogn...@gmail.com
 wrote:

  Back to the past:

   I planned to migrate a python app ... but my tests on google engine

  was really bad, compare to sqlite or mysql.

 http://groups.google.com/group/google-appengine/browse_thread/thread/...

  Now?
  Does the Comparison Table exists?

  --http://pyoohtml.appspot.com/let-delete-my-apps/home
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] ### What is the best way for paginating a list of records? ###

2009-03-11 Thread Let Delete My Apps

What is the best way for paginating a list of records?

See 30. Object pagination
http://www.djangoproject.com/documentation/models/pagination/

 from django.core.paginator import Paginator
 paginator = Paginator(Article.objects.all(), 5)
 paginator.count
9
 paginator.num_pages
2
 paginator.page_range
[1, 2]

--
http://pyoohtml.appspot.com/let-delete-my-apps/home

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: ### What is the best way for paginating a list of records? ###

2009-03-11 Thread Dan Sanderson
http://code.google.com/appengine/articles/paging.html
-- Dan

On Wed, Mar 11, 2009 at 2:00 PM, Let Delete My Apps 
davide.rogn...@gmail.com wrote:


 What is the best way for paginating a list of records?

 See 30. Object pagination
 http://www.djangoproject.com/documentation/models/pagination/

  from django.core.paginator import Paginator
  paginator = Paginator(Article.objects.all(), 5)
  paginator.count
 9
  paginator.num_pages
 2
  paginator.page_range
 [1, 2]

 --
 http://pyoohtml.appspot.com/let-delete-my-apps/home

 


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: ### What is the best way for paginating a list of records? ###

2009-03-11 Thread Let Delete My Apps

Thanks :-)
Now I can not  Rate your post with 5 stars, why?
.
.
.
On Mar 11, 10:04 pm, Dan Sanderson dansander...@google.com wrote:
 http://code.google.com/appengine/articles/paging.html
 -- Dan

 On Wed, Mar 11, 2009 at 2:00 PM, Let Delete My Apps 

 davide.rogn...@gmail.com wrote:

  What is the best way for paginating a list of records?

  See 30. Object pagination
 http://www.djangoproject.com/documentation/models/pagination/

   from django.core.paginator import Paginator
   paginator = Paginator(Article.objects.all(), 5)
   paginator.count
  9
   paginator.num_pages
  2
   paginator.page_range
  [1, 2]

  --
 http://pyoohtml.appspot.com/let-delete-my-apps/home
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: problem with import django

2009-03-11 Thread arbi

Thanks for your answer :)
But finally I did it with the django patch instead of django helper.


On 11 mar, 19:05, WallyDD shaneb...@gmail.com wrote:
 What command are you using to call Django in your code?

 On Mar 11, 7:57 am, arbi arbin...@gmail.com wrote:

  Hi,
  While making google's tutorial (google-app-engine-django), I had
  exactly the same problem as mentioned here 
  :http://groups.google.fr/group/google-appengine/browse_thread/thread/7
  I create a new post to make my pb visible.

  It is an  importing django error. The warning I got is :

  [WARNING:root:Blocking access to skipped file /Users/brouard/
  mysite/.google_appengine/lib/django/django/foo]
  The problem comes from the . in the path : /.google_appengine/ that
  causes the no module named Django error.

  I have the 1.1.9 version of appengine. The SDK folder
  (google_appengine) is already in /usr/local.
  But I don't understand what Brett said in the forum :
  
  The fix should be not use the Django helper's little trick of keeping
  your SDK in .google_appengine but instead actually install it, or at
  least keep it outside of your app directory. That should prevent the
  skipped file blocking from interfering with your imports.
  
  How can I fix this pb? (I am kind of newb)
  Thx
  Arbi
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] 'module' object has no attribute 'Charfield'

2009-03-11 Thread arbi

Hi,
I am a beginner, because I think it is a simple issue :

class 'django.core.exceptions.ViewDoesNotExist': Tried start_page in
module routes.views. Error was: 'module' object has no attribute
'CharField'

In my routes.views I have the start_page def :

def start_page(request):
return render_to_response ('routes/index_search_template.html')

Did I forget to import something? Is it a problem linked to template?
Thanks a lot

Arbi
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Whats the max size that GAE allows to upload.

2009-03-11 Thread Wooble

A user can upload a file of up to 10 MB, however, datastore entities
are limited to 1MB, so if you're storing a larger file you'll need to
break it into smaller chunks.

Of course, if it's really not uploading at all this might not be
your problem.  What makes you think it's not uploading?

On Mar 11, 1:41 am, Hareem Ul Haque hareem.ha...@gmail.com wrote:
 Whats the max file size for an object that needs to be stored on GAE.
 I am trying to upload a simple wav file and its around 3mb and its not
 uploading at all.

 Any help is greatly apprecaited.

 Regards
 Hareem Ul Haque
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Thanks GAE team

2009-03-11 Thread Let Delete My Apps

Thank you for your work ;-)

On Mar 10, 8:36 pm, cz czer...@gmail.com wrote:
 The datastore seems to be unusually zippy today, whatever you googly
 types did yesterday sure worked. Beautiful!
 thanks,
 - Claude
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: A question for Jaiku's developers, if they're watching..

2009-03-11 Thread peterk

The app is actually live here:

http://pubsubhubbub.appspot.com/
http://pubsubhubbub-subscriber.appspot.com/

(pubsubhubbub-publisher isn't there, but it's trivial to upload your
own.)

This suggests it's working on appengine as it is now. Been looking
through the source, and I'm not entirely clear on how the 'background
workers' are actually working..there are two, one for pulling updates
to feeds from publishers, and one for propogating updates to
subscribers in batches.

But like I say, I can't see how they're actually started and running
constantly.  There is a video here of a live demonstration:

http://www.veodia.com/player.php?vid=fCNU1qQ1oSs

The background workers seem to be behaving as desired there, but I'm
not sure if they were just constantly polling some urls to keep the
workers live for the purposes of that demo, or if they're actually
running somehow constantly on their own.. I can't actually get the
live app at the urls above to work, but not sure if it's because
background workers aren't really working, or because i'm feeding it
incorrect urls/configuration etc.

On Mar 11, 8:01 pm, bFlood bflood...@gmail.com wrote:
 great find peterk! cant help but notice the very interesting
 async_apiproxy.py code in that project either...async db and url calls
 would be awesome

 cheers
 brian

 On Mar 11, 3:22 pm, peterk peter.ke...@gmail.com wrote:

  I've done a good bit of googling about what exactly it is I'm trying
  to achieve, the correct terminology etc. and turns out I'm really
  looking for an efficient way to do pub/sub, publication/subscription,
  on appengine.

  Which led me to this eyebrow-raising little app from Brett Slakin and
  Brad Fitzpatrick:

 http://code.google.com/p/pubsubhubbub/

  Jaiku folk seem to be involved too.

  Basically they have an experimental pub/sub system running on GAE,
  using http instead of xmpp. The goals are somewhat broader than my
  requirements - basically you have an atom feed at one url you post
  data to, the atom feed updates a hub, and the hub then updates your
  subscribers at different urls, so it's all a lot more distributed than
  I need.

  I imagine one could do something similar rolled into one application
  that handles publishing, the hub, and subscription (e.g. like jaiku or
  twitter). But the big minus point that sticks out here for me in
  pubsubhubub is that it completely avoids the question of the total
  write-cost per update. It can afford to do that because subscribers
  here are distributed all over the place on different domains and
  servers etc. so the write load gets spread across all those different
  urls/machines..it's not the concern of the hub running on appengine.
  But if pubs/subs/hub are all rolled into one application on appengine,
  then your application will be soaking up the total write cost. The hub
  handles updating each subscriber in the background, I think, so it
  does solve the issue of writing to n subscribers in the space of one
  request..the publisher issues its update to the hub, returns
  immediately, and then the hub partitions out the subscriber updates
  and works on updating everyone over time. But it doesn't solve the
  issue of monetary cost of doing n writes for n subscribers...if one
  publisher had lots of subscribers (e.g. hundreds of thousands or
  millions), each of their updates could cost $$$!

  But I guess one might be safe in assuming the average number of subs
  per publisher will be much lower than that..and make the idea
  financially feasible..

  Anyway, I thought this project looked very interesting...it's giving
  me a lot to chew on now..

  On Mar 11, 3:50 pm, peterk peter.ke...@gmail.com wrote:

   Hmm. Good thinking Andrew. I've done a bit more digging along those
   lines..I don't think Jaiku has publically said if and what messaging
   protocols they might use, but there seems to be some speculation that
   it uses XMPP.

   That might also neatly align with their comment that they are in some
   cases extending GAE in their port..and the recent news that XMPP is
   scheduled to come to GAE at some point in the next 6 months. Perhaps
   it's the work on the Jaiku port that's bringing that functionality...

   I didn't know anything about messaging protocols or XMPP until I dug
   around after your post, so it's all new to me. I found a project
   purporting to provide XMPP functionality in advance of Google's
   official support, athttp://imified-demo.appspot.com/, but looking at
   the code for it, I cannot for the life of me see how this could be
   used to address the problems discussed in my original email. That
   project seems only to take instant messages via a POST to a URL and
   save them to the datastore..but there doesn't seem to be any of the
   'instant distribution' of updates to people subscribed to your
   presence etc. that other XMPP software boast about. Using that xmpp
   project linked, there doesn't seem to be anything there about pushing
   

[google-appengine] Re: Passing Gqlquery() or get() result to template, then decide to iterate or not

2009-03-11 Thread Michael O'Brien

Hi Kev,

I wouldn't worry too much about querying vs. db.get - if you're
concerned about the performance measure both approaches so you can see
the difference for your app.

As for combining the templates though, you could just add square
brackets around the linked_item in SingleItem:

values = {'items': [linked_item]}

cheers
Michael

On Mar 10, 7:27 am, kd dias@gmail.com wrote:
 Hi,

 The homepage of my app displays a list of items with their content
 (might as well think of it as a blog), and you can also link to
 individual items. I'd like to use the same set of templates for both
 cases.

 So my handlers look something like this:
 -
 class MainPage(webapp.RequestHandler):
     def get(self):
         items = db.GqlQuery('SELECT * FROM Item')
         values = {'items': items}
         self.response.out.write(template.render('main.html', values))

 class SingleItem(webapp.RequestHandler):
     def get(self):
         key = #determine item key
         linked_item = db.get(key)
         values = {'linked_item': linked_item}
         self.response.out.write(template.render('main.html', values))
 -

 And here's main.html:
 -
 {% if linked_item %}
     {{ linked_item.content }}
 {% else %}
 {% for item in items %}
     {{ item.content }}
 {% endfor %}
 {% endif %}
 -

 This doesn't look like a great solution but I haven't been able to
 think of (or find) a better one. I've been told to use db.get when
 possible because it's faster, but the object it returns isn't iterable
 and so the template becomes awkward.

 Is there a way to put the return from db.get into an iterable object?
 That way I could simply have {% for item in items %}
 {{ item.content }} {% endfor %} in my template and it would work
 without errors.

 Should I just use a query instead of db.get? Any other solutions? I've
 been looking through GAE and Django template docs but haven't found
 anything yet.

 Any ideas, even a link to the right piece of documentation would be
 awesome.

 Thanks,
 Kev
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Application instances seem to be too aggressively recycled

2009-03-11 Thread johnP

That's an excellent point.  Can I assume that (if) I ever reach the
billing limit, the cache will last longer than 2 seconds?



On Mar 11, 11:00 am, peterh peter.hau...@gmail.com wrote:
 On Mar 11, 12:28 pm, johnP j...@thinkwave.com wrote:

  I've been tracking (and seeing) this for a while already.  Besides the
  latency that occurs each time Django gets re-zipimported, what is
  concerning is the thought of paying for CPUs to constantly reload the
  cache.  My app's not live yet - so there is some time before this
  becomes a $$$ problem for me, but...

 But how can you reach your billing limit if the issue is that you get
 low traffic in the first place? other than that, I agree, it would be
 great if this 2-sec limit was increased.

  I remain forever hopeful that it will be solved by then. :)

  On Mar 11, 4:26 am, Antonin Hildebrand antonin.hildebr...@gmail.com
  wrote:

   I can also confirm this behavior with my app, recycling takes place
   after about 2 seconds of inactivity. I also guess, that this recycling
   timeout had to be lowered by GAE team during last week, because I had
   running and working application on appspot. I did no updates to it and
   the app did break because of this change.

   On Mar 10, 6:22 pm, Jason C jason.a.coll...@gmail.com wrote:

We have a new application that receives _very_ little load. So little,
in fact, that each request spins up a new application instance. We are
using Django trunk and the import overhead is high. All of this yields
a long request (e.g., 8802ms) using a lot of CPU (e.g., 3247ms-cpu).

With very little load, it makes sense that instances are recycled. On
that assumption, we've started applying some primer load against a
couple of uris in an attempt to keep some instances hot. We're
applying around 1 request/second across 2 uris.

When we hit a hot instance, we get blazing speed (e.g., url_1: 73ms
91ms-cpu, url_2: 368ms 615ms-cpu - these values are pulled from the
App Engine console Logs tool and I'm not completely sure if this
represents Runtime, or combined Runtime/API - I believe the latter).

Under this 1 request/second load, we are still seeing lots of instance
startup - even after 40-50 minutes of sustained load. Subjectively,
the instance startups seem to come in bursts, though we've done no
formal analysis around this.

Does anyone else see this behavior? It _really_ kills our application
performance - so much so, that we're considering moving away from
Django in an effort to minimize the start-up pain.

Any info or war stories would be appreciated.


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: 502 Server Errors after upgrade?

2009-03-11 Thread Nick Winter

Wow, thanks for the attention, Brett!

We just did a big site update for our app, too, and have been running
around trying to fix critical bugs and get users back online, too, so
you've my sympathies.

I haven't been doing testing since you guys got the latency levels
down, since I did a big blitz right before overhauling the app to be
immune to increased latency (from the user's point of view). We still
have a lot of handlers running a few hundred ms cpu, but they haven't
been getting slammed like they were before, and I got a better version
of my one library that was taking 1300ms to import.

I think you've explained the unresolved mystery of why the handlers
were getting slammed so hard. We were using app caching, weren't
anywhere near 30 instances, and were getting hit bad even with no
datastore access and no instance startup costs--

--but the bit about scaling instances to match sustained throughput is
enlightening. I had thought that when Marzia said that prioritization
was per-request and not per-handler or per-app, that meant this sort
of thing (fast requests being deprioritized) wouldn't happen, and
that's why I was confused. The smaller requests slowing down because
of the big requests (which were mostly happening on instance startup
and were getting deprioritized hard) sounds like my issue. Requests
were very variable on the app, and so a sustained throughput
calculation would be significantly off from second to second or minute
to minute, which may not have helped things.

One thing we found out we could do at the developer chat was store a
lot more than we'd counted on in the memcache. Since we couldn't find
any limits posted, we were being (extremely, as it turns out)
conservative with memcache space. We'll be able to increase
performance in many places by putting more lookup tables in there. I
know that there are few guarantees when it comes to how much will fit
in there, but if Marzia has said that around 100MB is the right
ballpark, then perhaps some info can be put online so others can have
some estimate of its capacity.

After the dust's settled, I'm quite happy with App Engine performance,
and the ease of use has been a dream. Thanks for all your hard work!
--Nick
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Searching in GeoPt

2009-03-11 Thread niklas

These are the 3 clues all leaving more to wish:
1. mutiny.appspot.com is the official geopt app but has gears
dependency.
2. My similar (experimental) function filters according to lat/lng as
below.
adds = Adds.all()
L=[]
range = float(self.request.get('range'))
for t in adds:
  if t.geopt:
if t.geopt.lat  range  + float(self.request.get('lat')) and
t.geopt.lon  range  + float(self.request.get('lng')) and t.geopt.lat
 float(self.request.get('lat')) - range  and t.geopt.lon  float
(self.request.get('lng')) - range :
  L.append(thing)

3. geohash libraries might be more useful or a feature request issue
filed. It's an interesting issue.

Cheers
Niklas

On Mar 11, 12:05 pm, Dan Course dancou...@gmail.com wrote:
 Morning Group,

 Hope everyone's all good? Got a dev. problem driving me nuts and I
 can't figure out or find a simple solution throughout the posts.

 We're saving Lat/Lng in a GeoPt datatype. We then need to search
 within all those GeoPts for the nearest within a radius/square (range)

 eg, search?lat=2lng=5range=5metres

 What's the easiet way of sorting this? The bounding box method seems
 overly complex and crazy, are we just hoping for a simple solution to
 quite a complex solution?

 WHERE GEOPT NEAR (LAT=2, LNG=2)

 Any clues?

 Thanks,

 DanC
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Searching in GeoPt

2009-03-11 Thread Barry Hunter

There is no easy answer.

The datastore has no 'geoindex' built in, so the application developer
has to develop their own.

The bounding box one is probably one of the most complete examples.
Although there are other possibilities including more advanced geohash
based versions.

At somepoint the datastore may implement a  geoindex for you, but it
will probably use a similar implementation under the hood, until then
its upto you.


On 11/03/2009, Dan Course dancou...@gmail.com wrote:

  Morning Group,

  Hope everyone's all good? Got a dev. problem driving me nuts and I
  can't figure out or find a simple solution throughout the posts.

  We're saving Lat/Lng in a GeoPt datatype. We then need to search
  within all those GeoPts for the nearest within a radius/square (range)

  eg, search?lat=2lng=5range=5metres

  What's the easiet way of sorting this? The bounding box method seems
  overly complex and crazy, are we just hoping for a simple solution to
  quite a complex solution?

  WHERE GEOPT NEAR (LAT=2, LNG=2)

  Any clues?

  Thanks,

  DanC

  



-- 
Barry

- www.nearby.org.uk - www.geograph.org.uk -

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Intermittent upload problems this week

2009-03-11 Thread Brenton

Thanks Marzia.

I've been away from this machine for a few days, but this error is
still happening.  Oddly, it seems to be app-dependent:

application: test-insightdining //works fine
application: insightdining //causes the EOF error


I'll be leaving tomorrow for SXSW.  Hope to see some of you there.  =)
Brenton
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Cyclic Definition Problem

2009-03-11 Thread Brenton

 class PElement(PolyModel):
     name = db.StringProperty()
     pMethodInput = db.ReferenceProperty(collection_name='input')
     pMethodOutput = db.ReferenceProperty(collection_name='output')

^That's what I mean by not typing the RP.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Clarification of Term 4.4

2009-03-11 Thread Jason

Yes, using multiple app_ids like this is against the TOS. We are
building infrastructure to support your use case, however, so that you
do not need to use multiple application IDs. In the meantime, we are
happy to consider exceptions on a case-by-base basis. You can file
your request using the form at:

http://code.google.com/support/bin/request.py?contact_type=AppEngineMultiInstanceExceptionRequest

If you want more details, there are basically two ways of deploying a
single application to multiple domains:

1. Use a single app_id and build namespacing API hooks for your calls
to memcache and the datastore.  If you want to use the users API with
this solution, you'll have to stick with ordinary Google Accounts, not
Google Apps Accounts. For more on API hooks, see
http://code.google.com/appengine/articles/hooks.html

2. Use multiple app identifiers and bind each to a separate domain.
This solution allows for use of the users API with Google Apps
Accounts.

To support option 2, we will consider making exceptions to our terms
when it is clear that multiple identifiers are being used to deploy an
app to multiple different customers. That is, each application ID must
restrict authentication to a different Google Apps domain, and any
significant functionality (beyond splash pages, login pages, etc) must
be available only to members of these domains. To apply for an
exception, use the form linked above.

Cheers!
- Jason

On Mar 2, 4:55 pm, TAN KH tank...@gmail.com wrote:
 4.4. You may not develop multiple Applications to simulate or act as a
 single Application or otherwise access the Service in a manner intended
 to avoid incurring fees.

 Clarification

 I am currently developing my app to operate on 1 application instance
 per company/organisation. These application instances can have
 content/xml messages that flows in/out between them.
 Is this considered to be in violation of the above terms ?

 This would also mean that a large number of organisations
 equates to a large number of applications. Is this also considered a
 violation when I manage multiple application instances thru'
 multiple gmail accounts since there is a 10 application limit ?

 Appreciate the clarification.
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Data Storage Size - multiplier per object

2009-03-11 Thread WeatherPhilip

I think that some transparency on this from the GAE team would be
good. I would like to see in the control panel the size of each of the
indexes that has been built -- including the single property indexes
that are not shown. It would also be really nice to have a good way of
marking a property in a model as 'not to be indexed'. If it is a
string, then you can use a TextProperty type, but for all the other
types, you are stuck with indexed properties. In fact, I don't really
see why the process that autogenerates the index.yaml file shouldn't
include the single property indexes as well.

It may be that the optimal strategy is to take all the properties that
you don't want indexed and pickle them into blob on store, and
unpickle them on a get. However, this just doesn't seem like the right
approach

This is an area where some tools are really called for -- to allow us
to see where the datastore quota is actually being used.

Philip

On Mar 10, 12:30 pm, Jonathan Ultis jonathan.ul...@gmail.com wrote:
 Or better, take your raw data size excluding BlobProperty and
 TextProperty and multiply by 15x. I'm not sure what the multiplier is
 on the unindexed properties yet.


--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] problem occurs when i read chinese character from app engine database

2009-03-11 Thread DiveIntoGAE

the data in my app engine database was english characters. today i
directly use admin cosole to change them to chinese charactors, but
they just show none in the web page.what is wrong?
--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: *** BigTable vs SQLite vs MySQL ***

2009-03-11 Thread David Wilson

http://lmgtfy.com/?q=appengine+datastore+documentationl=1

2009/3/11 Let Delete My Apps davide.rogn...@gmail.com:

 Ok :-)
 Where is your documentation?
 .
 .
 .
 On Mar 10, 4:07 am, Ryan Lamansky spam...@kardax.com wrote:
 The App Engine datastore is pretty slow for individual actions.  It's
 specialty is being able to do those things with 50,000 concurrent
 users.

 -Ryan

 On Mar 9, 4:32 pm, Let Delete My Apps davide.rogn...@gmail.com
 wrote:

  Back to the past:

   I planned to migrate a python app ... but my tests on google engine

  was really bad, compare to sqlite or mysql.

 http://groups.google.com/group/google-appengine/browse_thread/thread/...

  Now?
  Does the Comparison Table exists?

  --http://pyoohtml.appspot.com/let-delete-my-apps/home
 




-- 
It is better to be wrong than to be vague.
  — Freeman Dyson

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] A dilemma of reading data from and saving data into app engine database!

2009-03-11 Thread DiveIntoGAE

If we don't use decode(utf-8), we can insert data into app engine
database easily, but the problem will occur when reading these data
from your database, some strings may show None in web pages.

if we use  decode(utf-8), some character can't insert into the
database,the error may similar to  'ascii' codec can't decode byte
0xe4 in position 0: ordinal not in range(128).

so if we avoid the problem when inseting data,the problem will occur
when we read them;but if we want to get rid of the problem when
reading the data,some data can't insert into the database.can anybody
solve this dilemma?

--~--~-~--~~~---~--~~
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 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---