[google-appengine] Is any geo database provide by google ?

2009-03-28 Thread service G2100
Is any geo database provide by google ?

like http://world-gazetteer.com/


Best Begards
Tom Wu

--~--~-~--~~~---~--~~
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] PolyModel needs to be rethought

2009-03-28 Thread Rein Petersen

Hi,

At risk of sounding too critical (believe me - i am so very
appreciative of GAE), something about PolyModel has been bothering me
enough that i must get it off my chest in the hope that it might be
reworked. The PolyModel was created to allow developers to access all
child entities through the base. i think it is an important ability
for the GAE and PolyModel addresses the need.

But, (here it comes) every extension (field) is stored in the same
table? (entity group) along with an extra field (list) that stores the
class names. The problem with this is that if you have an inheritance
hierarchy in which your outermost descendant(s) extend several fields,
you've loaded your base entities with a mass of irrelevant fields
containing an unusual missing (i've never seen that before).

if you are building an application that, say for example, reads the
fields (columns?) in the entity for display to the user (like the
Dashboard's Data Viewer), you end up presenting irrelevant fields. How
the unnecessary fetching of these extension fields affects performance
i cannot say but i would guess it is not helpful.

i tend to think that each subclass entity justifies its own distinct
table? / entity ? and would only contain the fields which extend it's
base class which resides in the same entity group as the parent.

PolyModel could then, instead, walk the parent chain adding fields as
necessary until it reaches the root entity. The subclassed entity
would be presented as a composite of all the fields within itself and
it's ascendants. since the superclass entities are assigned to the
subclass entities by parent, the reside in the same entity group and
shouldn't be an impediment to scalability or within a transaction

it seems to make so much sense to me that i can only guess there was
some obstacle preventing it being so and the only solution was what we
have now. if that is the case, please tell me so i can just give up on
this... otherwise comments are always welcome -

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] Mass removal of data from an app

2009-03-28 Thread Paul Kinlan
Hi,

I have about 10GB of used storage in an application (
http://www.thethumbthing.com, app_id websnapshot).  It was given as part of
a quota increase, I am trying to remove most of the data so that I am under
the quota limit when the application reverts to billing mode and so that I
can plan the app better.

I am deleting (well I am pretty sure I am deleting them) about 1000 rows at
a time about every minute, however I don't think at this pace I will have
reclaimed much space at all.

I am very keen on dropping the data as it is mostly transient.

Thanks,
Paul.

--~--~-~--~~~---~--~~
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: Mass removal of data from an app

2009-03-28 Thread Bill

Paul,

Have you tried out the remote_api as a way of deleting your entities?
Here's an article in case you missed it:
http://code.google.com/appengine/articles/remote_api.html

-Bill

On Mar 28, 2:22 am, Paul Kinlan paul.kin...@gmail.com wrote:
 Hi,

 I have about 10GB of used storage in an application 
 (http://www.thethumbthing.com, app_id websnapshot).  It was given as part of
 a quota increase, I am trying to remove most of the data so that I am under
 the quota limit when the application reverts to billing mode and so that I
 can plan the app better.

 I am deleting (well I am pretty sure I am deleting them) about 1000 rows at
 a time about every minute, however I don't think at this pace I will have
 reclaimed much space at all.

 I am very keen on dropping the data as it is mostly transient.

 Thanks,
 Paul.
--~--~-~--~~~---~--~~
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: Can C++ code be wrapped up on GAE?

2009-03-28 Thread GregF

As mentioned above, you can't run C++ on GAE. If you can easily
convert your C++ to python (or java - it seems that will be supported
soon), you can run it on GAE. This may be a better idea than it seems
- I wouldn't expose a C++ app to the internet without doing rigorous
security testing to make sure it can't be fuzzed. Switching to python
prevents this whole class of exploits.

Otherwise EC2 is a good production-ready option that will allow you to
run C++ (and anything else). I wouldn't trust a production app to
Azure just 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] Re: Is any geo database provide by google ?

2009-03-28 Thread Barry Hunter

No.

But they provide a verity of APIs
http://code.google.com/more/#products-geo-earth
http://code.google.com/apis/ajaxsearch/local.html

On 28/03/2009, service G2100 service.g2...@gmail.com wrote:
 Is any geo database provide by google ?

 like http://world-gazetteer.com/


 Best Begards
 Tom Wu


  



-- 
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: Sending Email

2009-03-28 Thread 'Αλκης Ευλογημένος
Try SchooGoo schoo...@shoogoo.com

On Sat, Mar 28, 2009 at 5:46 AM, Wiiboy jordon...@gmail.com wrote:


 My domain is schoolgoo.com
 So I set up the user schoo...@schoolgoo.com.  I send it as
 schoo...@schoolgoo.com (It gives an error if I use
 schoo...@schoolgoo.com).  The sender then shows up as 'schoogoo'. I
 guess that's Ok, but SchooGoo would be better.
 



-- 

Alkis

--~--~-~--~~~---~--~~
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: New Limits for Several App Engine Operations

2009-03-28 Thread David Symonds

On Sat, Mar 28, 2009 at 12:08 PM, ben b...@benmcgee.com wrote:

 So far I haven't deployed any apps onto Google's servers.  Does
 dev_appserver.py enforce the same limits as the real deal?

On the whole, no. It doesn't raise any datastore timeouts or anything
like that, since it's not an accurate simulation with respect to
performance. It should be enforcing limitations of things like index
requirements (if you enable it), allowed modules, GQL limitations,
etc.


Dave.

--~--~-~--~~~---~--~~
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] Bad Gateway errors at the worst of times

2009-03-28 Thread Tom

I get sporadic Bad Gateway errors that seem to come in clumps. (One
clump was bad enough that at least a few users of my Android phone
app have uninstalled.) What sort of details do I need to get in order
to figure out the cause?

I see no info in the GAE server logs. (I assume because the request
isn't even getting that far?)

For my requests I'm simply sending a MultipartEntity w/ StringBody
parts on the Android phone.
--~--~-~--~~~---~--~~
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: Bad Gateway errors at the worst of times

2009-03-28 Thread Tom M.

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

Is it suggested that I hit the winebythebar.appspot.com domain instead
of www.winebythebar.com?


On Mar 28, 8:51 am, Tom thomasfmc...@gmail.com wrote:
 I get sporadic Bad Gateway errors that seem to come in clumps. (One
 clump was bad enough that at least a few users of my Android phone
 app have uninstalled.) What sort of details do I need to get in order
 to figure out the cause?

 I see no info in the GAE server logs. (I assume because the request
 isn't even getting that far?)

 For my requests I'm simply sending a MultipartEntity w/ StringBody
 parts on the Android phone.
--~--~-~--~~~---~--~~
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: Sending Email

2009-03-28 Thread David Wilson

AFAIK AppEngine strips the display name part, annoyingly. This was
true a few months ago anyway.


David.

2009/3/28 Alkis Evlogimenos ('Αλκης Ευλογημένος) evlogime...@gmail.com:
 Try SchooGoo schoo...@shoogoo.com

 On Sat, Mar 28, 2009 at 5:46 AM, Wiiboy jordon...@gmail.com wrote:

 My domain is schoolgoo.com
 So I set up the user schoo...@schoolgoo.com.  I send it as
 schoo...@schoolgoo.com (It gives an error if I use
 schoo...@schoolgoo.com).  The sender then shows up as 'schoogoo'. I
 guess that's Ok, but SchooGoo would be better.




 --

 Alkis

 




-- 
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] Re: does GAE use just-in-time (JIT) compiler?

2009-03-28 Thread Luis Gonzalez

Psyco is a c module, so no. It is not supported in GAE.
That's the reason why most extension modules are not supported. Only
pure python modules are.

By the way, there's a new project started by Google engineers to speed
up python.
It aims to be at least 5x faster and, amongst other goals, to be
usable on GAE.
I read somewhere that it is already being used for serving traffic in
Youtube:
http://code.google.com/p/unladen-swallow/wiki/ProjectPlan

Luis

On 28 mar, 00:16, Coonay fla...@gmail.com wrote:
 a JIT compiler like psyco0 will make python running 5x faster,
 i don't know if the code in GAE will be conpiled with jit enable?

 On Mar 27, 11:06 pm, Coonay fla...@gmail.com wrote:

  does GAE use just-in-time (JIT) compiler?
--~--~-~--~~~---~--~~
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: Does TOS allow multiple versions of one app that do different things?

2009-03-28 Thread Andy Freeman

The class/__new__ trick isn't the only way to implement a proxy - a
function works just as well.

If the handlers for several pages are in the same file, one can use a
single proxy for all of them.

Replace import file1 and ('/pathn', PathnPage) with ('/pathn',
File1Proxy('PathnPage')) and

def File1Proxy(name):
def call(*args, **kwds):
import file1
return getattr(file1, name)(*args, **kwds)
return call

I still don't know how to write a proxy that takes the file as a
parameter.

On Mar 27, 6:38 pm, Andy Freeman ana...@earthlink.net wrote:
 It's easy enough to load the relevant part of the framework after
 the dispatch.

 Use ('/path', Proxy) instead of ('/path', Real) and in a module that
 does not load any of your framework, define Proxy as:

 class Proxy(object):
     def __new__(cls, *args, **kwds):
         from file import Real
         return Real(*args, **kwds)

 That definition of Proxy assumes that file contains Real's definition.

 Someone who actually knows Python might be able to come up with a
 generic proxy.  Me, I'd need decent macros.

 On Mar 27, 1:19 pm, cz czer...@gmail.com wrote:



  The problem with the app.yaml solution is that only the handler that
  has a main() will be cached (I assume that the app cache expects just
  one main() per app). It would be possible to perform a dispatch in main
  () to different handlers but it gets a little more messy since you
  would have to do this before referencing or loading any frameworks
  (unless the handlers all share the same framework in which case this
  discussion is moot).
  From what I understand, versions can have arbitrary names (not just
  numbers) so versions are, in a sense, just different apps that share
  quotas and datastore. Only the default can be associated with a Google
  app domain though. Otherwise the version name is basically another
  kind of app name, which makes it possible to have multiple main()'s
  and a mix of frameworks that can be optimized for certain kinds of
  requests. It also makes the code a little more straightforward...
  - Claude

  On Mar 26, 11:46 pm, Robert rjaa...@gmail.com wrote:

   Hi,

   you could also in your app.yaml simply define a dedicated/different
   handler for e.g. those images as they presumably are all under another
   URL. Then you don't need to think/worry so much about different
   versions.

   Just my 2cts.

   Robert

   On Mar 27, 12:50 am, Tom M. thomasfmc...@gmail.com wrote:

A very clever solution.

On Mar 26, 6:31 pm, cz czer...@gmail.com wrote:

 Awesome, thanks Jeff. I think doing it this way would make my app use
 less resources in general which is good for everybody.
 - Claude

 On Mar 26, 2:25 pm, Jeff S j...@google.com wrote:

  Hi Claude,

  On Mar 25, 8:27 pm, cz czer...@gmail.com wrote:

   The reason I ask this is for the following scenario:
   My main app uses Django 1.x and has fairly low, but quite useful 
   ;),
   traffic thus often requiring a cold start. It incurs significant
   startup time and so the initial requests are quite slow. The pages
   also contain lots of images uploaded by users which in turn are
   initially very slow to serve up.
   What I'd like to do is use a lighter weight framework just to 
   serve
   images and other pseudo-static content. It would be fairly
   straightforward to simply create a special version of the app that
   when installed has direct access to the same datastore and can be 
   very
   fast. This wouldn't ever be set as the default version of course, 
   but
   would still be 'a part of' the default app and it would be using 
   the
   same quota bank and hopefully wouldn't be a violation of the TOS.
   Anways, after reading the TOS I couldn't find an answer to this.

   So, in case none of this makes much sense the gist of the 
   question is
   can I have two versions of the app live at the same time (only one
   being the default)?
   Say my app id is 'foo'. I upload 'foo' version 5 and then I also
   upload a 'foo' version 6 with a different main.py and code that is
   optimized for a specific kind of content (eg. images, no 
   templates).
   Version 5 is set as the default but generates pages with image 
   urls
   that point to version 6.

  This would be fine since you are talking about using two versions
  under the same app ID. Quotas are applied based on the app ID (not
  further down on the version level), so sending traffic to multiple
  versions would be pulling from the same quota pool.

  Good question,

  Jeff

   Can I do this under the TOS and still be a good GAE citizen?

   thanks,
   - Claude- Hide quoted text -

  - Show quoted text -- Hide quoted text -

 - Show quoted text -
--~--~-~--~~~---~--~~
You received this message because you are 

[google-appengine] Re: Sending Email

2009-03-28 Thread Wiiboy



On Mar 28, 6:07 am, David Wilson d...@botanicus.net wrote:
 AFAIK AppEngine strips the display name part, annoyingly. This was
 true a few months ago anyway.


Yup, still does, for me anyway.
--~--~-~--~~~---~--~~
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: Does TOS allow multiple versions of one app that do different things?

2009-03-28 Thread Andy Freeman

It's not clear that the app cache expects only one main() per app.  I
think that the documentation says that it will cache a main() for each
handler.

http://code.google.com/appengine/docs/python/tools/configuration.html#Script_Handlers
says that that an application can have multiple handlers.

http://code.google.com/appengine/docs/python/runtime.html#App_Caching
says: If a handler script provides a main() routine, the runtime
environment also caches the script.  Note - a handler.

Given those two sections, I suspect that the app cache will save a main
() for each handler.

Perhaps someone from Google will comment.

On Mar 27, 1:19 pm, cz czer...@gmail.com wrote:
 The problem with the app.yaml solution is that only the handler that
 has a main() will be cached (I assume that the app cache expects just
 one main() per app). It would be possible to perform a dispatch in main
 () to different handlers but it gets a little more messy since you
 would have to do this before referencing or loading any frameworks
 (unless the handlers all share the same framework in which case this
 discussion is moot).
 From what I understand, versions can have arbitrary names (not just
 numbers) so versions are, in a sense, just different apps that share
 quotas and datastore. Only the default can be associated with a Google
 app domain though. Otherwise the version name is basically another
 kind of app name, which makes it possible to have multiple main()'s
 and a mix of frameworks that can be optimized for certain kinds of
 requests. It also makes the code a little more straightforward...
 - Claude

 On Mar 26, 11:46 pm, Robert rjaa...@gmail.com wrote:



  Hi,

  you could also in your app.yaml simply define a dedicated/different
  handler for e.g. those images as they presumably are all under another
  URL. Then you don't need to think/worry so much about different
  versions.

  Just my 2cts.

  Robert

  On Mar 27, 12:50 am, Tom M. thomasfmc...@gmail.com wrote:

   A very clever solution.

   On Mar 26, 6:31 pm, cz czer...@gmail.com wrote:

Awesome, thanks Jeff. I think doing it this way would make my app use
less resources in general which is good for everybody.
- Claude

On Mar 26, 2:25 pm, Jeff S j...@google.com wrote:

 Hi Claude,

 On Mar 25, 8:27 pm, cz czer...@gmail.com wrote:

  The reason I ask this is for the following scenario:
  My main app uses Django 1.x and has fairly low, but quite useful ;),
  traffic thus often requiring a cold start. It incurs significant
  startup time and so the initial requests are quite slow. The pages
  also contain lots of images uploaded by users which in turn are
  initially very slow to serve up.
  What I'd like to do is use a lighter weight framework just to serve
  images and other pseudo-static content. It would be fairly
  straightforward to simply create a special version of the app that
  when installed has direct access to the same datastore and can be 
  very
  fast. This wouldn't ever be set as the default version of course, 
  but
  would still be 'a part of' the default app and it would be using the
  same quota bank and hopefully wouldn't be a violation of the TOS.
  Anways, after reading the TOS I couldn't find an answer to this.

  So, in case none of this makes much sense the gist of the question 
  is
  can I have two versions of the app live at the same time (only one
  being the default)?
  Say my app id is 'foo'. I upload 'foo' version 5 and then I also
  upload a 'foo' version 6 with a different main.py and code that is
  optimized for a specific kind of content (eg. images, no templates).
  Version 5 is set as the default but generates pages with image urls
  that point to version 6.

 This would be fine since you are talking about using two versions
 under the same app ID. Quotas are applied based on the app ID (not
 further down on the version level), so sending traffic to multiple
 versions would be pulling from the same quota pool.

 Good question,

 Jeff

  Can I do this under the TOS and still be a good GAE citizen?

  thanks,
  - Claude- 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] New to google app engine stuff...

