[google-appengine] Re: Google App Engine is slow to deploy, hangs on "Updating service [someproject]..."
Sames issues on flexible.. Not able to build and deploy anymore ! this a a simple Wordpress web site but Build time out after 10 minutes (deadlineexceedederrors ..) Let's go to a simple CAAS and forget about google bloated GAE -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at https://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/93219f03-938a-4859-a4bc-6d74c6049b4d%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] 1.6.0 : logging doesn't support non ascii char
I've reopened this issue : http://code.google.com/p/googleappengine/issues/detail?id=573 If you try : logging.info(é) or logging.info(ué) the dev_server crashes. It was working before 1.6.0 (and it works in production). I use python2.5. Traceback (most recent call last): File C:\Outils\google_appengine\google\appengine\tools\dev_appserver.py, line 2641, in _HandleRequest self._Dispatch(dispatcher, self.rfile, outfile, env_dict) File C:\Outils\google_appengine\google\appengine\tools\dev_appserver.py, line 2528, in _Dispatch base_env_dict=env_dict) File C:\Outils\google_appengine\google\appengine\tools\dev_appserver.py, line 616, in Dispatch base_env_dict=base_env_dict) File C:\Outils\google_appengine\google\appengine\tools\dev_appserver.py, line 1592, in Dispatch self._module_dict) File C:\Outils\google_appengine\google\appengine\tools\dev_appserver.py, line 1517, in ExecuteCGI logservice_stub._flush_logs_buffer() File C:\Outils\google_appengine\google\appengine\api\logservice\logservice_stub.py, line 71, in _flush_logs_buffer logservice.logs_buffer().flush() File C:\Outils\google_appengine\google\appengine\api\logservice\logservice.py, line 228, in flush self._lock_and_call(self._flush) File C:\Outils\google_appengine\google\appengine\api\logservice\logservice.py, line 112, in _lock_and_call return method(*args) File C:\Outils\google_appengine\google\appengine\api\logservice\logservice.py, line 260, in _flush apiproxy_stub_map.MakeSyncCall('logservice', 'Flush', request, response) File C:\Outils\google_appengine\google\appengine\api\apiproxy_stub_map.py, line 94, in MakeSyncCall return stubmap.MakeSyncCall(service, call, request, response) File C:\Outils\google_appengine\google\appengine\api\apiproxy_stub_map.py, line 308, in MakeSyncCall rpc.CheckSuccess() File C:\Outils\google_appengine\google\appengine\api\apiproxy_rpc.py, line 156, in _WaitImpl self.request, self.response) File C:\Outils\google_appengine\google\appengine\api\apiproxy_stub.py, line 87, in MakeSyncCall method(request, response) File C:\Outils\google_appengine\google\appengine\api\logservice\logservice_stub.py, line 309, in _Dynamic_Flush new_app_logs = self.put_log_lines(group.log_line_list()) File C:\Outils\google_appengine\google\appengine\api\logservice\logservice_stub.py, line 321, in put_log_lines return _run_in_namespace(self._put_log_lines, lines) File C:\Outils\google_appengine\google\appengine\api\logservice\logservice_stub.py, line 93, in _run_in_namespace return f(*args) File C:\Outils\google_appengine\google\appengine\api\logservice\logservice_stub.py, line 330, in _put_log_lines message=app_log.message()) File C:\Outils\google_appengine\google\appengine\ext\db\__init__.py, line 945, in __init__ prop.__set__(self, value) File C:\Outils\google_appengine\google\appengine\ext\db\__init__.py, line 599, in __set__ value = self.validate(value) File C:\Outils\google_appengine\google\appengine\ext\db\__init__.py, line 2696, in validate value = self.data_type(value) File C:\Outils\google_appengine\google\appengine\api\datastore_types.py, line 1138, in __new__ return super(Text, cls).__new__(cls, arg, encoding) UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 0: ordinal not in range(128) -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/8gnq3JmGSRAJ. 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 : Keep it short: Who is forced to leave GAE?
I've 2 apps that have a big increase, so one will be shutdown and for the other I will try to optimize it more. But now, I've stopped all my current projects. With this new pricing, developments will be driven by the costs. I like to optimize my apps to make them better or faster but optimize them just to make them cheaper is a waste of time. Sylvain -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/pnbxP3PFbK8J. 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: Updated App Engine Pricing FAQ!
Hi Denis, [...]Google wants a healthy eco-system but at the same time do want to have deal with real businesses, but not becoming almost-free hosting.[...] I think you're right. But in 2008, it was pay for what you use and not pay for what you use + $9 / month. No monthly fee,... it was very important for me : just pay for what I need. So, I still don't understand what do we have with these $9. - An app with 0.9 GB scales and costs $0. - An app with 1.1 GB scales and costs $9/month And maybe more if we can't pay in $ but in € (this issue 1999, is still opened) http://code.google.com/p/googleappengine/issues/detail?id=1999 I understand that free quotas should be reduced and the price (data, fetch,...) have to increase in order to make GAE viable. But $9/month is too high and should be per account and not per application. (don't know if it exists but a dev with 10 paied apps will have to pay : 9*12*10 = 1080€ / year) Regards. I still love GAE, not the price :) -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/V-vNPsV5A-AJ. 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: Updated App Engine Pricing FAQ!
I'm still disapointed with the new pricing. After this new FAQ, It seems that now, there will be only minor changes Just because of the new $9/month, I will have to shutdown 2 apps. I've developped these app for a community of players (to help them). Currently, it costs me $12 / year (I only use small GB), with new pricing : more than $9 * 12 = $108 / year /app. I can't monetize these apps and $216 / year is too high to continue to help them... Another thing in your example (*For example, if an on-demand instance is serving traffic for 5 min, is then down for 4 minutes and then serving traffic for 3 more minutes, you will pay for (5+4+3)+15 minutes, or $0.08 / 60 * 27 = 3.6 cents.*). Does it mean that if my app is up for 8 minutes, I will be charge for 27 ? It seems disproportionate ? Regards Sylvain -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/XMy-m5aodMQJ. 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: Download an older AppEngine version
Here : http://code.google.com/p/googleappengine/downloads/list?can=1q=colspec=Filename+Summary+Uploaded+ReleaseDate+Size+DownloadCount Sylvain -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/7oHzNx8Ha64J. 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: Best practices for GAE iOS
I'm currently working on a project with GAE as the backend and mobile (iOs, Android) + Web as client. The backend is based on protorpc http://code.google.com/p/google-protorpc/ which is now part of GAE. I hope it will help. Sylvain -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/tsL-VFcvDR0J. 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 Bulkloader vs the deprecated Loader class
Hi, I've tried to convert my old Loader class to the new Bulkloader. I must admit, I've failed ;) First, I've found that with the new Bulkloader, it's very easy to donwload datas. Uploading, is another story... particularly if you want to execute post functions on entities. Here is a list of thing that I didn't manage to do/understand, with the new bulkloader - how to add external modules (sys.path) else all files must be in the same dir. - how to execute a method attached to a model - the new bulkloader doesn't check the model (required, type, default) - db.ComputedProperty or even DateTimeProperty with auto_add_ are not executed - in the examples (http://bulkloadersample.appspot.com/showfile/bulkloader.yaml), it adds import model, I thought it was the key to make it works. But no.. I don't understand why I have to that, it changes nothing but it creates Kind with name models.MyModel. Bad. - the create_bulkloader_config function prepares the config_file for the download, to upload datas you have to add all transforms import else datas like (geo, list,...) are imported as string. - post_import_function returns a dict not an entity. It's probably better for performance but more complicated Most of these are easier with the Loader class. You can find on Stackoverflow or in this group about : import_template, export, post_import_function, post_export_function but nothing really usefull in the official documentation (examples ?). To make it works, you have to spend more time to prepare the datas than with the old Loader class. Currenlty I use the loader class and the transform.py from the new Bulkloader. Any other experiences with the new bulkloader ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/4GGjj5vRjFsJ. 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.
Re: [google-appengine] Re: Custom user authentication...
Hi, I've decided to use protorpc, which is a very good project. I really like how to works. Once this part will be finished, I'll see if I use tipfy, webapp2 (can use protorpc), tornado,... for the web part. I didn't look at jsonrpc but protorpc is so good I don't want to look at any other projects. Regards -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/3XcH9neyeYkJ. 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: Custom user authentication...
Hi, Currently, I use an old Tipfy module auth : http://code.google.com/p/tipfy-ext-auth/source/browse/tipfy/ext/auth/model.py and protorpc for the JSON message. http://code.google.com/p/google-protorpc/ I've created a SessionMessage(session_id, user_id) that is sent in all JSON request/response. For the auth part : tipfy is probably the best choice because it can use basic auth and FaceBook, Google,... Sylvain On Jun 8, 1:26 pm, Felipe Meirelles poz...@gmail.com wrote: Again, I use django+piston to serve Json with auth on Appengine. I'll take a look at tipfy too (: Anyway, what made me go for django is the fact that if I need to go out of appengine for any reason I don't have to rewrite my app. On Wed, Jun 8, 2011 at 8:20 AM, Pankaj Chawla pankaj...@gmail.com wrote: Thanks I will check it out. After I emailed, I was looking around and found tipfy(http://www.tipfy.org/). Its supposedly a framework specifically for GAE and it also supports multiple modes of authentication including datastore based. Anybody has used it and have good/bad things to say about it. BTW, my app on GAE will only be exposing a json based API that will be used by a custom client built in Qt for desktop and maybe later a native android/iPhone app. Are there any resources out there that talk about this especially with respect to authentication, sessions etc as the API should only respond to authenticated users within a specific session. I found a few pointers on stackoverflow.com but non that were extensive. Thanks Pankaj On Wed, Jun 8, 2011 at 4:38 PM, Felipe Meirelles poz...@gmail.com wrote: Actualy the django login system works realy fine on appengine. Take a look athttp://www.allbuttonspressed.com/and grab the djangoappengine project. They have ported both auth and admin module to appengine, as many other things in django. I use it on two commercial applications on appengine and it works great. On Wed, Jun 8, 2011 at 6:14 AM, Pankaj Chawla pankaj...@gmail.comwrote: Hi I understand that google appengine supports user authentication using google accounts or openid or google app accounts. I am trying to build an application on appspot.com where the end user may not have google or openid accounts and hence need to support a custom user authentication with datastore based users. Before I decide to write one from scratch I was wondering if the user authentication of say Django or any other python framework can be leveraged. One option for me is to pick a google app account and then provide an interface to allow user creation for my custom domain like u...@example.com but I figured that beyond 10 users, Google Apps account charges $5 per user account. Thats seems to be a lot of money just for user creation as they wont be using the other add-ons that come with the Google App account. Thanks Pankaj -- 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. -- Att, Felipe Meirelles. -- 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] Bulkloader upload non ascii data to the local dev server
Hi, With the new bulkloader, I can download data from the production server to CSV (utf-8). Now If I delete all the production datas, I can upload my CSV. All the datas are correct. But If I want to upload this CSV to the local dev server then all properties that contain non ascii char (é,è,ù,ç,) are blank. There is no warning, no log,... it fails silently. I've tried to use lambda x: x.encode('utf-8') or other unicode transformations, but it doesn't work. I think there is a bug and I will fill an issue but maybe there is solution ? Regards -- 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: Troubles with Backups
Did you first generate a bulkloader.yaml with create_bulkloader_config command ? appcfg.py create_bulkloader_config --filename=bulkloader.yaml (doesn't work on dev) Then you must use this bulkloader.yaml with the --config_file flag : appcfg.py download_data --config_file=bulkloader.yaml -- filename=users.csv --kind=Permission --url=app-directory For the remote api, did you use the th builtin handler ? - remote_api: on Then the --url should be --url=http://mysite.appspot.com/_ah/ remote_api (/_ah) else you can read more here. http://ikaisays.com/2010/06/10/using-the-bulkloader-with-java-app-engine/ http://blog.notdot.net/2010/04/Using-the-new-bulkloader Regards On Jun 5, 1:35 pm, walter wdv...@gmail.com wrote: I try to do this: appcfg.py download_data --application=mysite --kind=Album --url=http:// mysite.appspot.com/remote_api --filename=backups/data.csv But always have the error HTTP error 405 and next message: File /home/myfolder/apps/google_appengine/google/net/proto/ ProtocolBuffer.py line 481, in skipData raise ProtocolBufferDecodeError, corrupted My app.yaml: application: mysite version: 2 runtime: python api_version: 1 builtins: - datastore_admin: on - remote_api: on handlers: - url: / script: main.py - url: /media/css static_dir: media/css - url: /media/img static_dir: media/img - url: /media/js static_dir: media/js - url: /.* script: main.py -- 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] Bulkloader downloads data as a binary SQLite format 3 and not CSV
Hi, I've done all the steps from here : http://code.google.com/appengine/docs/python/tools/uploadingdata.html and it seems to be ok, but : When I try to download the data as CSV, the file is a binary SQLite format 3. my bulkloader.yaml seems to be ok ( connector: csv). I've followed these 2 posts : http://blog.notdot.net/2010/04/Using-the-new-bulkloader http://ikaisays.com/2010/06/10/using-the-bulkloader-with-java-app-engine/ with no success. The file is always in a binary SQLite format 3 I use python 2.5.4 and GAE 1.5.0 Any idea ? Thanx. -- 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: Bulkloader downloads data as a binary SQLite format 3 and not CSV
OK,... I found the issue :) First the doc is wrong here : http://code.google.com/appengine/docs/python/tools/uploadingdata.html#Downloading_and_Uploading_All_Data You MUST add a --config_file=.yaml. Else there is no warning, it downloads the entities but in SQL 3 format. At the end of the doc : http://code.google.com/appengine/docs/python/tools/uploadingdata.html#Editing_the_Configuration_File The --config_file is mentioned. Maybe this doc should be rewrite a little. Regards Sylvain On Jun 4, 2:09 pm, Sylvain sylvain.viv...@gmail.com wrote: Hi, I've done all the steps from here :http://code.google.com/appengine/docs/python/tools/uploadingdata.html and it seems to be ok, but : When I try to download the data as CSV, the file is a binary SQLite format 3. my bulkloader.yaml seems to be ok ( connector: csv). I've followed these 2 posts :http://blog.notdot.net/2010/04/Using-the-new-bulkloaderhttp://ikaisays.com/2010/06/10/using-the-bulkloader-with-java-app-eng... with no success. The file is always in a binary SQLite format 3 I use python 2.5.4 and GAE 1.5.0 Any idea ? Thanx. -- 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: FAQ for out of preview pricing changes
Even if I think that the monthly fee should be removed (or be a lot cheaper), a fee per ACCOUNT is much better. If a dev has 10 small app, it will cost : $9 * 12 * 10 = $1080 just for the monthly fee. Currently this dev paies only less than $50 (only for few GB for example). On 20 mai, 10:43, Tim meer...@gmail.com wrote: Here's a suggestion GAE guys - how about the $9 minimum is per ACCOUNT rather than per APP. Me - I've only got the one app, but for people who say I've got 8 apps, any one of which might just break the quota any month, but only by 50c or so then this would ease their burden a bit - $9 a month they can probably fund, whereas $70 a month sounds a bit steep. Of course, if they're using $70 of resources a month, then they pay that, but it eases the problem of small bursts on a bunch of rarely used apps, and it gets you a paying customer (it also encourages me, as a small user, to develop a couple more apps once I'm paying for the basic facility) Just a thought... -- T -- 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: FAQ for out of preview pricing changes
Now, how does it make any sense to pay minimum of $9 to be able to cross the 5GB free limit? For me, it makes no sense. I'm working with GAE since the beginning, and the mojo was pay for what you use/need. It's not only a question of $9, but they change the rules with no real explanation. I use 4.99GB it's free. I use 5.0001 it costs $9 I still don't understand these $9, for what... why, I can understand they need to increase the price, reduce the free quota.,..etc,... But now, changing the rule : instance + $9/monthly... I can't. On 19 mai, 11:24, Vinuth Madinur vinuth.madi...@gmail.com wrote: I get 10 GB of EBS space for free on AWS. It is insane to think it is alright to pay $9 to be able to consume more than 5GB. For $10, you get 100 GB space on AWS. And for $10, you get ~59GB space on appengine. Now, how does it make any sense to pay minimum of $9 to be able to cross the 5GB free limit? On Thu, May 19, 2011 at 2:44 PM, Paul pgronkiew...@gmail.com wrote: How about new Google's In App payment system? Looks promising. Thing is, people want too much for free. $9 is less than you pay for internet at home, hosting anything at Google is cheaper than putting old PC in the basement :) I hope that going out of preview will mean even more tools and toys for us. Better documentation, better plugins [how about working on DataNucleus? current plugin is really really outdated]... On May 19, 9:47 am, Jeff Schnitzer j...@infohazard.org wrote: You presume that my app has a web front end. Most of the users of this particular app are iPhone clients, and the developer responsible for that code has moved on to other projects. ...and actually, there does seem to be a vast chasm between successful apps and unsuccessful ones. I'm not entirely certain why. It may partly be due to the fact that no payment system in the world lets you charge $0.50/mo. Jeff On Thu, May 19, 2011 at 12:21 AM, Brandon Wirtz drak...@digerat.com wrote: Anything getting enough traffic to cross the free barrier should be able to have a revenue stream. Especially if you thought it was going to be a commercial venture. And this is cold hearted but if you have loyal users who are using the app that much and none of them will pony up $.50 a month... That's rough. The Reason I don't think anyone should complain about the $9 number is that anyone should be able to put Adsense on their app and make $9. I may be biased, but I have an App that averages a penny a day right now, and generates $2500 a month in Adsense. There has to be some economic model that works between my extreme and yours. -Original Message- From: google-appengine@googlegroups.com [mailto:google-appengine@googlegroups.com] On Behalf Of Jeff Schnitzer Sent: Thursday, May 19, 2011 12:10 AM To: google-appengine@googlegroups.com Subject: Re: [google-appengine] Re: FAQ for out of preview pricing changes On Wed, May 18, 2011 at 5:03 PM, Brandon Wirtz drak...@digerat.com wrote: Put some ads on it and it should get to the $9 a month. Put a donate button on it. It's never that simple, and certainly isn't in this case. That said, Google certainly doesn't owe anyone a free service layer, nor a linear ramp-up to paid service. And apps around the limit of the free service tier are probably something to discourage since they actually consume resources. Still, I'm more likely to contribute *some* money for my forlorn projects if the cost was not a discontiguous function. Jeff -- 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. -- 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 athttp:// 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 google-appengine+unsubscr...@googlegroups.com. 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] Re: FAQ for out of preview pricing changes
Thank you for this FAQ, But : [...] will still have to spend $9/month in order to scale but you won’t pay an additional $9 for your first $9 worth of usage each month.[...] So with this change : an app thats use 1GB above the free quota will pay $9/month (and not $9,15) ? Currently, this app cost $0.15/month It's x60 than now more than $100 / year... This drastic change is not fair. I think that many small apps that don't fit within the free quotas will be shutdown. Regards Sylvain On 18 mai, 08:06, Vinuth Madinur vinuth.madi...@gmail.com wrote: For instance, for a B4 (approx 2.4GHz) instance: consuming 10 Mcycles/request = 240 request/second/Instance, 100 Mcycles/request = 24 request/second/Instance, etc. We are only planning on having one size of Frontend Instance. Q: So, is a Frontend Instance going to be a B4? Even if the CPU is not currently working due to waiting for responses, the instance is still resident and considered “in use” so, essentially, it still costs Google money. Q: Does this mean, the Instance is exclusive and not shared between applications? That the CPU will be left idle rather than used by another application? And the unused memory be left free rather than allowing other apps to use it? Q: Is there ever a possibility to have different pricing for active instance hours versus idle instance hours? Still unhappy about the $9/month pricing. And happy that we'll have python 2.7 with multi threading support by end of this year. Thanks, Vinuth. On Wed, May 18, 2011 at 10:19 AM, Gregory D'alesandre gr...@google.comwrote: Hello All! As you've likely heard, when Google App Engine leaves Preview in the second half of 2011, the pricing model will change. Prices are listed here: http://www.google.com/enterprise/appengine/appengine_pricing.html. But that leaves a lot of questions unanswered, this FAQ is intended to help answer some of the frequently asked questions about the new model. We are interested in hearing additional thoughts and comments you have based on this. Once it is relatively stable I'll add it to our official docs. If you find there is something you want to know but it is not yet answered, just ask and I'll try to answer it as clearly as possible. We've made some changes based on the feedback we've gotten (from this group in particular), they are bolded below but not updated on the external pages yet. There are still blanks to fill in and I will be sending that information to this group first in order as it is available. Finally, thank you for your questions and bearing with us as we are ironing out details, I and the whole App Engine team very much appreciate it. Greg D'Alesandre Senior Product Manager, Google App Engine --- *Definitions* *Instance*: A small virtual environment to run your code with a reserved amount of CPU and Memory. *Frontend Instance*: An Instance running your code and scaling dynamically based on the incoming requests but limited in how long a request can run. *Backend Instance*: An Instance running your code with limited scaling based on your settings and potentially starting and stopping based on your actions. *Scheduler*: Part of the App Engine infrastructure that determines which Instance should serve a request including whether or not a new Instance is needed. *Serving Infrastructure* Q: What’s an Instance? A: When App Engine starts running your code it creates a small virtual environment to run your code with a reserved amount of CPU and Memory. For example if you are running a Java app, we will start a new JVM for you and load your code into it. Q: Is an App Engine Instance similar to a VM from infrastructure providers? A: Yes and no, they both have a set amount of CPU and Memory allocated to them, but GAE instances don’t have the overhead of operating systems or other applications running, so a much larger percentage of the CPU and memory is considered “usable.” They also operate against high-level APIs and not down through layers of code to virtual device drivers, so it’s more efficient, and allows all the services to be fully managed. Q: How does GAE determine the number of Frontend Instances to run? A: For each new request, the Scheduler decides whether there is an available Instance for the request, the request should wait, or a new Instance should be created to service the request. It looks at the number of Instances, the throughput of the Instances, and the number of requests waiting. Based on that it predicts how long it will take before it can serve the request (aka the Pending Latency). If it predicts the delay will be over 1 second, a new Instance is created. If it looks like an Instance is no longer needed, it will take that Instance down. Q: Should I assume I will be charged for the number of Instances currently being shown in the Admin console
[google-appengine] Re: What do you want to see answered in Greg's pricing FAQ?
Hi, With the actual prices, a very small paid app that only need 1GB above the free quota costs : $0.15 / month. With the new prices : $9 (monthly fee) + $0.15 = $9.15. Old price $2 / year - new price $110/year (+ $108) So it increases the price by x55. For these app, the increase is very high. What will you answer for them ? Regards. On 12 mai, 09:14, Kenneth kennet...@aladdinschools.com wrote: Greg mentioned he was putting together an FAQ so let's help him out! If you're going to answer this just put in your question into a single line, let's not try and answer them here or give opinions, there's plenty of other threads for that. I do understand that Google doesn't have answers to some these. Here's my list: 1) What is the time granularity of the instance pricing? ie if I have an instance up for 5 minutes, what am I charged, $0.08 / 60*5? 2) Will I be able to tune the scheduler myself, ie set it to performance or low cost, Will I be able to limit the min or max number of instances created (with the obvious impact on user experience)? 3) Python concurrency, will this require any code changes, do you have any estimates based on your testing of the number of well behaved requests per second a single instance will be able to handle for a given framework? 4) Database charges, when can you give us more details over what Max gave in the other thread, are you charging for deletes, what do you expect the ratio to be between the new pricing metric and the Datastore API calls metric we have today? 5) Will you be charging differently for instances that use different amounts of memory, since this seems to be the cost that you're going after that isn't charged for in the current model. Thanks, Kenneth -- 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 App Engine suddenly becoming more expensive???
For very small app $9/month is a big jump. Example : for one of my apps, I pay $1/month and with the new price $10/month = +900% GAE was : pay for what you use, it is no more the case... On May 10, 7:29 pm, Ugorji ugo...@gmail.com wrote: Did App Engine suddenly start costing a minimum of $45 per month? http://googleappengine.blogspot.com/2011/05/year-ahead-for-google-app... Summary: pay-as-you-go is 8 cents per hour an instance is running, or 5 cents per hour if you pre-reserve. This translates to $58 per month for pay-as-you-go or $36 per month for pre-reserved. Add the $9/app/month fee for any serious apps with billing enabled (required for using blobstore, etc), and it translates to $45 (if pre-reserved) or $67 (pay-as-you-go). And this is for an app with only one instance always running. Compared to what we've been used to, this seems like a major increase in price. Maybe someone can shed some light on this - I hope it's not as bad as it looks to me. (P.S. Pricing for High Replication Datastore is a welcome change - thanks Google. You've also made it easier to pick HRD, as there'd no pricing advantage for M/S anymore). -- 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 App Engine suddenly becoming more expensive???
I've many small app for personal uses or friends where I only need more storage : 2 GB. For this app where the free version is not enough but for little use, $9 is important. Before : it costed about $100€ for 10 apps / year. Now : 100 (storage) + $9 * 12 (month) * 10 (app) = $1180. If you have 1 real app, it's ok. For many small app, $9 is very important. Maybe if $9 was per account not per app it would ok else, AppEngine is not the good solution. There are so many cheaper solution. On May 11, 12:59 am, dan dfran...@gmail.com wrote: I agree, $9/month is reasonable for a real app. The big open question is the less predictable costs, e.g., the new scheduler and API changes. -- 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: Updating Model Schema in Google App Engine?
Look at this : http://blog.notdot.net/2010/03/Announcing-a-robust-datastore-bulk-update-utility-for-App-Engine On 25 mai, 19:53, App Engine N00B vivek.securitywiz...@gmail.com wrote: Hi, Google is proposing changing one entry at a time to the default values http://code.google.com/appengine/articles/update_schema.html I have a model with a million rows and doing this with a web browser will take me ages. Another option is to run this using task queues but this will cost me a lot of cpu time any easy way to do 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-appeng...@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 app engine blog application
or here : http://stackoverflow.com/questions/1086465/blog-engine-for-google-app-engine On May 9, 2:53 am, Tim Hoffman zutes...@gmail.com wrote: http://blog.notdot.net/2009/10/Writing-a-blog-system-on-App-Engine On May 9, 2:20 am, José Moreira matrixowns...@gmail.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Do you know any blog application that runs on google app engine ? Best -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) iQEcBAEBAgAGBQJL5atbAAoJEO8uTdgMx3/h8bwH/0pfzYd6CWsAtPC7zdCcbB8Z pQz/uKIoxe/A8B+k+oxL+BvEBElOQRLt8GToZ/DNedn6aKAeOK30dSbem832u9Qu vZeELlD/3zWVo7tPS1QrTsI/6EEHo+7ExQCbSw13y8oCQH6jBpnyJIa6qYYcWSCK X/K9bOvQNjXjezhwd2G27yo3/uny+/UiGSq9YpgKFQ2j2e6vmgsCt/twwR77Hpc4 Bxvs4eYEriwX4UkHjXiAXZ+T0N6sYB5L6woY2rZDb5kBn6Q17ZSmqPfTDDQihFU5 9Sd+L0+gDK4kM40iQyZho3HnxgR1np4l5PHwd4vRufj4ms6yOfJeKj5QVPzCwAU= =sbJk -END PGP SIGNATURE- -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group athttp://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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group athttp://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-appeng...@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: Deployment of existing app from the web
You can star this : http://code.google.com/p/googleappengine/issues/detail?id=486 On Mar 30, 10:34 am, PoulS poul.stauga...@gmail.com wrote: While app engine is great for those who want to develop their own apps, how about those who have little technical skills and just want to deploy an app that someone else has made available on the web. Shouldn't they be able to do so from within the web interface ? -- 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-appeng...@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: creating a local copy of application for development
It's an often request and even if dev should use a SCM, I think it could be possible to download sources. So, if other people don't want it, then just add an option in the app.yaml : download_source : 1|0 It create a link in the Dashboard. Then everybody would be happy. Regards. On Mar 28, 3:53 am, nickmilon nickmi...@gmail.com wrote: I am with Tim on this. Never ever ! And not only dropbox nowdays you can store anykind of file in google docs. happy coding ;) On Mar 28, 12:35 am, Wesley C (Google) wesc+...@google.com wrote: tim is correct. you only *push* to the cloud, never pull. can you imagine what would happen if we made available the ability to download source code? think of all the applications out there... anyone could download anyone else's code, regardless of the effort and time it took to create those applications! it would be a nightmare. so yes, altho you can write code that will let you get to your source, it's non-trivial and not worth your effort. the copy of your source where you created it should always be seen as the master, and you're only sending to App Engine the copy that we should run on your behalf. if you have multiple locations, then you need some version control that is accessible at all sites. if you don't, then a simple distributed file solution likehttp://dropbox.com may work for you. best regards, -- wesley - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Core Python Programming, Prentice Hall, (c)2007,2001 Python Fundamentals, Prentice Hall, (c)2009 http://corepython.com wesley.j.chun :: wesc+...@google.com developer relations :: google app engine -- 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-appeng...@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: popularity of Python vs Java on GAE
Maybe because many Python dev still use this forum and not the python one. On Mar 25, 6:22 am, Richard richar...@gmail.com wrote: I noticed the Java forum is more active than the Python one: 19318 vs 6429 posts. Is there any data available for the number of Python apps vs Java on Google App Engine? -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: How to use Cipher in GAE?
This can help I think : http://groups.google.com/group/google-appengine/tree/browse_frm/thread/b18bd661e88a7e69/1ad10c65b482a85e?rnum=1q=PyCrypto_done=%2Fgroup%2Fgoogle-appengine%2Fbrowse_frm%2Fthread%2Fb18bd661e88a7e69%2F1d9ec438809c8395%3Flnk%3Dgst%26q%3DPyCrypto%26#doc_54998520c096e3c7 On Mar 1, 3:03 am, Iap iap...@gmail.com wrote: I learned that GAE has a customized version of PyCrypto. but from Crypto.Cipher import * raises: NotImplementedError: This function is not supported on App Engine. Neither, import DES,Blowfish,. from Crypto.Cipher all are failed with the same reason. I does not see these ciphers have been excluded as described on the list inhttp://code.google.com/intl/zh-en/appengine/docs/python/tools/librari... What's the right way to import these Ciphers? Or they are all not implemented? Thanks in advance. -- 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-appeng...@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: Deleting Data from BlobView Does Not Work
Star this : http://code.google.com/p/googleappengine/issues/detail?id=2570 On Feb 28, 12:08 pm, Brett Shelley brett.h.shel...@gmail.com wrote: Hi All, If I log into Appspot and try to delete one or many Blobs from the Blob Viewer, then a get a failure message. The specific failure message: Server Error A Server Error has occurred. I have attached a screenshot. *To Reproduce*: Log into appspot. Navigate to the Data --Blob Viewer. Select one or any number of blobs. Click on the Delete Button at the bottom. And then the error occurs. I have tried this numerous times over the last three months. Attempting to delete a blob via the AppSpot UI has always failed. I have billing enabled. I expect to use the blob-store extensively. Since this is a pay-for feature, I respectfully request that someone have a look at this issue. I hope and suspect that this problem is a small bug. *Still Impressed*: Despite this problem, I still am amazed when using the extraordinary GWT and App Engine platforms. You all have done a truly fantastic job. I have been working in IT since the mid-1990s and this platform's capabilities are simply mind-boggling. Kind Regards, Brett google-blob-delete-server-error.jpg 55KViewDownload -- 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-appeng...@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: Remote XML documents being truncated by GAE
30 seconds response limit ? http://code.google.com/intl/fr/appengine/docs/python/runtime.html#The_Request_Timer or the URL Fetch deadline limit (5s by default) http://code.google.com/intl/fr/appengine/docs/python/urlfetch/fetchfunction.html Else I don't know. On Feb 27, 9:53 am, davenaff daven...@gmail.com wrote: I have a simple service that requests a remote XML document, formats it and displays it. Recently, I began to see some of the XML documents truncated. It consistently happens at character 1048544. This of course causes my SAX parser to fail. In dev (using the SDK), it works fine and full documents are handled just fine, so this problem seems to be exclusive to the GAE production environment. The App receives very little traffic. Am I hitting some App Engine limit? Other ideas? -- 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-appeng...@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: pygooglechart
I think it's easier not to use a lib for Google Chart. Each time I tried to use one, I spent a lot of time to understand / debug it. There is a good example how to use GChart from scratch here : http://gpxplot.googlecode.com/svn/trunk/gpxplot.py And there is a perfect func to generate extended data : def google_ext_encode(i): Google Charts' extended encoding, see http://code.google.com/apis/chart/mappings.html#extended_values; enc='ABCDEFGHIJKLMNOPQRSTUVWXYZ' enc=enc+enc.lower()+'0123456789-.' i=int(i)%4096 # modulo 4096 figure=enc[int(i/len(enc))]+enc[int(i%len(enc))] return figure I think this is the only thing you need. On Feb 19, 10:39 pm, nickmilon nickmi...@gmail.com wrote: I have taken a look in the library. It seems it imports the following python packages import os import urllib import math import random import re Now I am not sure it will work on GAE since as far as I know math is a wraper around c math and this is no no in GAE. Hope some body else who is more familiar with the above libraries can advice. Happy coding ;-) Yes in your PC - follow the instructions of the library for that so you ca test it with the local server. Also include the whole library on your project files so it will be uploaded in GAE. On Feb 19, 10:21 pm, nickmilon nickmi...@gmail.com wrote: Yes in your PC - follow the instructions of the library for that. Later on I will take a look at the library my self. On Feb 19, 1:09 pm, Massimiliano massimiliano.pietr...@gmail.com wrote: Sure you can after installing the library on my PC? 2010/2/19 nickmilon nickmi...@gmail.com Sure you can after installing the library and including the files in your application provided this library does not depend on anything but python. Also since data passing mechanism for google visualization api is quite easy to implement in python you can avoid the burden of one more import and write your own interface. For an example of using visualization api from gae you can take a look at: http://www.geognos.com/geo/en/cc/no.html#Economy Unfortunately i did not have the time to document the code but feel free to examine the page source code and the relative javascript files. Happy coding;) On Feb 18, 2:30 pm, Massimiliano massimiliano.pietr...@gmail.com wrote: Dear All, I'm trying to learn using python and Google App Engine. Can I use this library on the appengine? Just importing this in the python application (from pygooglechart import *)? Massimiliano -- My email: massimiliano.pietr...@gmail.com My Google Wave: massimiliano.pietr...@googlewave.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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib e...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- My email: massimiliano.pietr...@gmail.com My Google Wave: massimiliano.pietr...@googlewave.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-appeng...@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: Downloading source code from Google App Engine
I'm a little bit paranoid but for most of my projects, I always use : - a CVS,... - zipme, to download the current python files,.. http://www.manatlan.com/blog/zipme___download_sources_of_your_gae_website__as_a_zip_file - a batch to automaticaly zip/upload the sources with my project. For this last point, I've added a request : http://code.google.com/p/googleappengine/issues/detail?id=831 Add a flag to appcfg.py to zip/upload the sources Currently, I use something like this. --- START BAT --- 7za a -tzip src\source.zip src\ -xr!*.pyc appcfg.py update src/ --- END BAT --- APP.YAML --- - url: /source.zip static_files: source.zip upload: source.zip login: admin -- On Feb 18, 8:32 am, kang areyouloo...@gmail.com wrote: I use dropbox to back up my app engine source code. I put the app engine code in a dropbox folder. On Thu, Feb 18, 2010 at 2:02 AM, Renee Maier maier.re...@gmail.com wrote: I was wondering if there is a way to download the source code from my app engine project? My hard drive crashed on my Mac and I (stupidly) did not have the source backed up. Thanks! -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Stay hungry,Stay foolish. -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Memcache: Should we save Model instance or protocol buffer?
I think the answer (and more) is here : http://blog.notdot.net/2009/9/Efficient-model-memcaching On Feb 4, 10:43 am, Nickolas Daskalou n...@daskalou.com wrote: Is it better/safer to store a Model instance into Memcache directly (Method 1 below), or should we convert it to a protocol buffer first, then store it (Method 2 below)? Method 1: memcache.set(cache_key, entity) ... entity = memcache.get(cache_key) Method 2: memcache.set(cache_key, db.model_to_protobuf(entity)) ... entity = db.protobuf_to_model(memcache.get(cache_key)) I'm assuming Method 2 results in a smaller Memcache footprint, yes? Nick -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@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: why my datastore nearly be full?
maybe this bug ? http://code.google.com/p/googleappengine/issues/detail?id=631 On Jan 30, 9:27 am, saintthor saintt...@gmail.com wrote: in quota details, i notic my Total Stored Data is 95%. it shouldn' t be so large. in Datastore Statistics, Size of all entities is only 9MB. all that happened from about 4% to 95% is i updated an entity for about 200 times. the class is: class ltWords( db.Model ): WordsDText = db.TextProperty() after this, there is only one entity of ltWords and the WordsDText is no longer than 1MB. why does it take more than 90% of my datastore quota and how to release it? for saintthor.appspot.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-appeng...@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: Charged $0.01... consequently my credit card was blocked
Star this : http://code.google.com/p/googleappengine/issues/detail?id=1999 On Jan 30, 9:27 pm, Mike mickn...@gmail.com wrote: Hi there Just got off the phone with my bank after spending 10 minutes reactivating my credit card after my first AppEngine credit card charge for $0.01 USD. Banks tend to view these charges as potentially fraudulent. I understand the need to charge for AppEngine, but charging $0.01 a week hardly seems worthwhile. Perhaps the system could aggregate charges to a reasonable amount - say $5, and then charge the card? Alternatively, allow me to prepay a certain amount, so then I can forget about it for a few months. The other issue is that my credit card is in Australia Dollars. I'm probably going to get some sort of foreign currency conversion fee now every time $0.01 is charged. That will probably be many many multiples of the actual charge. Cheers 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-appeng...@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] PDF vulnerability and allowed mail extensions
Hello, Now, PDF is probably the most vulnerable file type and the Most Common File Type in Targeted Attacks http://www.f-secure.com/weblog/archives/1676.html It seems that all recent and major attacks use this file. So, I wonder why it is still allowed in the mail service and why MS Office/OpenOffice (and particularly 2007/2010 type: .docx, .xlsx,... ) are not allowed. During this Chat Room : http://groups.google.com/group/google-appengine/browse_frm/thread/1641cfeaf301e7a5/bbbd057b8cdca36e I've asked this question But now, it seems that PDF should be removed from the white list or office files should be added. else it's not very logical. Regards. -- 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-appeng...@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: Advantage of GAE over PHP/MySQL please
Hello, I think most answers are here : http://code.google.com/appengine/docs/python/gettingstarted/ Do the getting started, and everything will be clear. About django templates : you can use it (or not) or use static files (html, css, js,...) http://code.google.com/appengine/docs/python/gettingstarted/staticfiles.html You can create forms directly inside the code (without template) : http://code.google.com/appengine/docs/python/gettingstarted/handlingforms.html Hope it will help. Regards. On Jan 6, 1:33 pm, paulmo paul.moll...@gmail.com wrote: I love all things Google, but I'm wondering if I should put in effort to migrate to Python, Datastore and GAE. My non-commercial app has two distinct text forms: one is a radio selection and one is a text string that gets exploded and is searched in elseif statements against arrays. The original message is posted to 2 tables in MySQL: one with entire message, and another with exploded array words. This second table is queried for most common words and echoed in a datatable. Both of these forms must be in same app. My app also uses geo location and css/js libraries. I'm confused about Django templates; I did not see any CSS/JS templates per se in the docs; does a beginner do best with static CSS/JS files? The attraction of GAE seems to be doing everything in one interface/ set of tools, and I'd like to keep it that way: I don't need a bunch of links and 3rd party apps. Advice greatly appreciated. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@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: Advantage of GAE over PHP/MySQL please
Do you miss not having a relational database? Workarounds given my situation of using 2 tables? Not really. I think it's easier. But if you need relations, you should read this article : http://code.google.com/appengine/articles/modeling.html If you have only 2 table, maybe you can merge them. So denormalize your datas is often a good thing. Are/can you use Google's webtoolkit or ajax/css apis without having to deploy 3rd party apps? Yes. but for ajax/css, I think it's always easier to use a library like Jquery, Google Closure,... Just upload them as static file/dir or use direct links : http://code.google.com/apis/ajaxlibs/documentation/#AjaxLibraries I think it's similar to PHP, no real diff here. -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Server Error
There are many reasons why this error can be raised. Example : http://code.google.com/p/googleappengine/issues/detail?id=554 Could you pastbin the app.yaml and the main.py ? Or you can check the issue tracker / this forum to find similar issue. Regards. On Jan 6, 5:08 pm, webdev web...@zuckerfeather.com wrote: Server Error A server error has occurred. I get that when I log into appengine.google.com This has been 3 weeks now. My user is web...@zuckerfeather.com Can anyone help me? Im desperate! Thanks, -Matthew -- 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-appeng...@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: Advantage of GAE over PHP/MySQL please
Yes. - For cost savings : read this : http://code.google.com/appengine/docs/billing.html I think GAE is cheap but it only depends on your app. - Learning python, I think it's very easy... I learnt it 1 year ago only for GAE. - data in G's cloud... I can't answer but you should read this upload/ download data : http://code.google.com/appengine/docs/python/tools/uploadingdata.html On Jan 6, 5:36 pm, paulmo paul.moll...@gmail.com wrote: ok thank you for that. seems to come down to cost savings, with price of learning python and accepting that one's data is in G's cloud and is not necessarily under one's exclusive control. Am I on the right track? On Jan 6, 10:59 am, Sylvain sylvain.viv...@gmail.com wrote: Do you miss not having a relational database? Workarounds given my situation of using 2 tables? Not really. I think it's easier. But if you need relations, you should read this article :http://code.google.com/appengine/articles/modeling.html If you have only 2 table, maybe you can merge them. So denormalize your datas is often a good thing. Are/can you use Google's webtoolkit or ajax/css apis without having to deploy 3rd party apps? Yes. but for ajax/css, I think it's always easier to use a library like Jquery, Google Closure,... Just upload them as static file/dir or use direct links :http://code.google.com/apis/ajaxlibs/documentation/#AjaxLibraries I think it's similar to PHP, no real diff here. -- 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-appeng...@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: logging debug on dev appserver
By default, loggind.debug are not printed. You can change this or use logging.info which is printed by default. Regards. On Dec 28, 11:21 am, djidjadji djidja...@gmail.com wrote: Look in the window where you are running the dev-server. The logging messages are printed there. 2009/12/27 dhruvg dhruv.g...@gmail.com: is there a way to view logs on the development server? i am using the standard logging framework, but currently, i need to upload my app to the web to see the logs in the admin console. is there a way to view logs locally, so I can make sure everything is working locally rather than uploading the app to the web? -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group athttp://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-appeng...@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: swfupload and authentication cookies
I have done an app with uploadify, so I think it should be similar with swfupload: The user has to sign to upload a file, so I can get the e-mail with the user api. Then I post the e-mail with the files (optional params in the flash app, custom_settings ?) Then I convert back this e-mail to a User (http://code.google.com/ appengine/docs/python/users/userclass.html#User) It not perfect (security ?), but it's easy. Regards. On Dec 14, 10:38 am, Claude Vedovini cla...@vedovini.net wrote: Hi, An alternative solution would be to generate a one-time temporary url to which swfupload can post the file Regards Claude --- Software Consulting Development +41 78 617 86 98http://vedovini.net/http://twitter.com/cvedovinihttp://www.dita-op.org/ On Dec 13, 11:23 pm, Gijsbert gijsbert.de.h...@gmail.com wrote: Hi, I'm using swfupload (a flash base uploader) to upload files. It's nice because it can limit the upload file size, very handy for app engine, and also supports upload progress. But, the flash upload request does not send the authentication cookies, so the handler is not authenticated. swfupload has an option to send cookies as post data, but I can't figured out how to have that data interpreted by the users module (google accounts) or if that is even possible. So my question: - is there a way to 'initialize' the authenticated google account user from something other than the cookie? Alternatively, is it possible to possible to check the upload file size from javascript? Thanks! Gijsbert -- 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-appeng...@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: Change Default Datastore Folder?
http://code.google.com/intl/fr/appengine/docs/python/tools/devserver.html#Using_the_Datastore To change the location used for the datastore file, use the -- datastore_path option: dev_appserver.py --datastore_path=/tmp/myapp_datastore myapp Regards On Nov 30, 6:52 pm, Joshua Smith joshuaesm...@charter.net wrote: I use the GoogleAppEngineLauncher on my Mac. It stores the datastore in a folder that gets erased on reboot. Is there a way to change the default directory the launcher uses for the datastore? -Joshua -- 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-appeng...@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: preserve data during dev stage
Are you using a Mac ? On Nov 28, 3:21 pm, dburns drrnb...@gmail.com wrote: By default, the development server should preserve data between runs. Are you sure you're not launching dev_appserver with the -c or -- clear_datastore flags? On Nov 27, 11:38 pm, james_027 cai.hai...@gmail.com wrote: hi, How do i preserve my data during the development stage. Every time I start my application all my previous inputted data are lost. 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-appeng...@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: Cron job syntax
Else you can run the job each hour and check the time in your code. Regards. On 18 nov, 02:39, GAEfan ken...@gmail.com wrote: Is it possible to specify various times in a Cron schedule, like: - description: do this job url: /atThisURL schedule: every mon,tue,wed,thu,fri,sat 06:00,07:00,08:00,09:00,10:00,13:00,17:00 From the spec, it does not look like you can. Hate to waste 7 cron jobs on this one task. 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-appeng...@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=.
[google-appengine] Re: Logs in UTC time fomat?
Like these : http://code.google.com/p/googleappengine/issues/detail?id=1102 http://code.google.com/p/googleappengine/issues/detail?id=734 On 29 oct, 09:41, djidjadji djidja...@gmail.com wrote: If you create an issue we can track how many people want it. +1 2009/10/29 fhtino fht...@gmail.com: Hello, is there a way to set Logs time in UTC? Now it seems to be PST. Also Admin Logs should be in UTC. fabrizio --~--~-~--~~~---~--~~ 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: Chat Time transcript for October 21, 2009
Do Office 2007 (docx, xlsx,...) and OpenOffice files are concerned about virus ? I've never seen many reports about virus inside these docs. Anyway, I'don't think GA should worry about virus and IMO a link is less secure than an attachment. A virus in a link is scan once and generally an attachment is scanned twice (one by the antivir OS and the other by the mail server). Regards. Sylvain On 27 oct, 02:01, Jason (Google) apija...@google.com wrote: This past Wednesday, the App Engine team hosted the latest session of its bimonthly IRC office hours. A transcript of the session and a summary of the topics covered is provided below. The next session will take place on Wednesday, November 4th from 7:00-8:00 p.m. PST in the #appengine channel on irc.freenode.net. Note that this will be the first Chat Time to occur after daylight time in the U.S. ends, which means that it will be taking place one hour earlier than usual in countries or states that don't observe daylight savings time. Please be aware of this time difference so you don't inadvertently miss the session. - Jason --SUMMARY--- - Q: Why am I seeing 0.1% rate of datastore operations time out and is anything being done to reduce this? A: A certain level of datastore timeouts is expected (generally between 0.1% and 0.2% of all datastore operations) but, we are actively working on ways to improve datastore reliability. If you are seeing a much higher rate, be sure to inspect your data model for write contention which often manifests as datastore timeouts. [9:02-9:07] - Q: What is the recommended approach to datastore capacity planning ahead of a large bulk upload? A: Entities are stored as protocol buffers (http://code.google.com/p/protobuf/) -- if you familiarize yourself with the protobuf specification, you can determine the space needed to store each entity, minus the datastore overhead, fairly easily. An article is coming out soon which explains how entities and indexes are stored in much more detail. [9:04-9:05] - Q: Can a high level of read operations result in datastore contention? A: Datastore contention is usually the result of too many attempted concurrent writes to the same datastore entity or entity group. Before implementing your data model, consider the expected read/ write access patterns and design your data model accordingly, sharding entities that you expect to update more than once per second (http:// code.google.com/appengine/articles/scaling/contention.html). While concurrent writes generally result in contention, concurrent reads generally result in better performance due to caching. [9:08-9:09, 9:11-9:13, 9:18] - Q: Are there any plans to support more file extensions for attachments to outgoing email, e.g. .doc, .docx, etc.? A: There are no immediate plans to support these extensions due to the prevalence of viruses contained in files of these types. In the meantime, you can include links to the files or share them via Google Docs. [9:14, 9:16, 9:19-9:20] - Q: What is the recommended approach to paging large data sets in App Engine? A: The offset approach is *not* recommended because it won't work for result sets larger than 1,000. Until datastore cursors are available, the recommended approaches are summarized inhttp://code.google.com/appengine/articles/paging.html. [9:21-9:23] - Q: How can one avoid exploding indexes when using list properties? A: In general, you should avoid referencing more than one list property in any query, especially if one or both list properties contain a large number of elements. Index rows have to be added for every permutation of values in the lists, which can result in index explosion. See the video athttp://sites.google.com/site/io/under-the-covers-of-the-google-app-en... to learn more about why exploding indexes occur. [9:22, 9:26, 9:28-9:30, 9:32-9:33, 9:40] - Q: In Java, can one use sequence methods in JPA to get a sequence of datastore IDs? A: No, you have to use the low-level datastore API's allocateIds() method for now. [9:31, 9:33] - If you're looking to use Google Web Toolkit (GWT) and App Engine together, there are a number of combo samples available inhttp://code.google.com/p/googleappengine/source/browse/#svn/trunk/jav... including gwtguestbook, sticky, and taskengine. [9:46, 9:48, 9:50-9:51] - Q: What is being done to address long initialization times for Java applications? A: We are definitely aware of the issue and are rolling out several back-end enhancements over the next few releases to try to minimize this startup time as much as possible. [9:52-9:53] --FULL TRANSCRIPT--- [09:01am] scudder_google: Hi all, welcome to another instlallment of our hour long chat time with people on the App Engine team [09:01am] johnvdenley: Is there any kind of formality to this session? or is it just a free
[google-appengine] Re: redirect to external page
add http:// ? googUrl = http://www.google.com; On Oct 24, 3:57 am, to ddvnek computer...@yahoo.com wrote: --- On Fri, 10/23/09, akuchlous akuchl...@gmail.com wrote: , space Goto ? (r'/(.*)',Goto)], From: akuchlous akuchl...@gmail.com Subject: [google-appengine] redirect to external page To: Google App Engine google-appengine@googlegroups.com Date: Friday, October 23, 2009, 3:49 AM I am using a development server on my machine. I want to redirect anything like: http://localhost.8080/abcd to www.google.com This does not seem to work: class Goto(webapp.RequestHandler): def get(self, url): googUrl = www.google.com self.redirect(googUrl, permanent=True) application = webapp.WSGIApplication( [('/', MainPage), (r'/(.*)',Goto)], If i type in address bar:http://localhost:8080/abcd then I should be redirected towww.google.com but right now I get redirect tohttp://localhost:8080/www.google.com how can i solve it? Thanks Ankur K --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: What are your top three issues in appengine?
1) DataStore Timeout 2) Full Text : attribute and Document Full Text (word, excel) 3) New billing options (monthly, Euro,...) : http://code.google.com/p/googleappengine/issues/detail?id=1999 On 6 oct, 11:04, Kenneth goo...@kmacleod.ie wrote: I was looking at the issue list the other day. There is a lot rubbish in there (support c#!) but what do people who are actively using app engine want fixed? If you had to pick three issues what would they be? Link to issues only, don't give a why app engine sucks rant. :-) Here are my top three: 1) More granular accounting of how datastore space is usedhttp://code.google.com/p/googleappengine/issues/detail?id=1396 This one should be easy, the information is being pulled from somewhere already. Right now storage usage is a total black hole. 2) SSL/HTTPS Support on Google Apps domainshttp://code.google.com/p/googleappengine/issues/detail?id=792 I know it's a hard problem, but it is really holding gae back. 3) SLAhttp://code.google.com/p/googleappengine/issues/detail?id=501 Release it already, and give us a paid SLA, and a pony. --~--~-~--~~~---~--~~ 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: Pass entity key to template engine
{{ i.key }} will work http://code.google.com/intl/fr/appengine/docs/python/datastore/modelclass.html#Model_key On Sep 27, 9:53 am, SiVi krzysztof.biele...@gmail.com wrote: Hi Is there a way to pass Key of entity to template engine from Results variable? something to be access from template like {% for i in entities %} {{ i.Key }} {%endfor%} --~--~-~--~~~---~--~~ 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: Multiple Files Upload at Once
Don't understand why uploadify can't work ? It's a client side tech (js, swf). So you can do what you want server side. I don't know uploadify but I think the 'folder' attributes is just an attribute for the server side script. Then you can store the file where you want. So it should work easily. You have to rewrite check.php and uploadify.php to pyhton + gae. Regards. On Sep 27, 3:14 pm, FolkenDA folke...@gmail.com wrote: I'm currently trying to adapt the example from google gears explained in the following URL. That might be helpful to someone else... but require to have google gears installed. On Sep 24, 10:25 pm, FolkenDA folke...@gmail.com wrote: Hi everyone ! I would like to know is there was a way to provide multiple file upload (1 selection windows / multiple files) method on GAE ? I was thinking about something like Uploadify (http://www.uploadify.com/) but it seems to require file system access to upload files. I was wondering if it was possible to intercept de data sent to the /uploads folders to save them in the datastore. Any simpler way would be even better. It is meant for an admin section so fancyness is not a criterion ;) Thank you in advance Folken --~--~-~--~~~---~--~~ 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: Multiple Files Upload at Once
I have done complete example : multi, auto, upload and check test here : http://testgapp.appspot.com/ source here : http://testgapp.appspot.com/source.zip More tests needed (encoding, size, format,...) Regards. On Sep 27, 5:53 pm, Sylvain sylvain.viv...@gmail.com wrote: Don't understand why uploadify can't work ? It's a client side tech (js, swf). So you can do what you want server side. I don't know uploadify but I think the 'folder' attributes is just an attribute for the server side script. Then you can store the file where you want. So it should work easily. You have to rewrite check.php and uploadify.php to pyhton + gae. Regards. On Sep 27, 3:14 pm, FolkenDA folke...@gmail.com wrote: I'm currently trying to adapt the example from google gears explained in the following URL. That might be helpful to someone else... but require to have google gears installed. On Sep 24, 10:25 pm, FolkenDA folke...@gmail.com wrote: Hi everyone ! I would like to know is there was a way to provide multiple file upload (1 selection windows / multiple files) method on GAE ? I was thinking about something like Uploadify (http://www.uploadify.com/) but it seems to require file system access to upload files. I was wondering if it was possible to intercept de data sent to the /uploads folders to save them in the datastore. Any simpler way would be even better. It is meant for an admin section so fancyness is not a criterion ;) Thank you in advance Folken --~--~-~--~~~---~--~~ 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: help in python enviroment
here ? http://code.google.com/intl/fr/appengine/docs/python/datastore/propertyclass.html#Property On 23 sep, 12:29, alf alberto@gmail.com wrote: Hi all I try to find information about python models parameter you can apply when you design a models like (required, choice, default etc) but for me have been imposible find doc in appengine website explain what parameters exists and this explanation. May be is for my unknoleage but my impresions is help doc are very very few. Obviosly I have installed help package thinking it solve problemns but is the same may be two o thress page to explain all datastore/models SDK. Can anybody explain diferente parameters to create models class many many thanks in advance and if accept my suggestion please increase help information like docs and articles. --~--~-~--~~~---~--~~ 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: Failed when I want to donwload a file from my web app
Can you check this : http://d.hatena.ne.jp/ikasamaH/20080612 Simple example to upload, download a file. regards On 21 sep, 05:42, dingle dingdin...@gmail.com wrote: I am blocked by the issue and really appeciate any expert's input. --~--~-~--~~~---~--~~ 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: get_or_insert: Was it get or insert?
Check this cookbook : http://appengine-cookbook.appspot.com/recipe/efficient-use-of-get_or_insert/?id=ahJhcHBlbmdpbmUtY29va2Jvb2tylgELEgtSZWNpcGVJbmRleCI8YWhKaGNIQmxibWRwYm1VdFkyOXZhMkp2YjJ0eUZ3c1NDRU5oZEdWbmIzSjVJZ2xFWVhSaGMzUnZjbVVNDAsSBlJlY2lwZSI9YWhKaGNIQmxibWRwYm1VdFkyOXZhMkp2YjJ0eUZ3c1NDRU5oZEdWbmIzSjVJZ2xFWVhSaGMzUnZjbVVNMQw On Sep 20, 4:30 pm, vivpuri v...@vivekpuri.com wrote: When get_or_insert is used, is there a way to tell if it is a get or the entity was really inserted? 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: Advantages to storing images of common size in separate tables?
It can depend on the size of the picts (max AVATARS entity size = 1 MB). So if the pictures are big, you should split the Model. Else and I think avatar are really small ? Then I'll use your AVATARS (db.Model) and for speed, I'll put the entity into memcache with no timeout. Easier. Regards. On Sep 19, 3:00 am, Tim Hoffman zutes...@gmail.com wrote: If you only need some of these images some of the time I would actually create a AvatarImage class which has a blob property, image sizes, formats etc And an AvatarImageReference class E.g (note code is not exact, there are typos etc... but you will get the point) class AvatarImageReference avatar = ReferenceProperty(Avatar,collection_name=images) image = ReferencePropery(AvatarImage) image_type = StringProperty # put small, medium, large in this And your avatar class as below minus any references to images You can then get a all image references defined for the avatar with myavatar.images fetch each image with for i in myavatar.images: i.image or filter images on size etc.. by looking at image type That way you wont fetch an image unless you really need it Rgds T On Sep 19, 5:57 am, Larkin2 michael.mer...@gmail.com wrote: I have a three models for images: class SMALLAVATARS(db.Model,): author = db.UserProperty() phrase = db.ReferenceProperty(PHRASES) file = db.BlobProperty(default=None) creationDate = db.DateTimeProperty(auto_now_add=True) editDate = db.DateTimeProperty(auto_now=True) class MEDIUMAVATARS(db.Model,): author = db.UserProperty() phrase = db.ReferenceProperty(PHRASES) file = db.BlobProperty(default=None) creationDate = db.DateTimeProperty(auto_now_add=True) editDate = db.DateTimeProperty(auto_now=True) class LARGEAVATARS(db.Model,): author = db.UserProperty() phrase = db.ReferenceProperty(PHRASES) file = db.BlobProperty(default=None) creationDate = db.DateTimeProperty(auto_now_add=True) editDate = db.DateTimeProperty(auto_now=True) Is this optimal or would using a single model such as: class AVATARS(db.Model,): author = db.UserProperty() phrase = db.ReferenceProperty(PHRASES) small = db.BlobProperty(default=None) medium = db.BlobProperty(default=None) large = db.BlobProperty(default=None) creationDate = db.DateTimeProperty(auto_now_add=True) editDate = db.DateTimeProperty(auto_now=True) be better? Obviously the later is nice and simple, but I'm concerned that when I go to actually get the entity in question I will unnecessarily eat up more system resources if I only need one of the three images? As always, input is greatly appreciated! -Larkin --~--~-~--~~~---~--~~ 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 you switch billing to monthly instead of daily
Star this one : http://code.google.com/p/googleappengine/issues/detail?id=1999 On Sep 16, 4:12 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Alex, Normal billing is weekly. Are you sure you're getting billing emails daily? What did you set your daily limit to? -Nick On Wed, Sep 16, 2009 at 5:24 AM, Alex Epshteyn alexander.epsht...@gmail.com wrote: It's a bit annoying to get daily billing emails and having 30 tiny charges on my credit card bill every month instead of one. In addition to being annoying, it complicates the accounting. I think every other hosting company charges on a monthly basis. Any chance App Engine could start using the traditional billing model? -- Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 --~--~-~--~~~---~--~~ 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: Unable to update an entity in datastore
I think it should work : res = Employee.gql(WHERE id = :1, some_user_id) to_put = [] for r in res: r.delivery_type = some_type to_put.append(r) db.put(to_put) or res = Employee.gql(WHERE id = :1, some_user_id) for r in res: r.delivery_type = some_type db.put(r) You change 'r' but you do nothing with it. On Sep 13, 3:47 am, BornInMeadowMuffins zhangb...@gmail.com wrote: It has been solved here:http://groups.google.com/group/google-appengine/browse_thread/thread/... But still, what's wrong with the previous code? On Sep 13, 9:09 am, BornInMeadowMuffins zhangb...@gmail.com wrote: Here is my code: # Database Model class Employee(db.Model): id = db.IntegerProperty(required=True) name = db.StringProperty(required=True) password = db.IntegerProperty(required=True) delivery_type = db.StringProperty(choices=set([pickup, mail, deposit])) # following variables has been assigned with proper data res = Employee.gql(WHERE id = :1, some_user_id) for r in res: r.delivery_type = some_type db.put(res) # but when I later checked out, to see if I updated the delivery type using template, it gives me None value {% for r in res %} p{{ r.id }}/p p{{ r.name }}/p p{{ r.delivery_type }}/p {% endfor %} Can anyone tell me what's the problem is? --~--~-~--~~~---~--~~ 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: unique ids
You have to do it yourself with a global counter Example with a blog : http://sites.google.com/site/io/building-scalable-web-applications-with-google-app-engine Regards. On 11 sep, 09:39, Robin B robi...@gmail.com wrote: I noticed that unique auto ids seem to span across kinds. Is there any trick to getting unique auto ids per kind? Thanks, Robin --~--~-~--~~~---~--~~ 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] Tornadoweb.org
Facebook (ex FriendFeed) has just released the open source of their web server. http://www.tornadoweb.org/ But it seems that we can only use the frameworks within GAE (WSGIApplication). http://github.com/facebook/tornado/tree/9e24ae162d024e4049b8811d7ca19e319c20021d/website There are many very good modules (authentification : Twitter, Google, Facebook,... template,) http://www.tornadoweb.org/documentation#module-index Didn't test it. But it seems very good. Regards. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Memcache pattern
I think it should help : http://appengine-cookbook.appspot.com/recipe/decorator-to-getset-from-the-memcache-automatically/?id=ahJhcHBlbmdpbmUtY29va2Jvb2tyngELEgtSZWNpcGVJbmRleCJAYWhKaGNIQmxibWRwYm1VdFkyOXZhMkp2YjJ0eUdnc1NDRU5oZEdWbmIzSjVJZ3hOWlcxallXTm9aU0JCVUVrTQwLEgZSZWNpcGUiQWFoSmhjSEJsYm1kcGJtVXRZMjl2YTJKdmIydHlHZ3NTQ0VOaGRHVm5iM0o1SWd4TlpXMWpZV05vWlNCQlVFa00xDA On Sep 9, 2:16 am, Robert Kluin robert.kl...@gmail.com wrote: You do not ever pass the arguments to get_data_callback. You need to do something more like: class MC(): �...@staticmethod def get( key, get_data_callback, **kwargs): data_set = memcache.get( key ) if data_set == None: data_set = get_data_callback(**kwargs) memcache.set( key, data_set ) return data_set and: def get_user( id ): return MC.get( key, lambda id: DB.get_user( id ),id=id ) Good luck. Robert On Mon, Sep 7, 2009 at 4:25 PM, (jpgerek) jpguer...@gmail.com wrote: Hi, I'm new with python and I having problems to implement the typical memcache pattern. I wan't to make a decorator of the most common memcache pattern so I don't have to implement the logic everytime. My intention is having a function that receives the key to get and a callback with the datastore gets, in case the memcache key expires, it's evicted or whatever. This is what I have now: class MC(): �...@staticmethod def get( key, get_data_callback ): data_set = memcache.get( key ) if data_set == None: data_set = get_data_callback() memcache.set( key, data_set ) return data_set I'm having problems with the callback when some params are required. For instance: class DB(): �...@staticmethod def get_user( id ): return User().all().filter('id =', id').fetch(1) def get_user( id ): return MC.get( key, lambda id: DB.get_user( id ) ) The error I get when I call 'get_user(1)' is something like: TypeError: lambda() takes exactly 1 argument (0 given) Though it works in this case: def get_user_one(): return User().all().filter('id = 1').fetch(1) It seems to be something with the params, they are lost, could it be solved with closures? other approach? --~--~-~--~~~---~--~~ 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: Performance of site seems much slower after maintenance.
For my part, all seem faster... On Sep 3, 4:01 am, bvelasquez bvelasq...@gmail.com wrote: Hello, My application (ID: jacob-6) seems to be performing worse after the maintenance of yesterday. I have not made any significant changes that would affect performance to this degree, but I definitely see a change since yesterday. Requests are taking much longer and is unpredictable. For example, look at the following two requests. Both for the exact same information, doing the exact same processing. The times are very close since I ran the request manually. The first took much longer to process. 09-02 06:56PM 13.604 /project/topactions/ agdqYWNvYi02cg4LEgdQcm9qZWN0GOoHDA? milestone_id=agdqYWNvYi02chALEglNaWxlc3RvbmUY4zYM 200 329ms 385cpu_ms 151api_cpu_ms 09-02 06:55PM 51.014 /project/topactions/ agdqYWNvYi02cg4LEgdQcm9qZWN0GOoHDA? milestone_id=agdqYWNvYi02chALEglNaWxlc3RvbmUY4zYM 200 1508ms 1240cpu_ms 151api_cpu_ms This behavior is happening across all my requests. I'll try it from a different network connection when I go home tonight. Maybe this has something to do with it. Any ideas? My app went from pretty snappy to pretty slow overnight. Barry --~--~-~--~~~---~--~~ 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: Retrieving Source from GAE
To upload a zip, I use this (with 7zip) : http://groups.google.com/group/google-appengine/msg/e704e2a64802ba62 On Sep 3, 8:02 pm, djidjadji djidja...@gmail.com wrote: That is not possible Next time upload a zip file with the sources and make it available for admin download. Or use a non crashable backup medium. 2009/9/3 ae gappengin...@gmail.com: Hi, I had a couple of hard drives die one after the other in a shot period of time so I lost all my source code. Can someone from Google please PLEASE help me retrieve the source from GAE? 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: How can you access App.yaml data?
I think it is not possible, app.yaml is not uploaded in the same directory than your app. Maybe you can duplicated this file app.yaml - settings.yaml, then it will be uploaded in the same dir and you could use the yaml lib to read it. Regards On 27 août, 19:47, TC tomcurr...@gmail.com wrote: Is it possible to access the data in your app.yaml file from your app? (Not the file, but is the data loaded into the code anywhere). For example, I am looking to access the handlers with the login property set to required so that I do not have to repeat some sort of variable in the code because this is inconvenient to maintain. I need to force someone to actually register with the site once signed in with a google account but login:required would still let them view the page without registering so I need to access the urls. --~--~-~--~~~---~--~~ 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: synthentic keys - performance implications?
do not forget to add a prefix to the key_name (ie : 'k:',...) Else if your key_name starts with a number it will raise an error On 24 août, 12:56, Nick Johnson (Google) nick.john...@google.com wrote: Hi Jeff, On Sat, Aug 22, 2009 at 7:24 PM, Jeff Enderwick jeff.enderw...@gmail.comwrote: Currently, one must put() in order to have obj.key() be valid. In some flows, I find my self having to put() object twice for this reason. If I make a synthetic key, it appears that I can avoid this: class Joker(db.Model): unused = db.StringProperty() def __init__(self): m = hashlib.sha1() m.update(str(time.time())) name = base64.b64encode(m.digest()) logging.debug(name=+name) db.Model.__init__(self, key_name=name) 1) GOOG folks - are there any performance downsides to taking this approach? Not really, no. 2) If no, are there any other environmental factors that might be fodder for the hash (user, etc)? I would recommend using uuid.uuid4().hex instead of a straight SHA1 sum. UUIDs are guaranteed to be unique. I would also recommend defining a class method called something like 'create' that generates the key name and calls __init__. There are subtle-use cases around __init__ and reconstructing entities from the datastore, and it's difficult to get right - much more straightforward to define a class method to construct new entities. -Nick Johnson Thanks, Jeff -- Nick Johnson, Developer Programs Engineer, App Engine --~--~-~--~~~---~--~~ 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: Many Next in DataViewer logs bug ?
Here are 2 screens : http://testgapp.appspot.com/o/npaHzp9i58TBCqz1GRr6xOX2wTIUrC.png http://testgapp.appspot.com/o/npZhxc8MALRedAnOlLUnSgRwih3trh.png Test done with Chrome, but I can do it with FF and IE On 20 août, 13:13, djidjadji djidja...@gmail.com wrote: There is a small bug in the SDK version of the DataViewer in the file google_appengine/google/appengine/ext/admin/__init__.py in class DatastoreQueryHandler(DatastoreRequestHandler): the get() handler around line 665 (SDK 1.2.3). The page_start variable can be a float, the range() call a few line later can't handle this The fix is to cast it to int, resulting in the following line page_start = int(max(math.floor(current_page - max_pager_links / 2), 0)) I don't know if this code is also used in the production DataViewer. 2009/8/20 Nick Johnson (Google) nick.john...@google.com: Hi Sylvain, Can you please provide a sample Admin Console URL that demonstrates this bug? -Nick Johnson On Wed, Aug 19, 2009 at 9:58 AM, Sylvain sylvain.viv...@gmail.com wrote: Hi, I've seen this issue many times : in the DataViewer (Logs), if I do many NEXT, then the DataViewer is broken (no more CSS, js,... ) etc,... I've produced this bug with many browsers (FF, IE, Chrome,...) Have you ever seen this issue ? then I will fill a bug ? Regards -- Nick Johnson, Developer Programs Engineer, App Engine --~--~-~--~~~---~--~~ 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: Many Next in DataViewer logs bug ?
Here is an url to the dataviewer with the issue. http://appengine.google.com/logs?=app_id=hordes-statsversion_id=3.335561226646609229logs_form=1severity_level=layout=noneoffset=0004718FE64AEC6A.C4A783F7start_index=201 On 20 août, 14:57, Sylvain sylvain.viv...@gmail.com wrote: Here are 2 screens : http://testgapp.appspot.com/o/npaHzp9i58TBCqz1GRr6xOX2wTIUrC.pnghttp://testgapp.appspot.com/o/npZhxc8MALRedAnOlLUnSgRwih3trh.png Test done with Chrome, but I can do it with FF and IE On 20 août, 13:13, djidjadji djidja...@gmail.com wrote: There is a small bug in the SDK version of the DataViewer in the file google_appengine/google/appengine/ext/admin/__init__.py in class DatastoreQueryHandler(DatastoreRequestHandler): the get() handler around line 665 (SDK 1.2.3). The page_start variable can be a float, the range() call a few line later can't handle this The fix is to cast it to int, resulting in the following line page_start = int(max(math.floor(current_page - max_pager_links / 2), 0)) I don't know if this code is also used in the production DataViewer. 2009/8/20 Nick Johnson (Google) nick.john...@google.com: Hi Sylvain, Can you please provide a sample Admin Console URL that demonstrates this bug? -Nick Johnson On Wed, Aug 19, 2009 at 9:58 AM, Sylvain sylvain.viv...@gmail.com wrote: Hi, I've seen this issue many times : in the DataViewer (Logs), if I do many NEXT, then the DataViewer is broken (no more CSS, js,... ) etc,... I've produced this bug with many browsers (FF, IE, Chrome,...) Have you ever seen this issue ? then I will fill a bug ? Regards -- Nick Johnson, Developer Programs Engineer, App Engine --~--~-~--~~~---~--~~ 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: Many Next in DataViewer logs bug ?
I don't understand the one you really need, so I add many links before the error and after http://testgapp.appspot.com/o/npYBhL7EMOc3r7bBedhIDO89GYquTH.png http://appengine.google.com/logs?=app_id=hordes-statsversion_id=3.335561226646609229logs_form=1severity_level=layout=noneoffset=00047190933B2FB3.8293E4CAstart_index=281 http://appengine.google.com/logs?=app_id=hordes-statsversion_id=3.335561226646609229logs_form=1severity_level=layout=noneoffset=0004719071FF161B.47B5DE7Fstart_index=301 http://appengine.google.com/logs?=app_id=hordes-statsversion_id=3.335561226646609229logs_form=1severity_level=layout=noneoffset=0004718FE64AEC6A.C4A783F7start_index=341 On 20 août, 15:30, Nick Johnson (Google) nick.john...@google.com wrote: Hi Sylvain, Can you please provide the URL of the page that contains this link? -Nick Johnson On Thu, Aug 20, 2009 at 2:06 PM, Sylvain sylvain.viv...@gmail.com wrote: Here is an url to the dataviewer with the issue. http://appengine.google.com/logs?=app_id=hordes-statsversion_id=3.3... On 20 août, 14:57, Sylvain sylvain.viv...@gmail.com wrote: Here are 2 screens : http://testgapp.appspot.com/o/npaHzp9i58TBCqz1GRr6xOX2wTIUrC.pnghttp:... Test done with Chrome, but I can do it with FF and IE On 20 août, 13:13, djidjadji djidja...@gmail.com wrote: There is a small bug in the SDK version of the DataViewer in the file google_appengine/google/appengine/ext/admin/__init__.py in class DatastoreQueryHandler(DatastoreRequestHandler): the get() handler around line 665 (SDK 1.2.3). The page_start variable can be a float, the range() call a few line later can't handle this The fix is to cast it to int, resulting in the following line page_start = int(max(math.floor(current_page - max_pager_links / 2), 0)) I don't know if this code is also used in the production DataViewer. 2009/8/20 Nick Johnson (Google) nick.john...@google.com: Hi Sylvain, Can you please provide a sample Admin Console URL that demonstrates this bug? -Nick Johnson On Wed, Aug 19, 2009 at 9:58 AM, Sylvain sylvain.viv...@gmail.com wrote: Hi, I've seen this issue many times : in the DataViewer (Logs), if I do many NEXT, then the DataViewer is broken (no more CSS, js,... ) etc,... I've produced this bug with many browsers (FF, IE, Chrome,...) Have you ever seen this issue ? then I will fill a bug ? Regards -- Nick Johnson, Developer Programs Engineer, App Engine -- Nick Johnson, Developer Programs Engineer, App Engine --~--~-~--~~~---~--~~ 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: Many Next in DataViewer logs bug ?
Each time I click this url : http://appengine.google.com/logs?=app_id=hordes-statsversion_id=3.335561226646609229logs_form=1severity_level=layout=noneoffset=0004718FE64AEC6A.C4A783F7start_index=201 Then there is no CSS, js. On Aug 20, 5:14 pm, jianwen kenvin.hu...@gmail.com wrote: I also got this. Just click 'Next' for about ten times in Logs,then CSS,js all disappear On Aug 19, 4:58 pm, Sylvain sylvain.viv...@gmail.com wrote: Hi, I've seen this issue many times : in the DataViewer (Logs), if I do many NEXT, then the DataViewer is broken (no more CSS, js,... ) etc,... I've produced this bug with many browsers (FF, IE, Chrome,...) Have you ever seen this issue ? then I will fill a bug ? Regards --~--~-~--~~~---~--~~ 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] Many Next in DataViewer logs bug ?
Hi, I've seen this issue many times : in the DataViewer (Logs), if I do many NEXT, then the DataViewer is broken (no more CSS, js,... ) etc,... I've produced this bug with many browsers (FF, IE, Chrome,...) Have you ever seen this issue ? then I will fill a bug ? Regards --~--~-~--~~~---~--~~ 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: GAE costs more than 10 times than expected.
I've opened an issue to add new billing options (monthly, currency,...) http://code.google.com/p/googleappengine/issues/detail?id=1999 Regards. On 14 août, 16:28, Juraj Vitko juraj.vi...@gmail.com wrote: Yeah Paypal is actually in direct competition with Google Checkout, I don't know what was I thinking:) It looks like for tiny payments it will be 10 times more.. I hope with bigger payments these bank fees will be diminished - if not then maybe it's time to open an US bank account (with a Delaware LLC). On Aug 12, 8:16 pm, Sylvain sylvain.viv...@gmail.com wrote: No you can't use Paypal. You have to use Google Checkout. So currently there is no alternative. On Aug 11, 1:42 pm, Juraj Vitko juraj.vi...@gmail.com wrote: Hi Sylvain, would it be possible for you to pay for App Engine hosting from a PayPal account (instead of the bank account), which you would be filling up monthly? Sorry if this is a stupid question, I haven't used App Engine billing yet. J. On Aug 10, 4:49 pm, Sylvain sylvain.viv...@gmail.com wrote: Hi, Here is the background : I've a small app that needs more than 1Go, currently : 1.27 GB. So each week, I'm charged by GAE/Chekout : $0.08 (0.056€) But at the end I pay to my bank : $1.00 (0.71€). So, it is more than 10 times than expected. I know about taxes (http://code.google.com/intl/fr/appengine/docs/ billing.html#A_Note_About_Taxes), but here the gap between the GAE price and the Bank price is too big : 92% is only taxes. I think billing needs to be changed/adapted asap in several ways to reduce the taxes part : 1 - add new currencies (Euro, etc,...) 2 - do not charge weekly but monthly. About this, I think it is not really logical to charge weekly. Most services charge weekly and for example, if you use Google Adsense to pay you GAE site : Adsense will pay monthly. Else add an option (weekly/monthly) 3 - Do not charge under a certain amount ($1 or more) 4 - Add a credit system. For example, I credit my account with 50€, then GAE/Chekout use this money I know that banks need money ;), but here, I think this is very bad for users and GAE if it doesn't change and particularly for small project from non US users. I want too give my money to Google, not to banks :) Regards. --~--~-~--~~~---~--~~ 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: urlfetch don't work with non ASCII characters in PARAMETERS
can you test this ? import urllib q = urllib.quote(q.encode('utf8')) or just q = urllib.quote(q) Regards On Aug 16, 5:35 pm, Edmar edmaroliveiraferre...@gmail.com wrote: Every time I try to fetch a result using GAE urlfetch and one of the parameters have an non ASCII character I get an error I want to fetch this url : http://ajax.googleapis.com/ajax/services/search/web?v=1.0rsz=largeq...ão my problem is with the q parameter if I put other words as a query it will work but when I use 'non english' words I see this error : File /base/python_lib/versions/1/google/appengine/api/ urlfetch_service_pb.py, line 1596, in OutputUnchecked out.putPrefixedString(self.url_) File /base/python_lib/versions/1/google/net/proto/ ProtocolBuffer.py, line 365, in putPrefixedString v = str(v) UnicodeEncodeError: 'ascii' codec can't encode characters in position 96-99: ordinal not in range(128) Some Times if --~--~-~--~~~---~--~~ 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: GAE costs more than 10 times than expected.
No you can't use Paypal. You have to use Google Checkout. So currently there is no alternative. On Aug 11, 1:42 pm, Juraj Vitko juraj.vi...@gmail.com wrote: Hi Sylvain, would it be possible for you to pay for App Engine hosting from a PayPal account (instead of the bank account), which you would be filling up monthly? Sorry if this is a stupid question, I haven't used App Engine billing yet. J. On Aug 10, 4:49 pm, Sylvain sylvain.viv...@gmail.com wrote: Hi, Here is the background : I've a small app that needs more than 1Go, currently : 1.27 GB. So each week, I'm charged by GAE/Chekout : $0.08 (0.056€) But at the end I pay to my bank : $1.00 (0.71€). So, it is more than 10 times than expected. I know about taxes (http://code.google.com/intl/fr/appengine/docs/ billing.html#A_Note_About_Taxes), but here the gap between the GAE price and the Bank price is too big : 92% is only taxes. I think billing needs to be changed/adapted asap in several ways to reduce the taxes part : 1 - add new currencies (Euro, etc,...) 2 - do not charge weekly but monthly. About this, I think it is not really logical to charge weekly. Most services charge weekly and for example, if you use Google Adsense to pay you GAE site : Adsense will pay monthly. Else add an option (weekly/monthly) 3 - Do not charge under a certain amount ($1 or more) 4 - Add a credit system. For example, I credit my account with 50€, then GAE/Chekout use this money I know that banks need money ;), but here, I think this is very bad for users and GAE if it doesn't change and particularly for small project from non US users. I want too give my money to Google, not to banks :) Regards. --~--~-~--~~~---~--~~ 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] GAE costs more than 10 times than expected.
Hi, Here is the background : I've a small app that needs more than 1Go, currently : 1.27 GB. So each week, I'm charged by GAE/Chekout : $0.08 (0.056€) But at the end I pay to my bank : $1.00 (0.71€). So, it is more than 10 times than expected. I know about taxes (http://code.google.com/intl/fr/appengine/docs/ billing.html#A_Note_About_Taxes), but here the gap between the GAE price and the Bank price is too big : 92% is only taxes. I think billing needs to be changed/adapted asap in several ways to reduce the taxes part : 1 - add new currencies (Euro, etc,...) 2 - do not charge weekly but monthly. About this, I think it is not really logical to charge weekly. Most services charge weekly and for example, if you use Google Adsense to pay you GAE site : Adsense will pay monthly. Else add an option (weekly/monthly) 3 - Do not charge under a certain amount ($1 or more) 4 - Add a credit system. For example, I credit my account with 50€, then GAE/Chekout use this money I know that banks need money ;), but here, I think this is very bad for users and GAE if it doesn't change and particularly for small project from non US users. I want too give my money to Google, not to banks :) Regards. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: What is the best way to implement user ranking considering app engine limitations?
http://code.google.com/p/google-app-engine-ranklist/ Regards. On 18 juil, 15:05, wonglik wag...@gmail.com wrote: So far I see two ways one that would automatically update user rank whenever his points change. or periodically rebuild whole ranking in the background. Both have advantages and disadvantages but is there general good pattern for this problem? kind regards w --~--~-~--~~~---~--~~ 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] Update a new version : Error 409
Hi, With my app : hordes-stats, I've got a strange error while updating : Error 409, Conflict. I've updated again my app and no error. Any idea ? Regards Cloning 15 static files. Cloning 61 application files. Uploading 1 files. Deploying new version. 2009-07-08 16:53:40,670 ERROR appcfg.py:1272 An unexpected error occurred. Abort ing. Traceback (most recent call last): File C:\Outils\google_appengine\google\appengine\tools\appcfg.py, line 1265, in DoUpload self.Commit() File C:\Outils\google_appengine\google\appengine\tools\appcfg.py, line 1137, in Commit self.Deploy() File C:\Outils\google_appengine\google\appengine\tools\appcfg.py, line 1165, in Deploy version=self.version) File C:\Outils\google_appengine\google\appengine\tools \appengine_rpc.py, lin e 344, in Send f = self.opener.open(req) File C:\Python25\lib\urllib2.py, line 387, in open response = meth(req, response) File C:\Python25\lib\urllib2.py, line 498, in http_response 'http', request, response, code, msg, hdrs) File C:\Python25\lib\urllib2.py, line 425, in error return self._call_chain(*args) File C:\Python25\lib\urllib2.py, line 360, in _call_chain result = func(*args) File C:\Python25\lib\urllib2.py, line 506, in http_error_default raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) HTTPError: HTTP Error 409: Conflict Rolling back the update. Error 409: --- begin server output --- Deployment of this version is already progress. --- end server output --- --~--~-~--~~~---~--~~ 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: CRON, big bug today
Hi Peter, Thank you for this info. I will re-upload my cron. Regards. Sylvain On 4 juil, 08:54, Peter peter-appeng...@google.com wrote: That was caused by a bug in the Cron scheduling code. I've updated the Cron backends with a fix, so please try redeploying your Cron jobs. thanks, Peter On Jul 3, 7:49 pm, Sylvain sylvain.viv...@gmail.com wrote: Sorry to insist but there is no reason for what happened two days ago ? Regards On 2 juil, 09:25, Sylvain sylvain.viv...@gmail.com wrote: Nobody can explain what happened yesterday. Currently, I've removed all crons. Regards. On 1 juil, 11:46, broc sebastien.peroc...@gmail.com wrote: Hi, Same for me ! But mycronstore data... and the result for me is: Stored Data quota full = Still full at 99% after having deleted the objects I know... I don't know what are the other objects that take the 99%... Please help needed ! On 1 juil, 09:14, Sylvain sylvain.viv...@gmail.com wrote: Hi, Today, since 6:00 (PARIS), mycronis running each second. Thiscronmust run only once a day : cron: - description: reminder by mail url: /reminder schedule: every day 06:00 timezone: Europe/Paris Thiscronworks fine since 15 days without any issue. Thiscronsent a mail, so now my quota is gone (not very important), but I think there is a big issue today. my app : tools-expertys Croninfo in my Dashboard : CronJob Schedule/Last Run/Last Status (All times are UTC) /reminder reminder by mail every day 06:00 (Europe/Paris) 2009/07/01 09:00:02 0 day late Success As you can see the last success = 09:00, but it should run only at 6:00 --~--~-~--~~~---~--~~ 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: CRON, big bug today
Sorry to insist but there is no reason for what happened two days ago ? Regards On 2 juil, 09:25, Sylvain sylvain.viv...@gmail.com wrote: Nobody can explain what happened yesterday. Currently, I've removed all crons. Regards. On 1 juil, 11:46, broc sebastien.peroc...@gmail.com wrote: Hi, Same for me ! But my cron store data... and the result for me is: Stored Data quota full = Still full at 99% after having deleted the objects I know... I don't know what are the other objects that take the 99%... Please help needed ! On 1 juil, 09:14, Sylvain sylvain.viv...@gmail.com wrote: Hi, Today, since 6:00 (PARIS), my cron is running each second. This cron must run only once a day : cron: - description: reminder by mail url: /reminder schedule: every day 06:00 timezone: Europe/Paris This cron works fine since 15 days without any issue. This cron sent a mail, so now my quota is gone (not very important), but I think there is a big issue today. my app : tools-expertys Cron info in my Dashboard : Cron Job Schedule/Last Run/Last Status (All times are UTC) /reminder reminder by mail every day 06:00 (Europe/Paris) 2009/07/01 09:00:02 0 day late Success As you can see the last success = 09:00, but it should run only at 6:00 --~--~-~--~~~---~--~~ 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: CRON, big bug today
Nobody can explain what happened yesterday. Currently, I've removed all crons. Regards. On 1 juil, 11:46, broc sebastien.peroc...@gmail.com wrote: Hi, Same for me ! But my cron store data... and the result for me is: Stored Data quota full = Still full at 99% after having deleted the objects I know... I don't know what are the other objects that take the 99%... Please help needed ! On 1 juil, 09:14, Sylvain sylvain.viv...@gmail.com wrote: Hi, Today, since 6:00 (PARIS), my cron is running each second. This cron must run only once a day : cron: - description: reminder by mail url: /reminder schedule: every day 06:00 timezone: Europe/Paris This cron works fine since 15 days without any issue. This cron sent a mail, so now my quota is gone (not very important), but I think there is a big issue today. my app : tools-expertys Cron info in my Dashboard : Cron Job Schedule/Last Run/Last Status (All times are UTC) /reminder reminder by mail every day 06:00 (Europe/Paris) 2009/07/01 09:00:02 0 day late Success As you can see the last success = 09:00, but it should run only at 6:00 --~--~-~--~~~---~--~~ 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: http://code.google.com/status/appengine Error: Server Error
http://groups.google.com/group/google-appengine-downtime-notify/browse_frm/thread/f7596d1d0bd0f0f9?hl=en *** We're currently seeing elevated Datastore latency and error-rates, as well as elevated serving error-rates. This problem began around 6:30am Pacific time. All applications accessing the Datastore are affected. Our team is investigating this issue and will post more information as soon as it becomes available On 2 juil, 17:26, Phil phillip.i...@gmail.com wrote: I'm seeing the same thing and my Google application is not working either. I haven't seen any official reports for the reason. Anyone have an official report? On Jul 2, 10:55 am, Tom Wu service.g2...@gmail.com wrote: http://code.google.com/status/appengine Error: Server Error And I can appcfg.py update my app. Best Regards 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] CRON, big bug today
Hi, Today, since 6:00 (PARIS), my cron is running each second. This cron must run only once a day : cron: - description: reminder by mail url: /reminder schedule: every day 06:00 timezone: Europe/Paris This cron works fine since 15 days without any issue. This cron sent a mail, so now my quota is gone (not very important), but I think there is a big issue today. my app : tools-expertys Cron info in my Dashboard : Cron JobSchedule/Last Run/Last Status (All times are UTC) /reminder reminder by mail every day 06:00 (Europe/Paris) 2009/07/01 09:00:02 0 day late Success As you can see the last success = 09:00, but it should run only at 6:00 --~--~-~--~~~---~--~~ 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: api method to obtain version deploy time
star this : http://code.google.com/p/googleappengine/issues/detail?id=952 On 29 juin, 03:58, Mariano Benitez mari...@benitez.nu wrote: Hello, I want to use the version deploy time as my sitemap last modified date. The fact is that I don't find a way to do it. I know that the CURRENT_VERSION_ID variable holds something related... Is there a way to obtain the deploy time from CURRENT_VERSION_ID? 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: api method to obtain version deploy time
Currently : no answer. We have to wait. On 29 juin, 16:27, Mariano Benitez mari...@benitez.nu wrote: thanks sylvain, did you got any answer from google? at least an unsupported way of getting it? it's that or running some script in my machine just before uploading to set the current date in a file... have you got any workaround? Regards, On Jun 29, 5:13 am, Sylvain sylvain.viv...@gmail.com wrote: star this :http://code.google.com/p/googleappengine/issues/detail?id=952 On 29 juin, 03:58, Mariano Benitez mari...@benitez.nu wrote: Hello, I want to use the version deploy time as my sitemap last modified date. The fact is that I don't find a way to do it. I know that the CURRENT_VERSION_ID variable holds something related... Is there a way to obtain the deploy time from CURRENT_VERSION_ID? 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: Bucket Size example ?
Thank you for this explanation ! Another point, if I've only 1 task in the queue and my bucket_size = 10. This task may be never be triggered if there is no new task ? The system is waiting for 9 new tasks ? Regards. On 26 juin, 01:15, Jeff S (Google) j...@google.com wrote: Hi Sylvain, Great question! The bucket sized is intended to allow you to regulate bursts of incoming task executions. For example, if you set the bucket size to 1, only one task in the queue can be started at a time. If the task queues quota bucket is empty, no new tasks for the queue will be started. This differs slightly from rate (as noted in the docs): http://code.google.com/appengine/docs/python/config/queue.html#Queue_... A high rate with a small bucket size means that new tasks will be executed quickly when the queue is empty, but only a small number of tasks will be started at once. So you could intentionally cause the queue to grow longer when lots of new tasks are being added to spread out your task execution more evenly. Cheers, Jeff Sylvain sylvain.viv...@gmail.com wrote: Hi, I don't really understand the bucket_size parameter in the task config yaml. Is it possible de have an example ? For example, I've 100 tasks in the queue. (rate 1/s) What does it change if my bucket_size = 1 or 10 ? and if I have only 5 tasks ? (rate 1/s) What does it change if my bucket_size = 1 or 10 ? Thank you Regards --~--~-~--~~~---~--~~ 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: Bucket Size example ?
Thank you. Now, everything is ok. Regards. On 26 juin, 16:11, Wooble geoffsp...@gmail.com wrote: On Jun 26, 4:13 am, Sylvain sylvain.viv...@gmail.com wrote: Thank you for this explanation ! Another point, if I've only 1 task in the queue and my bucket_size = 10. This task may be never be triggered if there is no new task ? The system is waiting for 9 new tasks ? The bucket size is the maximum number of tasks that will be started at once, not the minimum. If the number of tasks is less than the bucket size, you should expect the tasks to all get run when your rate calls for them to run. --~--~-~--~~~---~--~~ 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] Bucket Size example ?
Hi, I don't really understand the bucket_size parameter in the task config yaml. Is it possible de have an example ? For example, I've 100 tasks in the queue. (rate 1/s) What does it change if my bucket_size = 1 or 10 ? and if I have only 5 tasks ? (rate 1/s) What does it change if my bucket_size = 1 or 10 ? Thank you Regards --~--~-~--~~~---~--~~ 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: Free Quoata Reduction?
It was announced since many months (here and the blog) http://code.google.com/intl/fr/appengine/docs/quotas.html http://googleappengine.blogspot.com/2009/02/new-grow-your-app-beyond-free-quotas.html On 23 juin, 09:30, conman constantin.christm...@googlemail.com wrote: Why didn't they send out a notification about that... don't like it to see that happen, but at least I would like to become informed. The free 5 Mio PI claim from launch last year is now history for sure - at least for my application. Cheers, Constantin On 23 Jun., 09:17, jianwen kenvin.hu...@gmail.com wrote: I also noticed that. The free CPU hours now reduce to 6.50 per day, and Outgoing/Incoming Bandwidth reduce to 1GB per day. On Jun 23, 2:43 pm, conman constantin.christm...@googlemail.com wrote: Hi, I just looked at the dashboard and saw that nearly one third of my free CPU quoata has been used up for today. How can that be, because my app didn't do significantly more than the other day when I looked last (I guess it was end of last week) Is this a known monitoring issue or was there again a quota adjustment as in february? Cheers, Constantin --~--~-~--~~~---~--~~ 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: Retrieving size of collection set
Could you add an int property that is updated with the len ? So you only check this property ? On 21 juin, 17:51, johntray john.tur...@gmail.com wrote: If I have two datastore object types, I'll call A and B, and A includes a ReferenceProperty to B, then objects of type B will have a back-reference property with default name a_set. Now if I just want the size of some B object's a_set, I could call len(a_set). To execute this, my understanding is that GAE will do a datastore query to retrieve the relevant A objects and pass them to the len() function. Since I don't need the A object contents, would it be more efficient to set up my own Query object and call Query.count() instead? --~--~-~--~~~---~--~~ 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: Just released: Python SDK 1.2.3
Cool, great job. Very good release ! Could it be possible to have an example of the bucket_size usage. How does it work ? Currently, it is not clear for me. Regards On 19 juin, 08:11, cz czer...@gmail.com wrote: Thank you! These are really great new features. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: How to create image dynamically using python APPengine?
Yes, PNG Canvas works fine. It can take a lot of CPU. So, I've decreased the compression level. On 19 juin, 01:40, kawai hiroaki.ka...@gmail.com wrote: Hi, I'm using pngcanvas for that purpose.http://the.taoofmac.com/space/Projects/PNGCanvas On Jun 17, 7:30 pm, chinki dbpil...@gmail.com wrote: Hi, Is there any sample application for creating image dynamically using python APPengine? I have tried a lot by using PIL in python AppEngine. But not able to import modules Image and ImageDraw. getting the error type 'exceptions.ImportError': No module named Image args = ('No module named Image',) message = 'No module named Image' How can I import Image and ImageDraw here? Any advice ??? Thanks in advance. --~--~-~--~~~---~--~~ 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: Just released: Python SDK 1.2.3
Django 1.02 Check this http://code.google.com/intl/fr/appengine/docs/python/tools/libraries.html#Django for version. from google.appengine.dist import use_library use_library('django', '1.0') --- On 19 juin, 13:05, Ubaldo Huerta uba...@gmail.com wrote: Regarding django support. Is it 1.02 support or just 1.0 support? I'm currently using zip import (which slows things down significantly when app instance is cold). The release notes says that django needs to be installed. But where? Is 0.96 removed? On Jun 19, 11:51 am, Paul Kinlan paul.kin...@gmail.com wrote: Barry, I believe your treat each task as a webrequest and at the moment there is a 10K limit (http://code.google.com/appengine/docs/python/taskqueue/overview.html) on the size of task items. I believe the best course of action is to stash them in memcache (although I am sure you may get instances where it might be removed from memcache) - from what I understand enqueing on to the task queue is a lot faster than storing a temp object in the data store, depending on the reason for you using the queue, persisting the object to the datastore might negate some of its usefulness. I think some experimentation is needed. Paul 2009/6/19 Barry Hunter barrybhun...@googlemail.com Excellent! Is there any limits on the 'params' structure in the task queue? Can we (should we!?!) pass around really big data via this, or would it be best stored in memcache (for example) and just the key passed? --~--~-~--~~~---~--~~ 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: Dynamic Access to Entity data in python
getattr should do the job : http://effbot.org/zone/python-getattr.htm On 18 juin, 01:13, Brendan brendan.fosbe...@gmail.com wrote: This is probably fairly simple to do but I'm fairly new to GAE and am having trouble with it. Say I run a query on an entity like so: query1=Client.all() query1.fetch(1) client=query1[0] selecting the first entry in the entity Client. Then I iterate through the list of fields like so: for column in Client.fields(): How can I access the data for that column in the row given by the query1 object? This is a fairly simple thing in Java with most databases but I'm using Python and GAE.. I know I can access each element individually like this: first_name = client.first_name etc however I need to be able to dynamically reference the name of the field ..something like this col_name = first_name first_name_var = client.get(col_name) 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: Audio and video attachments in appengine mail API
Stars this : http://code.google.com/p/googleappengine/issues/detail?id=494 and/or rename the video, audio,... file name (on the fly) before sending it mymp3.mp3 - mymp3.mp3.jpg and in the message ask to remove the bad extension. and/or you can store the file in the datastore and only send a link to this file. Personnaly, I don't understand why the attachments list is so short. Office file, audio/video files and archive files should be supported and not case sensitive (jpg and JPG) Regards. On 18 juin, 12:12, Irfan Younas irfanyou...@gmail.com wrote: Hi, Can anybody suggest, how we can send audio and video files as attachments? --~--~-~--~~~---~--~~ 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: URL path in python script handlers
Did you check the WSGIApplication ? application = webapp.WSGIApplication([('/feed/.*', MainPage)], debug=True) On 16 juin, 03:04, Vadim Zaliva l...@codeminders.com wrote: I am trying to write Python handler which will analyze URL path. For example I would like it to be accessible as: /feed/1 /feed/2 So I've put following to app.yaml: - url: /feed/.* script: feed.py In my handler I print path: def get(self): logging.debug(FEED with path '%s' % self.request.path) ... However regex matching does not seems to be working my handler never gets invoked and I am getting 404. If I remove /.* part from URL matching expression, my handler is invoked OK for http://localhost:80800/feed; URL. I am testing with dev_appserver.py What I am doing wrong? Sincerely, Vadim --~--~-~--~~~---~--~~ 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: necessary libs for parsing json?
simplejson is included with django (and so with GAE) or you can use any other pure python libraries : http://deron.meranda.us/python/comparing_json_modules/ On 15 juin, 00:58, Alkis Evlogimenos ('Αλκης Ευλογημένος) evlogime...@gmail.com wrote: It is part of the bundled django (from django.utils import simplejson). You can also drop in simplejson in your project directory and use it directly. On Mon, Jun 15, 2009 at 12:02 AM, deostroll deostr...@gmail.com wrote: Does the appengine have python support for parsing json-ed data? --deostroll -- 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: Small query re. counter example in IO 09 task queue presentation
Oups, it works :) sorry... On 15 juin, 17:31, Sylvain sylvain.viv...@gmail.com wrote: I wonder if there is a bug in slide 40 : --- class CounterHandler(webapp.RequestHandler): def post(self): key = self.request.get('key') if (memcache.incr(key) is None and not memcache.add(key, 1)): memcache.incr(key) if memcache.add(key + '_dirty', 1): taskqueue.add(url='/worker', params={'key': key}) --- I wonder how memcache.incr(key) can be executed. ? because if (memcache.incr(key) is None and not memcache.add(key, 1)) == true then the key doesn't exist ? On 15 juin, 17:17, Stephen sdea...@gmail.com wrote: On Jun 12, 2:19 pm, peterk peter.ke...@gmail.com wrote: Hey all.. Just wondering if I picked this up wrong or if this would indeed need some changing. Looking at the counter example in this presentation: http://code.google.com/events/io/sessions/OfflineProcessingAppEngine (From slide 37 in the PDF) Basically, is this example not depending on cache being persistent in order to work? You're incrementing the counter in cache, then periodically persisting it to the DB, but if the cache drops your counter here, you're basically going to reset your counter (and thus reset the counter in the DB on the next queued update). No, IIRC they take this into account. If the cache is flushed then the next call to increment will fail, because the memcache API does not automatically start from zero when incrementing a non-existing key. At this point you query the db to re-seed the cache, but there is another potential race condition: you have to set the new value of the cache such that if it already exists (another app instance concurrently beat you to the update because it also noticed a missing cache entry) you don't overwrite it. At this point the the cache has a value and you can retry the increment call. So depending on cache flushing and concurrent activity, incrementing the cache value can be up to a 3-step process. --~--~-~--~~~---~--~~ 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: Small query re. counter example in IO 09 task queue presentation
I wonder if there is a bug in slide 40 : --- class CounterHandler(webapp.RequestHandler): def post(self): key = self.request.get('key') if (memcache.incr(key) is None and not memcache.add(key, 1)): memcache.incr(key) if memcache.add(key + '_dirty', 1): taskqueue.add(url='/worker', params={'key': key}) --- I wonder how memcache.incr(key) can be executed. ? because if (memcache.incr(key) is None and not memcache.add(key, 1)) == true then the key doesn't exist ? On 15 juin, 17:17, Stephen sdea...@gmail.com wrote: On Jun 12, 2:19 pm, peterk peter.ke...@gmail.com wrote: Hey all.. Just wondering if I picked this up wrong or if this would indeed need some changing. Looking at the counter example in this presentation: http://code.google.com/events/io/sessions/OfflineProcessingAppEngine (From slide 37 in the PDF) Basically, is this example not depending on cache being persistent in order to work? You're incrementing the counter in cache, then periodically persisting it to the DB, but if the cache drops your counter here, you're basically going to reset your counter (and thus reset the counter in the DB on the next queued update). No, IIRC they take this into account. If the cache is flushed then the next call to increment will fail, because the memcache API does not automatically start from zero when incrementing a non-existing key. At this point you query the db to re-seed the cache, but there is another potential race condition: you have to set the new value of the cache such that if it already exists (another app instance concurrently beat you to the update because it also noticed a missing cache entry) you don't overwrite it. At this point the the cache has a value and you can retry the increment call. So depending on cache flushing and concurrent activity, incrementing the cache value can be up to a 3-step process. --~--~-~--~~~---~--~~ 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: Performance: Datastore writes vs. logging writes
DB Or you can store it in memcache (not safe but fast) Or you can use both : save in Memchache then use a job that checks it and store in DB. Or Google Analytics ;) It depends if you need to log a _LOT_ or not and if this info is _VERY_ important or only FI. Regards. On 14 juin, 19:27, pranny pra...@gmail.com wrote: Speaking in terms of 'data mining' that you might be doing from the user's action logs, i would recommend data store writes ! -- Pranav Prakash On Jun 14, 9:28 pm, Henning henning.boe...@googlemail.com wrote: We want to collect usage statistics with our app. Therefore, we want to track user actions somewhere on the server side. Which option is more suitable, performance-wise: 1. Track user actions in the App Engine Log, i.e. write a log entry each time. Evaluate the logs for usage statistics. 2. Track user actions in a table in the Datastore. Write an entry for each user action. Evaluate this table for usage statistics. I would guess, that log writes are much faster than Datastore writes. What are your experiences and suggestions? Thanks: Henning --~--~-~--~~~---~--~~ 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: Shared Counter Returns String
I've already ask for this and the answer (in this group) from a Googler is now you can use both : memcache.add(name, str(total), 60) or memcache.add(name, total, 60) On 8 juin, 21:09, Wooble geoffsp...@gmail.com wrote: It's a requirement of memcached; the incr command in the underlying protocol operates on a string it treats as an ASCII representation of an integer. I believe memcache stores everything as a string, although the library has some magic in it to allow you to store any datatype it can pickle. On Jun 8, 1:26 pm, Ethan Post post.et...@gmail.com wrote: I am using the code found here. http://code.google.com/appengine/articles/sharding_counters.html Upon using this I noticed that it would return an int the first time and a str the second. Appears to be the way the value is being stored in memcache. I change the line below and works as expected now. # memcache.add(name, str(total), 60) memcache.add(name, total, 60) Am I missing something here? Is there a reason str(total) would be preferred over total? --~--~-~--~~~---~--~~ 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: Uploading Files - filename
Another thing is that filename with ; is buggy. Try to send a file like my;file.jpg -- it returns my. I think it's a bug in a python module that checks the headers. Regards On 8 juin, 14:52, J j.si...@earlystageit.com wrote: I've just completed a project that does uploading of files. What I found (through experimentation, unfortunately) was that, in addition to Todd's recommendation below, what was sent to the server was browser dependent -- Safari and Chrome work one way, Firefox another. I'll probably write something in my blog and post a link here in a couple of days. On Jun 8, 12:06 am, Ian Lewis ianmle...@gmail.com wrote: did something like self.request.FILES[myfile].name not work? Since uploading files is a fairly common use case, would it be a good idea to get this added to the documentation? On Mon, Jun 8, 2009 at 3:59 AM, Todd toddaol...@gmail.com wrote: It took me hours to discover this, and I wanted to share, since I could not find it anywhere else on the net. To get the filename of an uploaded file ( via the Content-Disposition in the HTTP POST ), use: self.request.params[form element name with file].filename I suppose this may have been obvious to some, but using self.request.get() always returns the String value of the form parameter. Appengine overrides the WebOb request to abstract the cgi.FieldStorage object ( which holds the filename ) from you. Hope this helps. -Todd -- === 株式会社ビープラウド イアン・ルイス 〒150-0012 東京都渋谷区広尾1-11-2アイオス広尾ビル604 email: ianmle...@beproud.jp TEL:03-5795-2707 FAX:03-5795-2708http://www.beproud.jp/ === --~--~-~--~~~---~--~~ 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: ReferenceProperty with key_name ?
db.key is assigned if you set a the key_name attribute. So I understand your question my_entity = my_model(key_name = 'abc') my_entity.put() my_entity.key().name returns the key_name i.e. : abc On 7 juin, 09:29, Tom Wu service.g2...@gmail.com wrote: Hi All, Since the db.key is auto generate by system. We can't assign the value of db.key. If ReferenceProperty can reference with key_name, it will make easier for us to backup and restore the Reference model. Just a idea for me, Any suggestion will be appreciated. Best Regards 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] Re: Can Google App Engine read CSV file and show the content in the web page?
Something like that should work (didn't test it) class MainPage(webapp.RequestHandler): def get(self): f = open('my_file.csv') # my_file.csv : same level than main.py and not static csv = f.read() self.response.headers['Content-Type'] = 'text/csv' self.response.out.write(csv) application = webapp.WSGIApplication( [('/', MainPage)], debug=True) On 4 juin, 13:27, DiveIntoGAE taogf1...@gmail.com wrote: Can Google App Engine read CSV file and show the content in the web page? Can anybody give me a example? --~--~-~--~~~---~--~~ 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 -~--~~~~--~~--~--~---