[appengine-java] Filtering more than 3 parameters in JDOQL
Hie I am not able to pass more than 3 parameters using below code. So, how to pass more than 3 parameters? Query query = pm.newQuery(BloodDonor.class); query.setFilter( state == :stateName district == :distName + city == :cityName bloodGroup == :blood); @SuppressWarnings(unchecked) ListBloodDonor donors = (ListBloodDonor) query.execute(state.toLowerCase(), district.toLowerCase(), city.toLowerCase(), bloodGroup.toLowerCase()); Thankx and Regards Vik Founder www.sakshum.com www.sakshum.blogspot.com -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: Error while trying uploading an image on live server
I think i no got the error. The request seemed to be incorrect because of the two write(baos, --+boundary+\r\n); Now it seems to work properly. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Instead transparency I get black
Hi, if i use the image service there seem to be some problems with transparency. I tried to comibe two pictures. the first one without any transparency information and the second with some. The picture with transparency is this onehttp://dl.dropbox.com/u/1716912/thurbo/error/overlay.png : https://lh6.googleusercontent.com/_ns5i2WXP9ek/TTG5dfkfAnI/AAM/P5j4iqj3dzI/overlay.png some parts are complete white and some are transparent white. But what i get is the following: https://lh4.googleusercontent.com/_ns5i2WXP9ek/TTG6FnFUdOI/AA4/S2AA89JeVW0/wrong.png which obviously does not using transparency for combining the two pictures. There seems to be a black background behind the picture with the transparency. code looks like this: private byte[] createThumbnail(String path, int width, int height) throws IOException { /* some missing parts*/ Image thumbnail = imagesService.applyTransform(crop, oldImage, ImagesService.OutputEncoding.PNG); // create overlay Composite th = ImagesServiceFactory.makeComposite(thumbnail, 0, 0, 1.0f, Anchor.TOP_LEFT); // TODO: check if online works with transparency Composite ov = ImagesServiceFactory.makeComposite(overlay, 0, 0, 1.0f, Anchor.TOP_LEFT); LinkedListComposite finalImage = new LinkedListComposite(); finalImage.push(ov); finalImage.push(th); thumbnail = imagesService.composite(finalImage,THUMBNAIL_WITH, THUMBNAIL_HEIGHT,0,ImagesService.OutputEncoding.PNG); return thumbnail.getImageData(); } first i get the first pictures, which is in .jpg format, crop it and transform to .png. Then i try to stack the overlay with some transparency on it. Have you any ideas what causes the problem and/or have an idea how to work around this? thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Filtering more than 3 parameters in JDOQL
There's another function executeWithArray on the query object that you can use. Sent from my iPhone On Jan 15, 2011, at 5:08 AM, Vik vik@gmail.com wrote: Hie I am not able to pass more than 3 parameters using below code. So, how to pass more than 3 parameters? Query query = pm.newQuery(BloodDonor.class); query.setFilter( state == :stateName district == :distName + city == :cityName bloodGroup == :blood); @SuppressWarnings(unchecked) ListBloodDonor donors = (ListBloodDonor) query.execute (state.toLowerCase(), district.toLowerCase(), city.toLowerCase(), bloodGroup.toLowerCase()); Thankx and Regards Vik Founder www.sakshum.com www.sakshum.blogspot.com -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com . To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en . -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: Cross Browser Issue - Internet Explorer Blank
duh ... thnx On Jan 14, 7:03 pm, Didier Durand durand.did...@gmail.com wrote: Hi, as it based on gwt (saw it in viewing page source code) and as it probably is a javascript issue, you've better chance if you ask in the GWT forum (and provide a bit more details on how its written) regards didier On Jan 14, 1:31 pm, Segeboy segun.sob...@gmail.com wrote: My app located @ demo.schoolgrep.appspot.com is showing up as a blank page on internet explorer (tried version 6 and 8) but loads up fine on safari/chrome/firefox. Any ideas as to what the issue might be? Thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Custom location for local_db.bin?
Hey, is it possible to customize the location of local_db.bin? I need it to be somewhere outside the application, so that it doesn't get harmed. I'm using NetBeans to develop apps and Clean Build always destroys my data. There must be some option for this, e.g. in appengine-web.xml, right? -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Custom location for local_db.bin?
Why not just back it up or check-in to version control? Another option is to use ln -s to move it. On Sat, Jan 15, 2011 at 10:29 AM, Daniel Kvasnicka jr. daniel.kvasnicka...@gmail.com wrote: Hey, is it possible to customize the location of local_db.bin? I need it to be somewhere outside the application, so that it doesn't get harmed. I'm using NetBeans to develop apps and Clean Build always destroys my data. There must be some option for this, e.g. in appengine-web.xml, right? -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- -- A. Stevko === If everything seems under control, you're just not going fast enough. M. Andretti -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Mutation pool bug?
Do you have this defined in your mapper class? @Override public void taskCleanup(Context context) { try { // make sure to call super classes taskCleanup so that the DatastoreMutationPool // gets flushed properly otherwise puts/deletes can be lost; super.taskCleanup(context); } catch (Exception ex) { log.severe(ex.toString()); } } On Fri, Jan 14, 2011 at 11:34 PM, armanuj arun_rama...@yahoo.com wrote: Hi, I had earlier posted an issue such as out of mapper quota earlier (link below). I had about 260 entities being mapped (for a start), and not entities were getting updated. I was using the mutation pool for updates in the map routine. On further investigations, it appears that the mutation pool flushes after every 100 entities in it, and does not do so for the last batch of entities. Out of the 260 entities, everytime 60 entities would NOT be updated, but 200 would be. This appeared to be true even if your entity count was a multiple of 100 - the last 100 were not getting updated. However, this issue does not exist if I get rid of mutation pool, and put entities directly to the datastore - all entities are updated always. Is this is a bug, or is there something I am not doing correctly with mutation pools? The mutation pool code is fairly simple (mutationPool.put(entity)) - just as in Ikai's mapper blog post. Appreciate your help with this. Regards, Arun Earlier post: http://groups.google.com/group/google-appengine-java/browse_thread/thread/fe7fd75e2fa19a7e/a94b0efc6e50c361?hl=enlnk=gstq=out+of+mapper+quota#a94b0efc6e50c361 -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [google-appengine] Entity groups - does work on a child lock the parent, and vice versa?
From the Python documentation: When you use the App Engine datastore, every attempt to create, update, or delete an entity happens in a transaction. This means, I think, that GAE will perform/create a transaction for you, in the API, if the put() code is not already inside a transaction. So you don't need to code a transaction to create a child object, GAE will do that for you. # no need for a transaction here. Grok(parent=myFoo).put() # python syntax Code the transaction yourself if you need to modify multiple objects in the entity group. 2011/1/13 Stephen Johnson onepagewo...@gmail.com: From the documentation: While an app is applying changes to entities in an entity group, all other attempts to update any entity in the group fail at commit time. Because of this design, using entity groups limits the number of concurrent writes you can do on any entity in that group. When a transaction starts, App Engine uses optimistic concurrency control by checking the last update time for the entity group. Upon commiting a transaction for an entity group, App Engine again checks the last update time for the entity group. If it has changed since our initial check, we throw an exception. For an explanation of entity groups, see Entity Groups. On Thu, Jan 13, 2011 at 10:48 AM, Mark mar...@gmail.com wrote: Hi, Let's say we have an entity group hierarchy like this: Foo | --- Grok Foo is the entity parent. Any time I add a Grok instance to the datastore, does the parent Foo instance have to be locked? Example: Transaction tx = pm.currentTransaction(); try { tx.begin(); Grok grok = new Grok(); pm.makePersistent(grok); tx.commit(); // will a parent Foo get locked now? } finally { if (tx.isActive()) { tx.rollback(); } I guess the same question then - if I'm performing a transaction on the parent Foo, will all its Grok instances be locked? 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.
Re: [google-appengine] Re: Forming url with id number
You could use the URL dispatcher to check for validity of the passed id by making the id part of the URL http://me-for-president.appspot.com/item/1 in the code class ItemPage(webapp.RequestHandler): def get(self, id): id = int(id) # rest of the handler application = webapp.WSGIApplication([('/item/(\d+)', ItemPage)], debug=True) def main(): run_wsgi_app(application) Use some sort of template engine. Much easier if the site or pages gets bigger. -- 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.
Re: [google-appengine] How to launch 100K+ recurring task every 5 min
I think that GAE is not best solution for this kind of application. You are much better with dedicated / cloud instances and Cassandra (or other noSQL solution) to work around mysql scalability. Maxim. On Fri, Jan 14, 2011 at 8:24 PM, supercobra superco...@gmail.com wrote: Hello again, Again as Eli mentioned, to offer any solutions we'd need to know what you're trying to do in all those tasks. We are exploring the idea of migrating our website monitoring service Montastic (www.montastic.com) to GAE. Right now it works on MySQL but scalability becomes challenging and we need to explore a re-architecture of our system. GAE would be ideal if it was possible. So we do need to do a LOT of UrlFetch-es every 1, 2, 5 minutes. One of the challenge is to wait for 5 minutes. E.g. Fetch a URL, store results, wait 5 min, do it again. Since a queue will execute the task almost immediately (if it is empty) this would not work unless the queue is filled w/ a known number of tasks. Any suggestion welcome. Daniel -- 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.comgoogle-appengine%2bunsubscr...@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 at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Forming url with id number
On Jan 15, 9:14 am, djidjadji djidja...@gmail.com wrote: You could use the URL dispatcher to check for validity of the passed id by making the id part of the URL http://me-for-president.appspot.com/item/1 in the code class ItemPage(webapp.RequestHandler): def get(self, id): id = int(id) # rest of the handler application = webapp.WSGIApplication([('/item/(\d+)', ItemPage)], debug=True) Thanks for this information! Exactly what I was trying to understand. I changed the handler like this: class Article(webapp.RequestHandler): def get(self, id): id = int(id) self.response.out.write(a href=/item/%sarticle title/ a % (id)) and it works fine. But now how do I get the article title from the other handler where it is inside the for loop. Because in this handler I cannot use item.title. What is the way to do this? Thanks again. -- 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.
Re: [google-appengine] Re: How to launch 100K+ recurring task every 5 min
The countdown parameter of TaskQueue is indeed a big help here. Thanks for pointing that out. -- superco...@gmail.com http://supercobrablogger.blogspot.com/ On Fri, Jan 14, 2011 at 3:41 PM, Uros Trebec uros.tre...@gmail.com wrote: re On Jan 14, 7:24 pm, supercobra superco...@gmail.com wrote: One of the challenge is to wait for 5 minutes. E.g. Fetch a URL, store results, wait 5 min, do it again. Since a queue will execute the task almost immediately (if it is empty) this would not work unless the queue is filled w/ a known number of tasks. Any suggestion welcome. You can use the 'countdown' parameter in Task constructor ( http://code.google.com/appengine/docs/python/taskqueue/tasks.html#Task ) to set the number of seconds for the Task to wait in the queue before executing. I use this for scheduling a task a few minutes in the future when UrlFetch returns the data I already have. lp, Uros -- 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 at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: How to launch 100K+ recurring task every 5 min
Daniel, since a couple of days I'm playing with TaskQueue + countdown. I'm trying to create a HttpMonitor, exactly as you. :) The idea is the same as Eli Jones wrote: enque a task with a deferred run using countdown. My tests show it works fine. OK, ok, my test are not for business. I'm learning and testing GAE, in particular Task Queue. I hope to have an alpha version in the next days. Let me know if you need more info. Fabrizio On Sat, Jan 15, 2011 at 5:03 PM, supercobra superco...@gmail.com wrote: The countdown parameter of TaskQueue is indeed a big help here. Thanks for pointing that out. -- superco...@gmail.com http://supercobrablogger.blogspot.com/ -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Forming url with id number
First you make an index page containing all the items you want to show based on a filtering, maybe date. class ItemIndexPage(webapp.RequestHandler): def get(self): items = Item.all().filter(...some filter...).fetch(1000) self.response.out.write(ol) for item in items: self.response.out.write(lia href=%s%s/abr / a href=/item/%scomments/a/li % (cgi.escape(item.url), cgi.escape(item.title), cgi.escape(item.key().id( self.response.out.write(/ol) And deal with the individual item in the next handler class ItemPage(webapp.RequestHandler): def get(self, id): id = int(id) item = Item.get_by_id(id) # rest of the handler application = webapp.WSGIApplication([('/items', ItemIndexPage)],('/item/(\d+)', ItemPage)], debug=True) -- 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.
Re: [google-appengine] How to launch 100K+ recurring task every 5 min
If you want to use GWT for the frontend you can use Python for the backend. 2011/1/14 supercobra superco...@gmail.com: Hi Eli, Thanks for the great feedback. If Task Queue Java is as evolved as Phyton that maybe the way to go. -- superco...@gmail.com http://supercobrablogger.blogspot.com/ -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] in future, can i change my datastore to High Replication without changing appid?
as title. -- 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.
Re: [google-appengine] in future, can i change my datastore to High Replication without changing appid?
No. http://code.google.com/appengine/docs/python/datastore/hr/ I beleive the recommended solution if you anticipate you might want to switch, is to use a custom domain. That way can remap the domain to a new appid if you do change the datastore. On 15 January 2011 17:11, saintthor saintt...@gmail.com wrote: as title. -- 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 at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Forming url with id number
On Jan 15, 11:18 am, djidjadji djidja...@gmail.com wrote: And deal with the individual item in the next handler class ItemPage(webapp.RequestHandler): def get(self, id): id = int(id) item = Item.get_by_id(id) # rest of the handler Thanks for your help. This works: class Article(webapp.RequestHandler): def get(self, id): id = int(id) item = Item.get_by_id(id) ... self.response.out.write(a href=%s%s/a % (cgi.escape(item.url), cgi.escape(item.title))) -- 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] Deal Breaker: App not visible in China
Is there any solution to this, or is this something that Google is working on? Our most recent app has China as an important market. Yet, it appears China is again blocking the Google IP addresses, as our customers cannot get to the site. This is a deal breaker for this and many other apps. Please tell me this will be fixed soon, or propose a solution. Thank you. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] users.create_logout_url(/) not working
I am using this standard code from documentation http://code.google.com/appengine/docs/python/users/overview.html: if user: greeting = (%s (a href=\%s\sign out/a) % (user.nickname(), users.create_logout_url(/))) else: greeting = (a href=\%s\Sign in or register/a. % users.create_login_url(/)) but I get broken link error. Is this related to this issue? http://code.google.com/p/googleappengine/issues/detail?id=353 Is there a fix? Or am I doing something wrong? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Deal Breaker: App not visible in China
It'll be fixed when google gets the contract for managing the GFW and unblocks ghs.google.com I suggest searching this forum for 'reverse proxy' and 'turkey' to see a recent conversation on the matter. On Sat, Jan 15, 2011 at 11:53 AM, GAEfan ken...@gmail.com wrote: Is there any solution to this, or is this something that Google is working on? Our most recent app has China as an important market. Yet, it appears China is again blocking the Google IP addresses, as our customers cannot get to the site. This is a deal breaker for this and many other apps. Please tell me this will be fixed soon, or propose a solution. Thank you. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to 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. -- -- A. Stevko === If everything seems under control, you're just not going fast enough. M. Andretti -- 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.
Re: [google-appengine] Task Queue errors on deployment
Ikai - my app id is comm-q. My queue.xml file is posted below. I just tried to update the queue configuration with this file and received the same error. I reduced the number of queues to see if that would make a difference but it has not. queue-entries queue namemailman-queue-1/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-2/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-3/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-4/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-5/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-6/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-7/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-8/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-9/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-10/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-11/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-12/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-13/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-14/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-15/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-16/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-17/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-18/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-19/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-20/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-21/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-22/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-23/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-24/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-25/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-26/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-27/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-28/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-29/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-30/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-31/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-32/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-33/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-34/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-35/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-36/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-37/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-38/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-39/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-40/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-41/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-42/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-43/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-44/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-45/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-46/name rate50/s/rate bucket-size20/bucket-size /queue queue namemailman-queue-47/name rate50/s/rate bucket-size20/bucket-size /queue queue
[google-appengine] Signing email with DKIM to reduce spam
Hi - I got quite excited when I heard that Google had implemented DKIM for Google Apps, and hoped we would be able to reduce the number of our apps' messages that end up in spam folders. I've written an article about DKIM, why you should implement it now, and how to do this with Google Apps here: http://neogregious.blogspot.com/2011/01/dkim-for-google-apps-and-appengine.html Unfortunately I found that DKIM for Google Apps does not translate into DKIM for Appengine. Depending on how quickly DKIM spreads, this could make sending email from Appengine pointless, as spam filters will make non-DKIM ever more strongly associated with spam. Please star this issue if this will affect you: http://code.google.com/p/googleappengine/issues/detail?id=3161 Cheers! Greg. -- 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: Some emails are not being received by my users
On Jan 15, 7:04 am, Joshua Smith joshuaesm...@charter.net wrote: You can try to avoid this by avoiding looking like spam (carefully choose your wording, send *both* HTML and plain text versions of the message, etc.). Also set up SPF (Google is your friend), and star this issue asking for DKIM to be implemented for appengine: http://code.google.com/p/googleappengine/issues/detail?id=3161 -- 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.
Re: [google-appengine] Task Queue errors on deployment
Thanks Robert. I used 10 queues for the last 10 months or so. When I updated to 1.4.0 I changed some code to use all 100 queues. After I made this change everything continued working and all 100 queues were being used. I didn't rename any existing queues I only added additional ones. I think the last thing I did before I noticed it wasn't working is that I added a python app so that I could use some of the datastore tools that are python only. Days later I uploaded new code to my JAVA instance with no changes to queue.xml and received the error for the first time. I also noticed at this time that I could not go to the Task Queue Admin Console because I was getting a 500 error. That issue was since fixed with under issue 4342http://code.google.com/p/googleappengine/issues/detail?id=4342 -- 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.
Re: [google-appengine] Re: How to launch 100K+ recurring task every 5 min
I think Eli has a good suggestion (again), use task-chaining with countdowns + async urlfetches in small batches. Just beware, countdowns are only an estimate, and if the queue is backing up the task may not run when you want. Just thinking about this, I would probably try to batch similarly performing websites into small batches to monitor together. So if you got sites that typically respond very fast group them, like-wise for slow sites. I suspect that will help you optimize your queue layouts, maybe you could use some queues for 'fast' and others for 'slow' groups. Just some thoughts. I also agree with some of the other commenters, you should setup some tests and see if you still feel like this is the right platform for your app. Robert On Sat, Jan 15, 2011 at 11:03, supercobra superco...@gmail.com wrote: The countdown parameter of TaskQueue is indeed a big help here. Thanks for pointing that out. -- superco...@gmail.com http://supercobrablogger.blogspot.com/ On Fri, Jan 14, 2011 at 3:41 PM, Uros Trebec uros.tre...@gmail.com wrote: re On Jan 14, 7:24 pm, supercobra superco...@gmail.com wrote: One of the challenge is to wait for 5 minutes. E.g. Fetch a URL, store results, wait 5 min, do it again. Since a queue will execute the task almost immediately (if it is empty) this would not work unless the queue is filled w/ a known number of tasks. Any suggestion welcome. You can use the 'countdown' parameter in Task constructor ( http://code.google.com/appengine/docs/python/taskqueue/tasks.html#Task ) to set the number of seconds for the Task to wait in the queue before executing. I use this for scheduling a task a few minutes in the future when UrlFetch returns the data I already have. lp, Uros -- 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 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 at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Getting User nickname from item.author
Hi Zeynel, I guess it depends on exactly what item.author is, but have you tried author.nickname()? http://code.google.com/appengine/docs/python/users/userclass.html#User_nickname Also, if author is just a string, you might simply want to use: author.split('@', 1)[0] Robert On Sat, Jan 15, 2011 at 20:10, Zeynel azeyn...@gmail.com wrote: items = db.GqlQuery(SELECT * FROM Item ORDER BY date DESC LIMIT 30) self.response.out.write(ol) for item in items: self.response.out.write(lia href=%s%s/a br / div style=color: #808080; font-size: x-small;by %s a href=/item/%scomments/a/div/ libr / % (cgi.escape(item.url), cgi.escape(item.title), item.author, cgi.escape(str(item.key().id())), )) self.response.out.write(/ol) In this code i am trying to strip the user name from item.author which is the gmail account of the user. I tried regex from here http://stackoverflow.com/questions/1038824/python-strip-a-string/1038873#1038873 re.match(r(.*)@, item.author).group(1) but this gives the error File C:\Python26\lib\re.py, line 137, in match return _compile(pattern, flags).match(string) TypeError: expected string or buffer I tried str(item.author) but it did not work. It works on IDLE: email = a@gmail re.match(r(.*)@, email).group(1) 'a' -- 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 at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] users.create_logout_url(/) not working
Hi Zeynel, What kind of auth does your app use, Google, Apps Domain, Federated? You might also want to explain the actual problem in more detail. What are the links produced, etc... Robert On Sat, Jan 15, 2011 at 15:10, Zeynel azeyn...@gmail.com wrote: I am using this standard code from documentation http://code.google.com/appengine/docs/python/users/overview.html: if user: greeting = (%s (a href=\%s\sign out/a) % (user.nickname(), users.create_logout_url(/))) else: greeting = (a href=\%s\Sign in or register/a. % users.create_login_url(/)) but I get broken link error. Is this related to this issue? http://code.google.com/p/googleappengine/issues/detail?id=353 Is there a fix? Or am I doing something wrong? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- 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: in future, can i change my datastore to High Replication without changing appid?
all custom domains from china to google apps are gfwed On 1月16日, 上午1时13分, Barry Hunter barrybhun...@gmail.com wrote: No. http://code.google.com/appengine/docs/python/datastore/hr/ I beleive the recommended solution if you anticipate you might want to switch, is to use a custom domain. That way can remap the domain to a new appid if you do change the datastore. On 15 January 2011 17:11, saintthor saintt...@gmail.com wrote: as title. -- 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.