2009-03-28 Thread Aaron

Hi, I just got hired in some job to basicly  update and make changes
to their website. So I already coded the changes in html and css. I
currently need to get a hold on the server sided scripts. I am used to
using php.

Now they told me they are using google to host the website. This was
news to me. I never heard google offers website hosting services.

So I got  here and the ceo of the company that I work for. He told me
that the old guy used  google app engine.

From what I learned in programming. Engines are usally to assist
programmers to make applications  or to intergrad your software or web
app with someone elses software.

So I am thinking google apps engine is a engine that helps you make
web applications to host on google.

Now I am thinking web apps as in software type stuff for the website.
So  I thought it's like for exmple.

If I want people to be able to access their gmail account from my site
I would need this google app engine to build a application that I can
put it on my website.

I don't understand how you can make a website with google apps engine?

I am used to the regular way of website hosting  where you upload
files and config the server or settings your hosting company allows
you to change.

So you can make one file the default file where the users would see
when they type your domain name.

So can someone explain how it's done with google apps?

I also got admin rights well they call it developer rights.

they use their own domain name.
--~--~-~--~~~---~--~~
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: PolyModel needs to be rethought

2009-03-28 Thread Andy Freeman

 The problem with this is that if you have an inheritance
 hierarchy in which your outermost descendant(s) extend several fields,
 you've loaded your base entities with a mass of irrelevant fields
 containing an unusual missing (i've never seen that before).

I'm pretty sure that the base entities (the things in the datastore)
don't have those fields.

The missing message comes from a tool that is looking at instances
pulled from the datastore.  It expects to see things and when it
doesn't, it says missing.

 if you are building an application that, say for example, reads the
 fields (columns?) in the entity for display to the user (like the
 Dashboard's Data Viewer), you end up presenting irrelevant fields.

That happens only if your application doesn't understand polymodels.
I'm still working through the details because not polymodels don't
support class_name() and polymodels don't support anything like
db.class_for_kind().  However, properties() appears to do the right
thing.

One good reason for implementing Polymodels with a single entity type
is that implementing them with multiple entity types would make
queries a lot more expensive.

If polymodels were implemented with multiple entity types, each
application-level query would need to make multiple datastore queries,
one for each applicable datastore entity type.  If those queries are
done in the datastore (as with in queries), the datastore needs to
know some things that it doesn't currently know and the 30 datastore
queries per application query limit comes into play.  If those
queries are done in the application run time, limits (and maybe
transactions) will behave differently.

I think that __key__ can be made to work across multiple entity types,
but wouldn't be surprised if implementing PolyModel with multiple
multiple entity types raised issues there as well.

BTW - entity groups for transaction purposes have nothing to do with
entity types or polymodels.  They're really entity instance groups
because they are defined wrt key name hierarchies.

On Mar 27, 11:54 pm, Rein Petersen rein.peter...@gmail.com wrote:
 Hi,

 At risk of sounding too critical (believe me - i am so very
 appreciative of GAE), something about PolyModel has been bothering me
 enough that i must get it off my chest in the hope that it might be
 reworked. The PolyModel was created to allow developers to access all
 child entities through the base. i think it is an important ability
 for the GAE and PolyModel addresses the need.

 But, (here it comes) every extension (field) is stored in the same
 table? (entity group) along with an extra field (list) that stores the
 class names. The problem with this is that if you have an inheritance
 hierarchy in which your outermost descendant(s) extend several fields,
 you've loaded your base entities with a mass of irrelevant fields
 containing an unusual missing (i've never seen that before).

 if you are building an application that, say for example, reads the
 fields (columns?) in the entity for display to the user (like the
 Dashboard's Data Viewer), you end up presenting irrelevant fields. How
 the unnecessary fetching of these extension fields affects performance
 i cannot say but i would guess it is not helpful.

 i tend to think that each subclass entity justifies its own distinct
 table? / entity ? and would only contain the fields which extend it's
 base class which resides in the same entity group as the parent.

 PolyModel could then, instead, walk the parent chain adding fields as
 necessary until it reaches the root entity. The subclassed entity
 would be presented as a composite of all the fields within itself and
 it's ascendants. since the superclass entities are assigned to the
 subclass entities by parent, the reside in the same entity group and
 shouldn't be an impediment to scalability or within a transaction

 it seems to make so much sense to me that i can only guess there was
 some obstacle preventing it being so and the only solution was what we
 have now. if that is the case, please tell me so i can just give up on
 this... otherwise comments are always welcome -

 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: users.get_current_user() returns previous logged out domain user

2009-03-28 Thread Peter Cooper
Parth,

I would clear all cookies and then try logoff/logon again. If that doesn't
work, then do a work around. I haven't done any gadget connection work
between Sites and GAE, but I would be surprised if Google created persistent
session stores of logon information between a gadget and GAE. Logon info
that persists after a logoff suggests a cookie to me. Would be interested in
the solution, if you have time to post it.

Peter

On Fri, Mar 27, 2009 at 12:09 AM, Parth parth...@gmail.com wrote:


 Hi,

 I have a GAE app that is restricted to a domain and I access this GAE
 App using its url in a Google Gadget.

 It works fine but the problem happens when I logout of the domain and
 then login again as another user of same domain.
 When I login as the second user, users.get_current_user() still
 returns me the previous logged out user .

 I Have added the Gadget to my page on Google Sites.

 For instance, If my domain is foo.com

 I have a page mypage on foo.com

 On this page I have added a Google Gadget that has content type Url
 and src set to my GAE app.

 Hope this explains the problem.




 


--~--~-~--~~~---~--~~
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: users.get_current_user() returns previous logged out domain user

2009-03-28 Thread gops

can you make sure using firebug--or something-- that your browser
actually make the request ...

i had this problem before and i had to add random number at the end of
the url to make it request again...

can anyone tell , which should be the ideal response in terms of
Expire date , Cache control  or Last modified for authenticated
pages ,
i think the default response is not working here.is there anybody
who has the same problem??

On Mar 27, 12:09 pm, Parth parth...@gmail.com wrote:
 Hi,

 I have a GAE app that is restricted to a domain and I access this GAE
 App using its url in a Google Gadget.

 It works fine but the problem happens when I logout of the domain and
 then login again as another user of same domain.
 When I login as the second user, users.get_current_user() still
 returns me the previous logged out user .

 I Have added the Gadget to my page on Google Sites.

 For instance, If my domain is foo.com

 I have a page mypage on foo.com

 On this page I have added a Google Gadget that has content type Url
 and src set to my GAE app.

 Hope this explains the problem.
--~--~-~--~~~---~--~~
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 Geocoding not working

2009-03-28 Thread Donnie Demuth

Hi Ehmo, did you find the solution for this?  I'm running into the
same problem.  I know the key is correct but the geo-coding service is
throwing the 601.  Are you still using the proxy or did you ditch the
app engine completely?

On Feb 17, 4:54 am, ehmo disku...@gmail.com wrote:
 I did register it for API key but it's not working. I tried almost
 everything, and now i just made another script on another domain,
 which is doing all this thing instead of GAE. But it's annoying if i
 can't use google service in google service.

 ehmo

 Barry wrote,

  I beleive you need to register the key for the {appid}.appspot.com
  domain, due to the way urlfetch sends the HTTP referer header. (even
  if you
  However appengine is a shared system and urlfetch uses a proxy and the
  API geocoder limits requests by IP address. For that reason Jarek's
  advice to use the ajax method is probably best - that way the request
  comes from the users IP which is less likly to be throttled.
  On 17/02/2009, ehmo disku...@gmail.com wrote:

   Hey guys,
   i'm trying to use Google Geocoding service
   http://code.google.com/apis/maps/documentation/geocoding/index.html
   via http.
   I generated API key for actual domain and it's not working {u'Status':
   {u'code': 610, u'request': u'geocode'}, u'name': u'Brno'}.
   610 mean it's not good key for this domain. I tryied it on another
   hosting with php, it's working. I tryied it on another hosting with
   same python lib and it's working too. I tryied to use urlfetch and
   urllib2, nothing works.
   Any idea?

   Maybe it's because of header restrictions, but i really don't know.
   That link, which is called is ok, coz if i'll try it in browser,
   everything works. All data are encoded before posting, there is 100%
   not problem.

   Thnx for 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] Re: Does TOS allow multiple versions of one app that do different things?

2009-03-28 Thread Robert

Thanks Andy.

I tried a second handler as I'd sketched out earlier in the thread,
i.e. without it being the main.py. I then later made that handler
the main.py, but did not see any differences in performance. Would
indeed be nice for someone from Google to chime in

Robert

On Mar 28, 6:09 pm, Andy Freeman ana...@earthlink.net wrote:
 It's not clear that the app cache expects only one main() per app.  I
 think that the documentation says that it will cache a main() for each
 handler.

 http://code.google.com/appengine/docs/python/tools/configuration.html...
 says that that an application can have multiple handlers.

 http://code.google.com/appengine/docs/python/runtime.html#App_Caching
 says: If a handler script provides a main() routine, the runtime
 environment also caches the script.  Note - a handler.

 Given those two sections, I suspect that the app cache will save a main
 () for each handler.

 Perhaps someone from Google will comment.

 On Mar 27, 1:19 pm, cz czer...@gmail.com wrote:

  The problem with the app.yaml solution is that only the handler that
  has a main() will be cached (I assume that the app cache expects just
  one main() per app). It would be possible to perform a dispatch in main
  () to different handlers but it gets a little more messy since you
  would have to do this before referencing or loading any frameworks
  (unless the handlers all share the same framework in which case this
  discussion is moot).
  From what I understand, versions can have arbitrary names (not just
  numbers) so versions are, in a sense, just different apps that share
  quotas and datastore. Only the default can be associated with a Google
  app domain though. Otherwise the version name is basically another
  kind of app name, which makes it possible to have multiple main()'s
  and a mix of frameworks that can be optimized for certain kinds of
  requests. It also makes the code a little more straightforward...
  - Claude

  On Mar 26, 11:46 pm, Robert rjaa...@gmail.com wrote:

   Hi,

   you could also in your app.yaml simply define a dedicated/different
   handler for e.g. those images as they presumably are all under another
   URL. Then you don't need to think/worry so much about different
   versions.

   Just my 2cts.

   Robert

   On Mar 27, 12:50 am, Tom M. thomasfmc...@gmail.com wrote:

A very clever solution.

On Mar 26, 6:31 pm, cz czer...@gmail.com wrote:

 Awesome, thanks Jeff. I think doing it this way would make my app use
 less resources in general which is good for everybody.
 - Claude

 On Mar 26, 2:25 pm, Jeff S j...@google.com wrote:

  Hi Claude,

  On Mar 25, 8:27 pm, cz czer...@gmail.com wrote:

   The reason I ask this is for the following scenario:
   My main app uses Django 1.x and has fairly low, but quite useful 
   ;),
   traffic thus often requiring a cold start. It incurs significant
   startup time and so the initial requests are quite slow. The pages
   also contain lots of images uploaded by users which in turn are
   initially very slow to serve up.
   What I'd like to do is use a lighter weight framework just to 
   serve
   images and other pseudo-static content. It would be fairly
   straightforward to simply create a special version of the app that
   when installed has direct access to the same datastore and can be 
   very
   fast. This wouldn't ever be set as the default version of course, 
   but
   would still be 'a part of' the default app and it would be using 
   the
   same quota bank and hopefully wouldn't be a violation of the TOS.
   Anways, after reading the TOS I couldn't find an answer to this.

   So, in case none of this makes much sense the gist of the 
   question is
   can I have two versions of the app live at the same time (only one
   being the default)?
   Say my app id is 'foo'. I upload 'foo' version 5 and then I also
   upload a 'foo' version 6 with a different main.py and code that is
   optimized for a specific kind of content (eg. images, no 
   templates).
   Version 5 is set as the default but generates pages with image 
   urls
   that point to version 6.

  This would be fine since you are talking about using two versions
  under the same app ID. Quotas are applied based on the app ID (not
  further down on the version level), so sending traffic to multiple
  versions would be pulling from the same quota pool.

  Good question,

  Jeff

   Can I do this under the TOS and still be a good GAE citizen?

   thanks,
   - Claude- 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] Internal server error during update

2009-03-28 Thread Wiiboy

Hi,
I'm running Django and app-engine-patch 1.0.  When I enter appcfg.py
update ../app it responds with:
Scanning files on local disk.
Scanned 500 files.
Initiating update.
2009-03-28 17:14:23,647 ERROR appcfg.py:1235 An unexpected error
occurred. Aborting.
Traceback (most recent call last):
  File /home/wiiboy/Desktop/apps/google/appengine/tools/appcfg.py,
line 1213, in DoUpload
missing_files = self.Begin()
  File /home/wiiboy/Desktop/apps/google/appengine/tools/appcfg.py,
line 1009, in Begin
version=self.version, payload=self.config.ToYAML())
  File /home/wiiboy/Desktop/google_appengine/google/appengine/tools/
