[google-appengine] Re: loading a model by key
That works, thanks Alexander! It also works without the db.Key: model = MyModel.get(key) The relevant references - of course it was all there in front of me: http://code.google.com/appengine/docs/datastore/modelclass.html - Note get() is a CLASS method http://code.google.com/appengine/docs/datastore/keyclass.html - The string-encoded key can be converted back to a Key object by passing it to the Key constructor On Nov 19, 5:31 pm, Alexander Kojevnikov [EMAIL PROTECTED] wrote: Aw, man... typed that wrong, i am doing: model = MyModel.get(key) So this _should_ work with the string I'm getting from the querystring? Try this: model = MyModel.get(db.Key(key)) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: User login problem
Thank you! Now it works without the user login! I had an old library that didn't allow me to use that method! Thank you again!!! On 14 Nov, 18:36, Jeff S [EMAIL PROTECTED] wrote: Hi Giacomo, I think I've spotted the issue. The appendix section in this article explains how to use ClientLogin on App Engine: http://code.google.com/appengine/articles/gdata.html If you change your run_on_appengine call to this, you should be able to get the documents feed without requiring the end user to sign in: gdata.alt.appengine.run_on_appengine(gd_client, store_tokens=False, single_user_mode=True) With that change you can remove the auto-signin code which you pointed out above. You should no longer need to check to see if the user is signed in to your app. Happy coding, Jeff On Nov 14, 2:47 am, Giacomo Cucciati [EMAIL PROTECTED] wrote: Hi Jeff! Ok! The application is similar to which you have described. A web page should show my documents list (the title of the documents) and each item of the list is a link to the an other web page that embeds the document content. Everyone should be able to view my list and the contents (it should be public). I'll try to explain better myproblem:) To retrive my document list and the documents contents, an external user has to know my global account's credentials. As you have said i have embedded them in the code so theoretically everyone can see the document list... here it is the code: gd_client = gdata.docs.service.DocsService() gdata.alt.appengine.run_on_appengine(gd_client) gd_client.ClientLogin('my- [EMAIL PROTECTED]','mypassword') feed = gd_client.GetDocumentListFeed() Thanks to the feed i can obtain everything about the documents. Theproblemis: when someone tries to enter in this web page an error page occours with this message: Authorization required. Apparently the application required the user to be logged in. Infact when i have inserted first of all in the code aloginto the app through the method explained in the Getting started guide: Using the Users Service... user = users.get_current_user() if user: self.response.out.write(template.render('mySite.html',values)) else: self.redirect(users.create_login_url(self.request.uri)) ...it started working! But in this way, if an external user runs my application, it asks him tologinwith his google account and then he redirect to my web page and he really is able to view my document list and doc contents. So my application isn't public because a google account (and alogin to my app) is required. I think that a solution could be avoiding thisloginor create a fake user (with mail and pass already inserted in the code) but i haven't found a way to do this. I hope it's a bit clear now. I don't know where theloginrequest comes from. There isn't a login:required mark in the app.yaml. Thank you!!! Giacomo On 13 Nov, 18:30, Jeff S [EMAIL PROTECTED] wrote: Hi Giacomo, I want to make sure I've understood your design. You said you want a page listing your Google Docs, and this listing page would not require users to log in, in other words, it is public. Do you want everyone to be able to view the doc content as well? This should be doable if you are using clientloginand embedding the global account's credentials in the code. If your app is asking users to log in, then the cause may be that a URL is markedlogin:required in app.yaml, or perhaps a request handler is automatically redirecting to a sign in page. I might be able to get a better idea if I could look at some of your code. Thank you, Jeff On Nov 12, 12:22 am, Giacomo Cucciati [EMAIL PROTECTED] wrote: Hi all! I have aproblemlinked to the userlogin... My web application should work in this way: -an external user visits my web page were there are some links -each of these shows a list of my documents (using Docs API) -each doc title, shown in the list, is a link to the doc content Now, when i have updated my application (by appcfg.py command) I have seen that an external user has tologinwith his google account whene he clicks on a link to obtain just the list of my docs, otherwise an authentication error occours. The credentials of my account for the clientlogin(mail and password) are inserted in the code so it isn't their fault. I know there is the users.create_login_url(self.request.uri) function... but is there a way to avoid the userloginpage or to create a fake user (to insert in the code as the previous one) so that everyone can see my document list? I'm not sure to have explaned clearly theproblem... Thank you! Giacomo --~--~-~--~~~---~--~~ You received this message because you are subscribed to the
[google-appengine] Re: Expires header for zipserve files?
change this: - url: /images/.* script: $PYTHON_LIB/google/appengine/ext/zipserve to - url: /images/.* script: main.py # this could be other script, e.g. zipserve.py then have a look at: http://code.google.com/p/googleappengine/source/browse/trunk/google/appengine/ext/zipserve/__init__.py#36 and edit your main.py and don't forget to include this in your main.py: from google.appengine.ext import zipserve On 11月19日, 下午1时45分, Adam Fisk [EMAIL PROTECTED] wrote: Is there any way to set an expires header for files served with google/ appengine/ext/zipserve? I've got expires working for static content and within Django, but the zipserve files are slipping through my fingers. Thanks. -Adam Fisk --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] bulk upload
my bulkupload was working properly but after two or three upload of data i got following error can any body help me? Thanks INFO 2008-11-19 19:00:38,358 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 19:00:38,358 bulkload_client.py] Importing 10 entities in 5379 bytes ERROR2008-11-19 19:00:43,828 bulkload_client.py] An error occurred while importing: Received code 500: Internal Server Error htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// www.google.com/support/report/A your proble m and mention this error message and the query that caused it./h2 h2/h2 /body/html ERROR2008-11-19 19:00:43,858 bulkload_client.py] Import failed --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: loading a model by key
That works, thanks Alexander! It also works without the db.Key: model = MyModel.get(key) The relevant references - of course it was all there in front of me:http://code.google.com/appengine/docs/datastore/modelclass.html- Note get() is a CLASS methodhttp://code.google.com/appengine/docs/datastore/keyclass.html- The string-encoded key can be converted back to a Key object by passing it to the Key constructor No worries Russ. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] urls truncated in the Dashboard
Hi everyone, I have this pretty simple and stupid app: http://cibanzhuan.appspot.com/ The Dashboard only shows me stats for the following url: /lang%20113,hkust,chinese/Lesson%203/Character-pin1yin1/perm so I suspect google is treating the '=' symbol in the url special. Is this the expected behaviour? I would understand if data after a ? is dropped but this got me thinking. kindest regards, Moritz --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] bulkload_client.py
my bulkload_client.py command is working problem is: tools\bulkload_client.py --filename=c:/celebrities.txt -- kind=Celebrities --url=http://famousandspicy.appspot.com/load above command is working fine and data is imoporting. but once i run tools\bulkload_client.py --filename=c:/photos.txt --kind=Photos -- url=http://famousandspicy.appspot.com/load i got following error INFO 2008-11-19 19:57:05,983 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 19:57:05,983 bulkload_client.py] Importing 10 entities in 5379 bytes ERROR2008-11-19 19:57:11,890 bulkload_client.py] An error occurred while importing: Received code 500: Internal Server Error htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// www.google.com/support/report/A your proble m and mention this error message and the query that caused it./h2 h2/h2 /body/html ERROR2008-11-19 19:57:11,921 bulkload_client.py] Import failed bulkload_client.py is from google.appengine.ext import bulkload class PhotosLoader(bulkload.Loader): def __init__(self): fields = [ (photoid, str), (celebrity_id, str), (title, str), (source, str), (image_url, str), (img_title_link, str), (description, str), (created_at, str), (updated_at, str) ] bulkload.Loader.__init__(self, Photos, fields) if __name__ == __main__: bulkload.main(PhotosLoader()) model is class Photos(db.Model): photoid=db.StringProperty() celebrity_id=db.StringProperty() title = db.StringProperty() source = db.StringProperty() image_url = db.StringProperty() img_title_link = db.StringProperty() description = db.StringProperty() created_at = db.StringProperty() updated_at = db.StringProperty() what wrong i am doing. Gampesh --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
Sorry for adding confustion to this buy why does Chained inheritance not work? class Commentable(db.Model): def put(...): ... # if some create/modify logic is needed def delete(...): ... # if some delete magic is needed (trash comments?) comments_counter = db.IntegerProperty(required=True, defualt=0) class Post(Commentable): title = db.StringProperty(required=True) body = db.TextProperty(required=True) added = db.DateProperty(auto_add_now=True) this is perfectly readable and sould do pretty much what was asked for. Am I missing something? BTW: Adam, how do I search with the tag mixins for the objects that are tagged with A, B, C and D? // just curious because I implemented some tagging to my app the other day and didn't use the solution you used. regards, Moritz On Wed, Nov 19, 2008 at 10:07 PM, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: bulkload_client.py
Hi, I didn't see anything wrong, but I might be missing it. Two questions though: 1. Does it work localy? 2. how about throwing in a from logging import debug and then doing a binary search with the debug(...) in your code? regards, Moritz On Wed, Nov 19, 2008 at 10:33 PM, Gampesh [EMAIL PROTECTED] wrote: my bulkload_client.py command is working problem is: tools\bulkload_client.py --filename=c:/celebrities.txt -- kind=Celebrities --url=http://famousandspicy.appspot.com/load above command is working fine and data is imoporting. but once i run tools\bulkload_client.py --filename=c:/photos.txt --kind=Photos -- url=http://famousandspicy.appspot.com/load i got following error INFO 2008-11-19 19:57:05,983 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 19:57:05,983 bulkload_client.py] Importing 10 entities in 5379 bytes ERROR2008-11-19 19:57:11,890 bulkload_client.py] An error occurred while importing: Received code 500: Internal Server Error htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// www.google.com/support/report/A your proble m and mention this error message and the query that caused it./h2 h2/h2 /body/html ERROR2008-11-19 19:57:11,921 bulkload_client.py] Import failed bulkload_client.py is from google.appengine.ext import bulkload class PhotosLoader(bulkload.Loader): def __init__(self): fields = [ (photoid, str), (celebrity_id, str), (title, str), (source, str), (image_url, str), (img_title_link, str), (description, str), (created_at, str), (updated_at, str) ] bulkload.Loader.__init__(self, Photos, fields) if __name__ == __main__: bulkload.main(PhotosLoader()) model is class Photos(db.Model): photoid=db.StringProperty() celebrity_id=db.StringProperty() title = db.StringProperty() source = db.StringProperty() image_url = db.StringProperty() img_title_link = db.StringProperty() description = db.StringProperty() created_at = db.StringProperty() updated_at = db.StringProperty() what wrong i am doing. Gampesh --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
Ahh Right I see, I could trade off the mixablility of Commentable with Taggable. hmm, how about a factory? regards, Moritz On Wed, Nov 19, 2008 at 10:48 PM, Moritz Angermann [EMAIL PROTECTED] wrote: Sorry for adding confustion to this buy why does Chained inheritance not work? class Commentable(db.Model): def put(...): ... # if some create/modify logic is needed def delete(...): ... # if some delete magic is needed (trash comments?) comments_counter = db.IntegerProperty(required=True, defualt=0) class Post(Commentable): title = db.StringProperty(required=True) body = db.TextProperty(required=True) added = db.DateProperty(auto_add_now=True) this is perfectly readable and sould do pretty much what was asked for. Am I missing something? BTW: Adam, how do I search with the tag mixins for the objects that are tagged with A, B, C and D? // just curious because I implemented some tagging to my app the other day and didn't use the solution you used. regards, Moritz On Wed, Nov 19, 2008 at 10:07 PM, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
Have you tried having ModelMixin inherit from PropertiedClass directly: class ModelMixin(PropertiedClass): pass class Commentable(): __metaclass__ = ModelMixin I am using something similar without error. Robin On Nov 19, 8:07 am, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
Ohh, after some thinking, how about this: Basically This is a Coutable Mixin wich replaces the .count() method on objects by caching the value in a seperate table. code below or (http://dpaste.com/hold/92118/ for more convinient reading) [ tried this in the SDK console] kindest regards, Moritz PS: it is important to have the mixin order... e.g. all db.Model deriving classes before the db.Model class. from google.appengine.ext import db class _Counter(db.Model): some helper class, to keep track of the actual amount of elements count = db.IntegerProperty(default=0) class Countable(db.Model): the ``mixin'' to make an object have a cheap ``.count()'' method def count(klass): return _Counter.get_or_insert('class:%s' % klass.__name__).count count = classmethod(count) def put(self,*args,**kwargs): if not self.is_saved(): counter = _Counter.get_or_insert('class:%s' % self.__class__.__name__) counter.count += 1 counter.put() super(Countable, self).put(*args,**kwargs) def delete(self, *args, **kwargs): counter = _Counter.get_by_key_name('class:%s' % self.__class__.__name__) if not counter is None: counter.count -= 1 counter.put() super(Countable, self).delete(*args,**kwargs) class Test(Countable, db.Model): name = db.StringProperty() print set up print == print installing 10 entities in Test model... for i in range(10): Test(name='item %d' % i).put() print test print print Test.count() yields , Test.count() print deleting two entities for e in Test.all().fetch(2): e.delete() print Test.count() yields , Test.count() print tear down print = print deleting all items from Test model... for e in Test.all(): e.delete() print deleting all items from _Counter model... for e in _Counter.all(): e.delete() On Wed, Nov 19, 2008 at 11:18 PM, Robin B [EMAIL PROTECTED] wrote: Have you tried having ModelMixin inherit from PropertiedClass directly: class ModelMixin(PropertiedClass): pass class Commentable(): __metaclass__ = ModelMixin I am using something similar without error. Robin On Nov 19, 8:07 am, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: bulkload_client.py
Yes, you load data into GAE. Have you made sure it works on the SDK? e.g. bulkload_client.py --filename=c:/photos.txt --kind=Photos --url=http://localhost:8080/load Second point: try to see where your app terminates. To do this, you could simply add print ... statements if this was a normal console app. For GAE apps is makes more sense to use from logging import debug #somewhere at the top of you bluckload_client.py and then use debug(reached this point) in your code. That way the SDK Log will yield you some clue to where it executed the bulckload_client.py before terminating. regards, Moritz On Wed, Nov 19, 2008 at 11:41 PM, Gampesh [EMAIL PROTECTED] wrote: no i am uploading data in google app server sorry but i am nit getting your second point. thanks On Nov 19, 7:51 pm, Moritz Angermann [EMAIL PROTECTED] wrote: Hi, I didn't see anything wrong, but I might be missing it. Two questions though: 1. Does it work localy? 2. how about throwing in a from logging import debug and then doing a binary search with the debug(...) in your code? regards, Moritz On Wed, Nov 19, 2008 at 10:33 PM, Gampesh [EMAIL PROTECTED] wrote: my bulkload_client.py command is working problem is: tools\bulkload_client.py --filename=c:/celebrities.txt -- kind=Celebrities --url=http://famousandspicy.appspot.com/load above command is working fine and data is imoporting. but once i run tools\bulkload_client.py --filename=c:/photos.txt --kind=Photos -- url=http://famousandspicy.appspot.com/load i got following error INFO 2008-11-19 19:57:05,983 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 19:57:05,983 bulkload_client.py] Importing 10 entities in 5379 bytes ERROR2008-11-19 19:57:11,890 bulkload_client.py] An error occurred while importing: Received code 500: Internal Server Error htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// www.google.com/support/report/A your proble m and mention this error message and the query that caused it./h2 h2/h2 /body/html ERROR2008-11-19 19:57:11,921 bulkload_client.py] Import failed bulkload_client.py is from google.appengine.ext import bulkload class PhotosLoader(bulkload.Loader): def __init__(self): fields = [ (photoid, str), (celebrity_id, str), (title, str), (source, str), (image_url, str), (img_title_link, str), (description, str), (created_at, str), (updated_at, str) ] bulkload.Loader.__init__(self, Photos, fields) if __name__ == __main__: bulkload.main(PhotosLoader()) model is class Photos(db.Model): photoid=db.StringProperty() celebrity_id=db.StringProperty() title = db.StringProperty() source = db.StringProperty() image_url = db.StringProperty() img_title_link = db.StringProperty() description = db.StringProperty() created_at = db.StringProperty() updated_at = db.StringProperty() what wrong i am doing. Gampesh --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: bulkload_client.py
i tried run locally and got following error INFO 2008-11-19 21:22:59,342 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 21:22:59,342 bulkload_client.py] Importing 10 entities in 4822 bytes ERROR2008-11-19 21:23:01,092 bulkload_client.py] An error occurred while importing: (10061, 'Connection refused') ERROR2008-11-19 21:23:01,092 bulkload_client.py] Import failed On Nov 19, 8:45 pm, Moritz Angermann [EMAIL PROTECTED] wrote: Yes, you load data into GAE. Have you made sure it works on the SDK? e.g. bulkload_client.py --filename=c:/photos.txt --kind=Photos --url=http://localhost:8080/load Second point: try to see where your app terminates. To do this, you could simply add print ... statements if this was a normal console app. For GAE apps is makes more sense to use from logging import debug #somewhere at the top of you bluckload_client.py and then use debug(reached this point) in your code. That way the SDK Log will yield you some clue to where it executed the bulckload_client.py before terminating. regards, Moritz On Wed, Nov 19, 2008 at 11:41 PM, Gampesh [EMAIL PROTECTED] wrote: no i am uploading data in google app server sorry but i am nit getting your second point. thanks On Nov 19, 7:51 pm, Moritz Angermann [EMAIL PROTECTED] wrote: Hi, I didn't see anything wrong, but I might be missing it. Two questions though: 1. Does it work localy? 2. how about throwing in a from logging import debug and then doing a binary search with the debug(...) in your code? regards, Moritz On Wed, Nov 19, 2008 at 10:33 PM, Gampesh [EMAIL PROTECTED] wrote: my bulkload_client.py command is working problem is: tools\bulkload_client.py --filename=c:/celebrities.txt -- kind=Celebrities --url=http://famousandspicy.appspot.com/load above command is working fine and data is imoporting. but once i run tools\bulkload_client.py --filename=c:/photos.txt --kind=Photos -- url=http://famousandspicy.appspot.com/load i got following error INFO 2008-11-19 19:57:05,983 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 19:57:05,983 bulkload_client.py] Importing 10 entities in 5379 bytes ERROR2008-11-19 19:57:11,890 bulkload_client.py] An error occurred while importing: Received code 500: Internal Server Error htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// www.google.com/support/report/A your proble m and mention this error message and the query that caused it./h2 h2/h2 /body/html ERROR2008-11-19 19:57:11,921 bulkload_client.py] Import failed bulkload_client.py is from google.appengine.ext import bulkload class PhotosLoader(bulkload.Loader): def __init__(self): fields = [ (photoid, str), (celebrity_id, str), (title, str), (source, str), (image_url, str), (img_title_link, str), (description, str), (created_at, str), (updated_at, str) ] bulkload.Loader.__init__(self, Photos, fields) if __name__ == __main__: bulkload.main(PhotosLoader()) model is class Photos(db.Model): photoid=db.StringProperty() celebrity_id=db.StringProperty() title = db.StringProperty() source = db.StringProperty() image_url = db.StringProperty() img_title_link = db.StringProperty() description = db.StringProperty() created_at = db.StringProperty() updated_at = db.StringProperty() what wrong i am doing. Gampesh --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
BTW: Adam, how do I search with the tag mixins for the objects that are tagged with A, B, C and D? // just curious because I implemented some tagging to my app the other day and didn't use the solution you used. I didn't have this use case accoutned for directly in taggable-mixin, but it really ought to be there. It could be accounted for simply in the get_tag_by_value method. The method should check to see if the incoming parameter is a list, and if it is, query for all of the elements in the list. I'll make sure that gets in to the next release. BTW, a new release, with many improvements is already on its way. On Nov 19, 9:48 am, Moritz Angermann [EMAIL PROTECTED] wrote: Sorry for adding confustion to this buy why does Chained inheritance not work? class Commentable(db.Model): def put(...): ... # if some create/modify logic is needed def delete(...): ... # if some delete magic is needed (trash comments?) comments_counter = db.IntegerProperty(required=True, defualt=0) class Post(Commentable): title = db.StringProperty(required=True) body = db.TextProperty(required=True) added = db.DateProperty(auto_add_now=True) this is perfectly readable and sould do pretty much what was asked for. Am I missing something? BTW: Adam, how do I search with the tag mixins for the objects that are tagged with A, B, C and D? // just curious because I implemented some tagging to my app the other day and didn't use the solution you used. regards, Moritz On Wed, Nov 19, 2008 at 10:07 PM, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
I haven't tried that Robin. It looks promising. I'll give it a try. Thanks. On Nov 19, 10:18 am, Robin B [EMAIL PROTECTED] wrote: Have you tried having ModelMixin inherit from PropertiedClass directly: class ModelMixin(PropertiedClass): pass class Commentable(): __metaclass__ = ModelMixin I am using something similar without error. Robin On Nov 19, 8:07 am, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
I'm fairly sure that I tried just this very solution before giving up on it because it continued to throw exceptions. Since you say that this worked for you, I'll try it again and make sure that I am matching this pattern as closely as possible. On Nov 19, 10:36 am, Moritz Angermann [EMAIL PROTECTED] wrote: Ohh, after some thinking, how about this: Basically This is a Coutable Mixin wich replaces the .count() method on objects by caching the value in a seperate table. code below or (http://dpaste.com/hold/92118/for more convinient reading) [ tried this in the SDK console] kindest regards, Moritz PS: it is important to have the mixin order... e.g. all db.Model deriving classes before the db.Model class. from google.appengine.ext import db class _Counter(db.Model): some helper class, to keep track of the actual amount of elements count = db.IntegerProperty(default=0) class Countable(db.Model): the ``mixin'' to make an object have a cheap ``.count()'' method def count(klass): return _Counter.get_or_insert('class:%s' % klass.__name__).count count = classmethod(count) def put(self,*args,**kwargs): if not self.is_saved(): counter = _Counter.get_or_insert('class:%s' % self.__class__.__name__) counter.count += 1 counter.put() super(Countable, self).put(*args,**kwargs) def delete(self, *args, **kwargs): counter = _Counter.get_by_key_name('class:%s' % self.__class__.__name__) if not counter is None: counter.count -= 1 counter.put() super(Countable, self).delete(*args,**kwargs) class Test(Countable, db.Model): name = db.StringProperty() print set up print == print installing 10 entities in Test model... for i in range(10): Test(name='item %d' % i).put() print test print print Test.count() yields , Test.count() print deleting two entities for e in Test.all().fetch(2): e.delete() print Test.count() yields , Test.count() print tear down print = print deleting all items from Test model... for e in Test.all(): e.delete() print deleting all items from _Counter model... for e in _Counter.all(): e.delete() On Wed, Nov 19, 2008 at 11:18 PM, Robin B [EMAIL PROTECTED] wrote: Have you tried having ModelMixin inherit from PropertiedClass directly: class ModelMixin(PropertiedClass): pass class Commentable(): __metaclass__ = ModelMixin I am using something similar without error. Robin On Nov 19, 8:07 am, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Add Model field via Mixin?
Hi Adam, The FakeMixin order is very important, unless all FakeMixins are inherited before the class inherits from db.Model it will throw an error. So as long as you make sure you have db.Model at the end of your inheritances it should be fine. regards, Moritz On Thu, Nov 20, 2008 at 12:20 AM, Adam [EMAIL PROTECTED] wrote: I'm fairly sure that I tried just this very solution before giving up on it because it continued to throw exceptions. Since you say that this worked for you, I'll try it again and make sure that I am matching this pattern as closely as possible. On Nov 19, 10:36 am, Moritz Angermann [EMAIL PROTECTED] wrote: Ohh, after some thinking, how about this: Basically This is a Coutable Mixin wich replaces the .count() method on objects by caching the value in a seperate table. code below or (http://dpaste.com/hold/92118/for more convinient reading) [ tried this in the SDK console] kindest regards, Moritz PS: it is important to have the mixin order... e.g. all db.Model deriving classes before the db.Model class. from google.appengine.ext import db class _Counter(db.Model): some helper class, to keep track of the actual amount of elements count = db.IntegerProperty(default=0) class Countable(db.Model): the ``mixin'' to make an object have a cheap ``.count()'' method def count(klass): return _Counter.get_or_insert('class:%s' % klass.__name__).count count = classmethod(count) def put(self,*args,**kwargs): if not self.is_saved(): counter = _Counter.get_or_insert('class:%s' % self.__class__.__name__) counter.count += 1 counter.put() super(Countable, self).put(*args,**kwargs) def delete(self, *args, **kwargs): counter = _Counter.get_by_key_name('class:%s' % self.__class__.__name__) if not counter is None: counter.count -= 1 counter.put() super(Countable, self).delete(*args,**kwargs) class Test(Countable, db.Model): name = db.StringProperty() print set up print == print installing 10 entities in Test model... for i in range(10): Test(name='item %d' % i).put() print test print print Test.count() yields , Test.count() print deleting two entities for e in Test.all().fetch(2): e.delete() print Test.count() yields , Test.count() print tear down print = print deleting all items from Test model... for e in Test.all(): e.delete() print deleting all items from _Counter model... for e in _Counter.all(): e.delete() On Wed, Nov 19, 2008 at 11:18 PM, Robin B [EMAIL PROTECTED] wrote: Have you tried having ModelMixin inherit from PropertiedClass directly: class ModelMixin(PropertiedClass): pass class Commentable(): __metaclass__ = ModelMixin I am using something similar without error. Robin On Nov 19, 8:07 am, Adam [EMAIL PROTECTED] wrote: Not that anyone cares, but the metaclass approach did not work, as Python doesn't want to have two non-identical metaclasses in an inheritance chain. Or something. On Nov 18, 10:42 am, Adam [EMAIL PROTECTED] wrote: It just occurred to me that this solution could be made much easier by using a simple, small metaclass (which, it is worth noting, I totally copped from GAE's PropertiedClass metaclass): class ModelMixin(type): def __init__(cls, name, bases, dct): super(PropertiedClass, cls).__init__(name, bases, dct) for attr_name in dct.keys(): attr = dct[attr_name] if isinstance(attr, Property): cls._properties[attr_name] = attr class Commentable(): __metaclass__ = ModelMixin comments_counter = db.IntegerProperty(required=True, default=0) Bada-bing. Now, the ugly nonsense of creating the _properties dict and assigning to it is gone. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Best practices implementing paging
I am currently doing a detailed study on how to optimize my application to be scalable. I have thoroughly studied the lectures delivered by the engineers at google, and my opinion: fantastic In this case, my question comes from the presentation Buildding Scalable Web Applications with Google App Engine whose rapporteur was Brett Slatkin In it, in the section Building a Blog: Paging , using the attribute index, get to paginate infinite elements, using the index as a guide for the next entry Now, suppose you delete an entity, the attribute index would not be consecutive. taking into account that, any idea howto implement paging that supports not only next and previous, but also, goto n page number.? thanks in advance, Abel --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Is AUTH_DOMAIN supposed to be different from app?
Hi, From: http://code.google.com/appengine/docs/python/theenvironment.html The domain used for authenticating users with the Users API. Apps hosted on appspot.com have an AUTH_DOMAIN of gmail.com, and accept any Google account. Apps hosted on a custom domain using Google Apps have an AUTH_DOMAIN equal to the custom domain. -Marzia On Tue, Nov 18, 2008 at 8:31 PM, yejun [EMAIL PROTECTED] wrote: It seems I always get gmail.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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Join us for App Engine Chat Time
This is happening right now: irc.freenode.net #appengine See you there! -- Dan On Tue, Nov 18, 2008 at 1:49 PM, Marzia Niccolai [EMAIL PROTECTED] wrote: Hi, A reminder that we will have App Engine Chat Time tomorrow, November 19th from 9-10AM PST. Hope to see some of you there! Transcripts of previous chat times are here: http://groups.google.com/group/google-appengine/browse_thread/thread/cedc737d9678af06/ec5af0d421e445da and http://groups.google.com/group/google-appengine/browse_thread/thread/9f1c2775a354c78/ee0ce30274b1543 -Marzia On Thu, Nov 6, 2008 at 10:01 AM, Marzia Niccolai [EMAIL PROTECTED] wrote: Chat log will be forthcoming. -Marzia On Thu, Nov 6, 2008 at 7:42 AM, Sylvain [EMAIL PROTECTED] wrote: Is there any chat log ? On 5 nov, 17:37, Marzia Niccolai [EMAIL PROTECTED] wrote: Just a reminder that the next App Engine chat time is this evening (for us at least!) from 7-8PM PST. Hope to see you there! On Mon, Oct 20, 2008 at 10:23 PM, Marce [EMAIL PROTECTED] wrote: Hi, My bad! I've updated the blog, but the correct date for this Wednesday is the 22nd. Concerning the quota requests, in general, you can apply for an increase in your quota by using our request page: http://code.google.com/support/bin/request.py?contact_type=AppEngineC... However, currently we are not able to lift the 1MB file size quota. We are currently working on solutions that would allow users to host larger files, and it's something we are interested in supporting in the future. Lastly, we plan to post chat transcripts on the group. -Marzia On Oct 20, 10:20 pm, Peter Recore [EMAIL PROTECTED] wrote: Can someone please post a transcript somewhere for those of us who won't be able to attend 'live'? On Oct 20, 8:54 pm, Marzia Niccolai [EMAIL PROTECTED] wrote: Have something to ask the App Engine team? Spending time scratching your head on a problem and want to ask someone who spends his or her days and nights working with App Engine? Spend all of your time on IRC anyway? Starting this week, the App Engine developer relations team will be experimenting with holding bi-monthly 1 hour developer chat sessions on the #appengine IRC channel on irc.freenode.net. Look here: http://en.wikipedia.org/wiki/List_of_IRC_clientsforahelpful list of IRC clients. We welcome all App Engine questions, and will try to answer as many as we can get through in the hour. We'll be posting the complete chat sessions on the group for those not able to make the scheduled chat times. The first chat session will be this Wednesday at 9AM PDT. In general, we are planning on holding the sessions the first and third Wednesday of the month, alternating between day and evening. We're test-driving this program, so the days and times may change. Here are the currently scheduled dates and times: * Wednesday, October 20, 9am-10am PDT * Wednesday, November 5, 7pm-8pm PST * Wednesday, November 19, 9am-10am PST * Wednesday, December 3, 7pm-8pm PST * Wednesday, December 17, 9am-10am PST We look forward to chatting with you! --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Hardly anything stored in appengine - already 10 MB gone?
I've noticed that my data store usage went up by about 5MB a few days ago for no reason as well. However, today it's back to normal. I know they've been changing a lot of things lately (based on the downtime e- mail notifications I keep receiving), so it probably has something to do with that. However, if anyone has any more information about what's going on, it would be much appreciated. Chris --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Error starting app engine locally - exceptions.EOFError
The other day, I saw a great post on taming your history file to speed up the app engine locally (http://groups.google.com/group/google- appengine/browse_thread/thread/f42a3471ca3c5b32/7597dd1b2eff6637? lnk=gstq=history+file#7597dd1b2eff6637). I thought it would be wiser to just excavate all the contents of the file and leave an empty file. Unfortunately, my local app would no longer start with a generic exceptions.EOFError . It took me some time to realize you can delete the history file and it will start up fine, just don't leave an empty file. I hope that saves others some time. 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] mac osx python is now 2.6 -- sdk launcher cannot find it
GoogleAppEngineLauncher cannot find python 2.6 even though it is in / usr/local/bin/ I am using a PPC Mac with OS X v10.4.11 and a Universal Binary .dmg downloaded. What are my easy alternatives, please? Brian in Atlanta --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Page Refresh Issue on Local Host
I have this issue frequently. The only way I can get the page to refresh after making code changes is by restarting the app_server. Any thoughts on this? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Django helper: ImportError: cannot import name djangoforms
I'm also getting this error with app-engine-patch. It's unfortunate no one's been able to resolve this, since it makes these projects useless. On Oct 18, 3:43 pm, Giacecco [EMAIL PROTECTED] wrote: All, when trying to use manage.py from the command line, I get the following error. Running python manage.py is sufficient to get this, it does not depend on the command after the manage.py. = gianfranco-cecconis-macbook-pro:GAPE project giacecco$ python manage.py WARNING:root:Could not read datastore data from /var/folders/N8/ N8qeBmGnFqqEQCAHzR9XOk+++TI/-Tmp-/django_giacecco-prod.datastore WARNING:root:Could not read datastore data from /var/folders/N8/ N8qeBmGnFqqEQCAHzR9XOk+++TI/-Tmp-/django_giacecco- prod.datastore.history Traceback (most recent call last): File manage.py, line 18, in module InstallAppengineHelperForDjango() File /Users/giacecco/www.giacec.co.uk/GAPEproject/__init__.py, line 441, in InstallAppengineHelperForDjango File /Users/giacecco/www.giacec.co.uk/GAPEproject/__init__.py, line 494, in InstallModelForm File /Applications/GoogleAppEngineLauncher.app/Contents/Resources/ GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/ google/appengine/ext/db/djangoforms.py, line 454, in module class ModelChoiceField(forms.Field): File /Applications/GoogleAppEngineLauncher.app/Contents/Resources/ GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/ google/appengine/ext/db/djangoforms.py, line 457, in ModelChoiceField 'invalid_choice': _(u'Please select a valid choice. ' File /Applications/GoogleAppEngineLauncher.app/Contents/Resources/ GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/ django/django/conf/__init__.py, line 147, in first_time_gettext return gettext(*args) File /Applications/GoogleAppEngineLauncher.app/Contents/Resources/ GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/ django/django/utils/translation/trans_real.py, line 268, in gettext _default = translation(settings.LANGUAGE_CODE) File /Applications/GoogleAppEngineLauncher.app/Contents/Resources/ GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/ django/django/utils/translation/trans_real.py, line 197, in translation default_translation = _fetch(settings.LANGUAGE_CODE) File /Applications/GoogleAppEngineLauncher.app/Contents/Resources/ GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/ django/django/utils/translation/trans_real.py, line 182, in _fetch app = __import__(appname, {}, {}, []) File /Users/giacecco/www.giacec.co.uk/GAPEproject/main.py, line 29, in module InstallAppengineHelperForDjango() File /Users/giacecco/www.giacec.co.uk/GAPEproject/__init__.py, line 441, in InstallAppengineHelperForDjango File /Users/giacecco/www.giacec.co.uk/GAPEproject/__init__.py, line 494, in InstallModelForm ImportError: cannot import name djangoforms = I am using Google App Engine Launcher 1.1.5.151 on MacOS 10.5.5. When launching the web application through it I have no issues, but perhaps it is not relevant. Any advice? I wanted to use the command line to do some debugging. Giacecco --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: mac osx python is now 2.6 -- sdk launcher cannot find it
Have you explicitly set the python 2.6 path in the launcher preferences? If so, can you run the dev_appserver with the --debug_imports flag? I haven't yet tried to get 2.6 to work with the launcher, so I don't know if/how it works. -Marzia On Tue, Nov 18, 2008 at 11:51 PM, thebrianschott [EMAIL PROTECTED]wrote: GoogleAppEngineLauncher cannot find python 2.6 even though it is in / usr/local/bin/ I am using a PPC Mac with OS X v10.4.11 and a Universal Binary .dmg downloaded. What are my easy alternatives, please? Brian in Atlanta --~--~-~--~~-- --~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED][EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~--- --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Page Refresh Issue on Local Host
Hi Todd, I've never experienced this. Is this with Python code changes only? What does your app.yaml look like? All browsers, or a specific one? What is the OS you are using? What about the SDK version? Python version? -Marzia On Wed, Nov 19, 2008 at 9:11 AM, todd.levinsn [EMAIL PROTECTED]wrote: I have this issue frequently. The only way I can get the page to refresh after making code changes is by restarting the app_server. Any thoughts on this? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Expires header for zipserve files?
Ahhh perfect -- thanks Hector. -Adam On Nov 19, 2:20 am, Hector Zhao [EMAIL PROTECTED] wrote: change this: - url: /images/.* script: $PYTHON_LIB/google/appengine/ext/zipserve to - url: /images/.* script: main.py # this could be other script, e.g. zipserve.py then have a look at:http://code.google.com/p/googleappengine/source/browse/trunk/google/a... and edit your main.py and don't forget to include this in your main.py: from google.appengine.ext import zipserve On 11月19日, 下午1时45分, Adam Fisk [EMAIL PROTECTED] wrote: Is there any way to set an expires header for files served with google/ appengine/ext/zipserve? I've got expires working for static content and within Django, but the zipserve files are slipping through my fingers. Thanks. -Adam Fisk --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: __searchable_text_index gets added multiple times
Hi, This is expected behavior. When adding the filter, a composite index is created for the query. The composite index lists one __searchable_text_index for the number of terms in your search query. -Marzia On Wed, Nov 19, 2008 at 7:51 AM, ravindra [EMAIL PROTECTED] wrote: Hi, I have created class Record as follows : class Record(search.SearchableModel): exp_year = db.IntegerProperty() keywords = db.StringProperty(multiline=True) now when i am running the following query in dev version : query = Record.all().search(first second third fourth ) then index file gets updated as single entry for __searchable_text_index - kind: Record properties: - name: __searchable_text_index - name: exp_year if i modify the query to this (added the filter clause) query = Record.all().search(first second third ).filter(exp_year , 1) the index file get updated with multiple entries for __searchable_text_index - kind: Record properties: - name: __searchable_text_index - name: __searchable_text_index - name: __searchable_text_index - name: exp_year The number of entries for __searchable_text_index then directly depends on the number of keywords searched for. But in earlier query (ie without filter) it does not depend on the number of keywords. Am I putting query wrong somewhere ? or is it expected behaviour ? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Best practices implementing paging
So far, I haven't had to deal with problem of paging through more than a couple dozen items, so I'm just grabbing them all and then slicing the results to get what I need. It's ugly and doesn't scale at all, but it is all that I have been able to come up with. I'm glad that I'm not the only one being stymied by this problem. I know that it is primarily designed to scale well, but other than that, the datastore is a giant PITA. On Nov 19, 3:26 pm, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I gave up and just went with paging through 1000 results and figure people shouldn't have to go back further. That's a reality for the application I'm working on, but not one for others I'm sure. Besides the if something is deleted problem, I also found it problematic to try and page for things that rely on taxonomy, and other indexed features like search results and such. I'm hoping one day they may just figure out a way to allow offsets to work the way most of us expect them to in queries. On Nov 19, 12:08 pm, Adam [EMAIL PROTECTED] wrote: I am wrestling with the very same problem, Abel. I don't have a good answer 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] How do I create the a image object that is located on my local file system?
I tried to create a image object: avatar = images.Image(os.path.join(os.path.dirname(__file__),'images/ head.jpg') but this will lead to error, can anyone help me with this? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Hardly anything stored in appengine - already 10 MB gone?
Thanks. At least I am not hallucinating. I didn't do anything and the next morning diskspace is gone ;) It would be neat if we at least had the faintest view of our files (like a html interface) - not the datastore, but the stuff we upload...html files, images, etc. On Nov 19, 1:06 pm, saranpol [EMAIL PROTECTED] wrote: I found this problem too. On Nov 19, 9:37 am, jago [EMAIL PROTECTED] wrote: Hello, I have hardly anything stored in appengine. Still the dashboard claims I have already 10 MB used. Can I get somehow more information about what is using the 10 MB? It cannot be the few things I have in the datastore or the website hosted on the appengine. Can I somehow free all the memory on the appengine? Cheers, jago --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Best practices implementing paging
You could achieve a back button by using a similar scheme (selecting pageSize+1) and ordering descending. eg, Say you had an index field with entries index1, index2, etc. Gaps would be fine (but assume none in this example). Say the page size is 10. First page you just select the first ten items, with index1 to index10. The next button would have ?start=index10order=asc (you could assume the default order to be asc). On the next page, you would select pageSize+1 (11) items = index10 in ascending order, remove the first (index10) and display the rest (index11 to index20). The Prev link on this page would be ?start=index11order=desc and the Next link would be ?start=index20order=asc. If you clicked Prev, it would (based on order=desc) select 11 items = index11 in descending order, remove the first (index11), reverse the rest and display (index1 to index10). You still wouldn't be able to show links to each numbered page (only prev/next) - however, if you selected, say (pageSize*5)+1 items (and adjust the start offset accordingly), then you could show links to the prev three and next three pages. If you also kept track of the page number you were on (for the sake of link names), then you could come pretty close to achieving standard paging functionality (first and last pages could be done by selecting without a filter, asc or desc). Cheers, Michael On 20/11/2008, at 8:40 AM, Alexander Kojevnikov wrote: I use Brett Slatkin's technique: in the model I page over, I have a string property called order. It's a composite string and it's guarantied to be unique. When querying for entities, I ORDER BY this property. If I want to have 20 entities per page, I fetch 21 entities, show 20 of them and use 21st's order in the Next link: /mypage?next=order The next parameter is used in the query to skip entities: WHERE order = :next This allows to page as far as user wants without much burden on the datastore. The only downside is that it's not possible to page back, but alas, that's what the browser's Back button is for! Alex -- www.muspy.com On Nov 20, 3:38 am, Abel Rodriguez [EMAIL PROTECTED] wrote: I am currently doing a detailed study on how to optimize my application to be scalable. I have thoroughly studied the lectures delivered by the engineers at google, and my opinion: fantastic In this case, my question comes from the presentation Buildding Scalable Web Applications with Google App Engine whose rapporteur was Brett Slatkin In it, in the section Building a Blog: Paging , using the attribute index, get to paginate infinite elements, using the index as a guide for the next entry Now, suppose you delete an entity, the attribute index would not be consecutive. taking into account that, any idea howto implement paging that supports not only next and previous, but also, goto n page number.? thanks in advance, Abel --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Is there any way to do prefix match for list type data model attributes
Hi, I tried using do prefix match for StringListProperty of a data model. But it doesn't work. Could someone please tell me if there is any other way to do so. Thanks in advance, Jyoti On Tue, Nov 18, 2008 at 10:34 AM, Jyoti Shete-Javadekar [EMAIL PROTECTED] wrote: As per the GQL documentation : ( http://code.google.com/appengine/docs/datastore/queriesandindexes.html#Defining_Indexes_With_index_yaml ) Query filters do not have an explicit way to match just part of a string value, but you can fake a prefix match using inequality filters: db.GqlQuery(SELECT * FROM MyModel WHERE prop = :1 AND prop :2, abc, uabc + u\ufffd) This matches every MyModel entity with a string property prop that begins with the characters abc. The unicode string u\ufffd represents the largest possible Unicode character. When the property values are sorted in an index, the values that fall in this range are all of the values that begin with the given prefix. Is this type of prefix match supported for StringListProperty as well? I tried the above inequality filters for an attribute having StringListProperty, however it did not give correct results for all queries. Is there any other way to apply prefix filter on StringListProperty attributes? Thanks, Jyoti --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Compressed string extractable in appengine?
Hi, I want to create a compressed String in Java and send it to the appengine where it is decompressed. Can somebody help me to do this? So far I used GZIP for compression in Java. Extraction in appengine didn't work though. Using the ZIP format in Java resulted also in not more luck. Does somebody have example codes on both sides that is known to work? Thanks a lot! --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Django + GAE
here http://groups.google.com/group/google-appengine/browse_thread/thread/d28216f1d350abba/ 2008/11/20 riklaunim [EMAIL PROTECTED] Is this patch available somewhere? @@ napisał(a): hi i have django admin works on app engine helper with some modifications (both django admin and app engine helper) . demo: http://djangoadmin.appspot.com/admin/ http://djangoadmin.appspot.com/admin/ On Thu, Oct 30, 2008 at 2:42 AM, Arash [EMAIL PROTECTED] wrote: Unfortunately you will not get Django's scaffolded admin interface in none of them On Oct 29, 1:52 pm, Adam Fisk [EMAIL PROTECTED] wrote: I highly recommend app engine patch. It's a much more active project than app engine helper, and it works really well. -Adam On Oct 29, 10:04 am, Dan Sanderson [EMAIL PROTECTED] wrote: I'd recommend Django 1.0 along with the Helper or something similar. You could use Django without the Helper if you accommodate some of the import technicalities, the Helper just makes it easier. This article discusses using Django without the Helper (though I'm not sure if the article works out of the box with Django 1.0): http://code.google.com/appengine/articles/django.html See also the article on using the Helper, and the article on using Django 1.0 via a feature called zipimport (which the Helper also supports): http://code.google.com/appengine/articles/appengine_helper_for_django. .. http://code.google.com/appengine/articles/django10_zipimport.html As far as compatibility goes, the runtime environment is versioned, with the intent that changes to a given version of the runtime will remain backwards compatible with apps that run with that version. When a new version of the runtime environment is released containing incompatible changes, your app will continue to use the original version until you update your app.yaml file. I haven't tried appenginepatch, but a version of it that works with v1 of the Python runtime ought to continue to do so even when there's a v2. -- Dan On Wed, Oct 29, 2008 at 9:24 AM, Daniel Larkin [EMAIL PROTECTED]wrote: Hi all, I'd like to use Django on GAE for a small project. Ideally I'd like to use version 1.0 of Django rather than 0.96, and I'm aware there are various patches and helper scripts etc to make this possible. Yet, these approaches seem less than straight-forward (perhaps I'm incorrect there? I haven't actually tried them) and are such patches going to break with newer versions of GAE. After initially deciding to use Django 1.0, I'm now considering just using the built-in 0.96 version, would this be such a bad idea for someone moving from php- land to an elegant python MVC design pattern based solution. Any comments would be greatly appreciated! 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] How to update my new version of db on server
Hello I need advice. I have application version 1, in her database they is one model: id1 date_1 date_2 int_1 nameemail pass In version 1 I have 6000 input In version 2 I separated model in two parts id1 date_1 name email pass id2 id1 int_1 date_2 I want put my version 2 in production on server to replace version 1 Was is the best (and safe) method? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: quotas in appengine
I understand some of the reasons given above, I guess my app is not for AppEngine then. I feel that Google would end up alienating developers with their quota system. When they announced the AppEngine, they talked about quotas in a different way - some millions or so cpu hours would be free per month. But, with this per request quotas and red warnings that I get for most urls long long before I have been anywhere close to that enormous free stuff which was promised; I feel that the facts wasn't communicated properly or I didn't understand them properly. I don't have time to discuss this and waste my time further, I am off to Amazon today. Quota Limit Emails per Day 2,000 Bandwidth In per Day* 10,000 MB Bandwidth Out per Day* 10,000 MB HTTPS Bandwidth In per Day 2,000 MB HTTPS Bandwidth Out per Day 2,000 MB CPU Megacycles per Day 200,000,000 Total HTTP Requests per Day 650,000 HTTPS Requests per Day 130,000 Datastore API Calls per Day 2,500,000 URLFetch API Calls per Day 160,000 This is *bs*to at least a class of developers, because it is not true in reality for them. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] gql matching DateTimeProperty
SELECT * FROM thing WHERE added = '2008-06-08 22:17:45.200477 ' won't match Neither SELECT * FROM thing WHERE added '2008-07-08 22:17:45.200477 ' and added '2008-06-08 22:17:45.200477 ' And SELECT * FROM Ad WHERE added '2006-11-18 22:17:45.200477 ' surprisingly matches many entities. How match a day or a month interval, or an exact timepoint? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: quotas in appengine
It seems to me like, if this were a problem, then Google isn't doing their job when it comes to scaling our applications. When I'm using Amazon's S3 or their SimpleDB (or, for the most part, EC2) I just have to think about how much I pay for per GB used and per GB transferred. Amazon provides me almost no limitations on how much data I can store or how quickly I can access it, so why does Google? Is Amazon's ability to install more servers to handle increased load fundamentally greater than that of Google's? I wish less time was spent on quotas, even on features... even on /fixing bugs/ (and yes, even those which I consider to be blocking issues), and more time was spent on billing infrastructure so I could start paying them to scale in the way my application actually needs rather than in the ways they are willing to provide out of the kindness of their giant Google hearts for free. :( -J -- From: Barry Hunter [EMAIL PROTECTED] Sent: Sunday, November 09, 2008 10:57 AM To: google-appengine@googlegroups.com Subject: [google-appengine] Re: quotas in appengine Remember AppEngine is a 'shared' environment - lots of apps are all using a slice of the same resources. Would you rather that someone (maliciously or simply though ignorance) monopolizes all the resources (even if they are paying) and that brings your app (though no fault of your own) to a standstill. ... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Local datastore import is too slow
I am also havin the same problem. Could you please clarify me if you got the answer On Nov 20, 5:35 am, Jyoti Shete-Javadekar [EMAIL PROTECTED] wrote: Hi, I am trying to load my development datastore using the bulk loader script. However the import is very slow. I had to kill the import process since it was not completed even after 12 hours. I have about 13K rows in the CSV file. One data model entity is about 300 bytes. 10 entities are imported at a time. The model has two unicode attributes, two unicode list attributes , one url and one long attribute. I use unicode.split to populate list attributes. I am running the bulk loader in a virtual machine having 512MB memory. During the import about 91% memory is utilized. I have not specified any custom index in index.yaml. Could someone please tell me why the import is so slow? What optimization should I do to improve the performance? I have not yet loaded the data at appspot. Above observations are for my local development server. Are there any performance numbers available for the bulk loader script? Thanks in advance, Jyoti --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: bulk upload
yes thank Marzia in log file i got that error was in my data there are some ascii code which is not compatible with Gql Bulkupload parse. Can you please help me on this : if i want to store data in local server using same script just change is in --url=http://localhost:8080/load; then i got following error: INFO 2008-11-20 10:52:39,890 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-20 10:52:39,890 bulkload_client.py] Importing 10 entities in 4673 bytes ERROR2008-11-20 10:52:41,765 bulkload_client.py] An error occurred while importing: (10061, 'Connection refused') ERROR2008-11-20 10:52:41,780 bulkload_client.py] Import failed Same script is running for google app enging data store. Thanks for the help. On Nov 19, 10:11 pm, Marzia Niccolai [EMAIL PROTECTED] wrote: Hi, What error is listed in your logs for this message? http://appengine.google.com/logs?app_id=xx -Marzia On Wed, Nov 19, 2008 at 5:36 AM, Gampesh [EMAIL PROTECTED] wrote: my bulkupload was working properly but after two or three upload of data i got following error can any body help me? Thanks INFO 2008-11-19 19:00:38,358 bulkload_client.py] Starting import; maximum 10 entities per post INFO 2008-11-19 19:00:38,358 bulkload_client.py] Importing 10 entities in 5379 bytes ERROR2008-11-19 19:00:43,828 bulkload_client.py] An error occurred while importing: Received code 500: Internal Server Error htmlhead meta http-equiv=content-type content=text/html;charset=utf-8 title500 Server Error/title /head body text=#00 bgcolor=#ff h1Error: Server Error/h1 h2The server encountered an error and could not complete your request.pIf the problem persists, please A HREF=http:// www.google.com/support/report/A your proble m and mention this error message and the query that caused it./h2 h2/h2 /body/html ERROR2008-11-19 19:00:43,858 bulkload_client.py] Import failed --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---