appengine_rpc.py, line 303, in Send
f = self.opener.open(req)
  File /usr/lib64/python2.5/urllib2.py, line 387, in open
response = meth(req, response)
  File /usr/lib64/python2.5/urllib2.py, line 498, in http_response
'http', request, response, code, msg, hdrs)
  File /usr/lib64/python2.5/urllib2.py, line 425, in error
return self._call_chain(*args)
  File /usr/lib64/python2.5/urllib2.py, line 360, in _call_chain
result = func(*args)
  File /usr/lib64/python2.5/urllib2.py, line 506, in
http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 500: Internal Server Error
Error 500: --- begin server output ---

Server Error (500)
A server error has occurred.
--- end server output ---


What's up?
--~--~-~--~~~---~--~~
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: Internal server error during update

2009-03-28 Thread Wiiboy

Ok, now it says:
Your application has exceeded a quota: App Config Service Config App
Call Count

But what is that quota?  According to Quota Details, I have deployed
103 times in the past day.
--~--~-~--~~~---~--~~
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] sorting database entities by two properties

2009-03-28 Thread manuelaraoz

Hi there!

I want to know if this can be done efficiently:
I need to sort some database's entities first by one property, and if
there's a tie, to sort them by other property

for example, lets have the following:

class Person(db.Model):

age = IntegerProperty()
height_in_cm = IntegerProperty()

how can I sort first by age, but if I have two people with the same
age, to sort them by height_in_cm

I hope I made myself clear
and thanks in advance for your help

Manuel
--~--~-~--~~~---~--~~
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: One Page at a Time

2009-03-28 Thread niklas

Hello,
GAE REST predefines pagination with sorting with no additional code
needed. It only lacks a link or button named 'next'.
It enables user selectable sort order and pagination from the http get
query for the first 10 elements sorted by for example date modified:
content(type='Entity')?order=modif...@dfrom=0to=10
and elements 10 to 20 sorted by date
content(type='Entity')?order=modif...@dfrom=10to=20
or sorted by price
content(type='Entity')?order=pr...@dfrom=10to=20
Regards
Niklas
http://github.com/fczuardi/gae-rest/tree/master
On Mar 28, 3:03 am, ben b...@benmcgee.com wrote:
 That is a great article.  I learned alot!

 Of course, having my cake is simply not enough. :-)  Is it possible to
 have user selectable sort order AND pagination?  My guess is that
 things get quit a lot more complicated at this point...

 On Mar 27, 3:51 pm, djidjadji djidja...@gmail.com wrote:

 http://code.google.com/appengine/articles/paging.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: sorting database entities by two properties

2009-03-28 Thread gops

you need to do one sort in datastore , while other in memory. (google
don't allow both simultaneously..).

there should be less people with same height than there are with same
age. ( this could be subjective...if your database span over all the
ages , there are 5 year old to 80 year old . a span of 75 ,
while most height data fits within 150 to 200 range .. span of
50).  so , you should first sort by height in datastore and than
sort by ages in memory...

just my one and a half cent. :)

regards,
Gopal Patel

On Mar 29, 9:01 am, manuelaraoz manuelar...@gmail.com wrote:
 Hi there!

 I want to know if this can be done efficiently:
 I need to sort some database's entities first by one property, and if
 there's a tie, to sort them by other property

 for example, lets have the following:

 class Person(db.Model):

     age = IntegerProperty()
     height_in_cm = IntegerProperty()

 how can I sort first by age, but if I have two people with the same
 age, to sort them by height_in_cm

 I hope I made myself clear
 and thanks in advance for your help

 Manuel
--~--~-~--~~~---~--~~
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: sorting database entities by two properties

2009-03-28 Thread David Symonds

On Sun, Mar 29, 2009 at 3:01 PM, manuelaraoz manuelar...@gmail.com wrote:

 class Person(db.Model):

age = IntegerProperty()
height_in_cm = IntegerProperty()

 how can I sort first by age, but if I have two people with the same
 age, to sort them by height_in_cm

You could create a synthetic property that you sort on instead:

  age_height_sort = db.IntegerProperty()

You can set it in a put() override:

  def put(self):
self.age_height_sort = self.age*1000 + self.height_in_cm
return super(Person, self).put()

Then you can just order by that synthetic property:

  Person.all().order('age_height_sort')



Dave.

--~--~-~--~~~---~--~~
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] memcache won't be flushed after app is redeployed

2009-03-28 Thread Coonay

the data strore is cleaned ,then i redeploy my app,next access my app
via chrome,i found there are stale date in the memcache ,and i make
sure these data has been deleted using the data viewer,
My question is :
won't the  memcache be flushed after app is redeployed?(appcfg.py
update myapp)
Ps:how to restart my app completely?
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---