[appengine-java] Re: sending mail in google app engine in java
hi, My special thanks to Alex,Conor,Sreekanth,Henning and Ikai. Finally i solved my problem. I send emails from my application. - Here is the process. My code is correct and don't send mails from that application. create another application.redirect from that application to the first application with full address as follows. --- resp.sendRedirect(http://yourapp-id.appspot.com/your target file like html or servlet); --- It will work surely.If it is not working correctly,try and try you will get success.. All the best, Lakshmi. On Feb 18, 6:03 pm, lakshmi sowji.ap...@gmail.com wrote: Hi Alex, Let me say sowjanya1,and sowjanya2 are two apps in GAE.How can i test my mails in sowjanay2,where i send them from sowjanya1.Tell me clearly Thanks, Lakshmi. On Feb 18, 5:03 pm, Alexander Arendar alexander.aren...@gmail.com wrote: You don't need any third party server. Just reserve one of your deployed apps as your test server and test all your mail-sending stuff there. As Conor already explained you can't send mails testing locally. On Thu, Feb 18, 2010 at 2:00 PM, lakshmi sowji.ap...@gmail.com wrote: Thanks cowper, really you did a great help to me.Nearly i am searching for this clarity for two weeks.Thank you very much. But what can i do for sending emails from google app engine. Is there any need with third party server.can you mention those details also please. Thanks, Lakshmi. On Feb 18, 3:48 pm, Conor Power iamco...@gmail.com wrote: The admin is an email address for some configured as an application developer from the application console. If you're testing from local SDK the email does not get sent so that could be the issue. However for me I see log statements to the effect that the email is being sent so you should be seeing the same unless you have logging configured to output very little. cowper On Thu, Feb 18, 2010 at 8:14 AM, lakshmi sowji.ap...@gmail.com wrote: Hi Sreekanth, Thanks for your reply.Admin address means with which we enter in to admin console.Isn't it. That is my e-mail address, right.Even that too not working.can you tell me clearly,please. On Feb 18, 12:12 pm, Sreekanth Raju sraj...@gmail.com wrote: in order to send mail in app engine, from address should be either admin or developer email id -- 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-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com google-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.-Hide quoted text - - Show quoted text - -- 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-j...@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.-Hide quoted text - - Show quoted text -- Hide quoted text - - Show quoted text - -- 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-j...@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] good workaround for securely accessing my domain?
What solutions are people trying when they have an app running under their domain and they need HTTPS functionality? I've starred the issue here: http://code.google.com/p/googleappengine/issues/detail?id=792q=httpscolspec=ID%20Type%20Status%20Priority%20Stars%20Owner%20Summary%20Log%20Component I noticed there that miGlanz had an interesting solution although it's a bit problematic. So again, what are people doing for security when they need to implement custom authentication on GAE and are running the app under their own domain? Do I try a nonstandard approach for typical Java web applications and simply resort to sending a home- brewed encrypted message on every request? -- 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-j...@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: web.xml Question in GAE
Hello there, A fellow Wicket user! I use the following filter mappings in my web.xml, which work for me; they might work for you too... filter-mapping filter-nameWicketApplication/filter-name url-pattern/wicket/*/url-pattern /filter-mapping !-- This must be after the similar block for /wicket/* -- filter-mapping filter-nameWicketApplication/filter-name url-pattern/*/url-pattern /filter-mapping Do let us know how you get on. -- 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-j...@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: Editing records in datastore (using JAVA)
datanucleus, I have created SMSUser class like this @PersistenceCapable(identityType = IdentityType.APPLICATION) public class SMSUser { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) public Key UserId; @Persistent public User sUser; @Persistent public String ContractPerson; @Persistent public String Company; @Persistent public String Address; . What i have changed is, instead of get/set method, i have used public members. Does it make any difference??? On Feb 19, 1:49 pm, datanucleus andy_jeffer...@yahoo.com wrote: PS: I have added pm.close(); after pm.makePersistent(u); still it does not update the record... Why should it ? You have gone and updated fields directly so how does the object *know* that it has been updated ? Either mark the class updating the fields as @PersistenceAware, or update via setters -- 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-j...@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: Editing records in datastore (using JAVA)
Dear Alexander Arendar , I have tried it. My listing deleting and adding works fine... Just getting stuck in editing part.. On Feb 19, 1:53 pm, Alexander Arendar alexander.aren...@gmail.com wrote: Hi Manjoor, you should also call after all these pm.close() and you'll see the result :) JDO persist the object really at the moment when you are closing the persistence manager. On Fri, Feb 19, 2010 at 7:44 AM, Manjoor manjoora...@gmail.com wrote: Thanks for the reply but it does not work. Have a look at this. I have checked it in debugger, It successfuly fetch desired record. but after changing it does not saved. No error :( SMSUser u = pm.getObjectById(SMSUser.class,tu.UserId); u.ContractPerson = req.getParameter(ContractPerson); u.Company = req.getParameter(Company); u.Address = req.getParameter(Address); u.Phone = req.getParameter(Phone); pm.makePersistent(u); On Feb 19, 12:15 am, Jake jbrooko...@cast.org wrote: The Google App Engine instructions focus on JDO for the datastore implementation. JDO doesn't have the traditional update function. You either modify it and close the persistence manager that returned the object (it knows it changed and updates accordingly) or you just persist the object again with the same ID to overwrite it. See: http://code.google.com/appengine/docs/java/datastore/creatinggettinga... I believe JPA has an update feature, but if you're new to it I suggest JDO since it has better documentation in GAE. Jake On Feb 18, 10:55 am, Manjoor manjoora...@gmail.com wrote: I have been searching for sample java program to add,editand delete records. I found many example showing how to add and delete records but not a single about editing. Do anyone have a sample source link to show how toedita record ???- Hide quoted text - - Show quoted text - -- 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-j...@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.- Hide quoted text - - Show quoted text - -- 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-j...@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] Re: web.xml Question in GAE
Hi now it works, but there was a strange behaviour here (maybe a bug) but i can't reproduce it anymore. The problem was that /* url-pattern didn't work, but /mp3Rapidshare/* worked. Here is how i Fix it: the original web.xml was: ?xml version=1.0 encoding=utf-8? web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns=http://java.sun.com/xml/ns/javaee; xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5 filter filter-name*WicketFilter*/filter-name filter-classorg.apache.wicket.protocol.http.*WicketFilter* /filter-class init-param param-nameapplicationClassName/param-name param-valuenm.mp3rapidshare.WicketApplication/param-value /init-param /filter filter-mapping filter-name*WicketFilter*/filter-name url-pattern/mp3Rapidshare/*/url-pattern /filter-mapping filter-mapping filter-name*WicketFilter*/filter-name url-pattern/*/url-pattern /filter-mapping /web-app here the filter-name and the filter-class have the same name at the end. So i changed to filter-name *WicketFilter1* /filter-name and it worked! the new web.xml: ?xml version=1.0 encoding=utf-8? web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns=http://java.sun.com/xml/ns/javaee; xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5 filter filter-name*WicketFilter1*/filter-name filter-classorg.apache.wicket.protocol.http.*WicketFilter* /filter-class init-param param-nameapplicationClassName/param-name param-valuenm.mp3rapidshare.WicketApplication/param-value /init-param /filter filter-mapping filter-name*WicketFilter1*/filter-name url-pattern/mp3Rapidshare/*/url-pattern /filter-mapping filter-mapping filter-name*WicketFilter1*/filter-name url-pattern/*/url-pattern /filter-mapping /web-app And then i tried to reproduce a possible Bug, Replacing the web.xml with the last from muy SVN: The same Web.xml that didn't work, now works: (Strange!!) ?xml version=1.0 encoding=utf-8? web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns=http://java.sun.com/xml/ns/javaee; xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5 filter filter-name*WicketFilter*/filter-name filter-classorg.apache.wicket.protocol.http.*WicketFilter* /filter-class init-param param-nameapplicationClassName/param-name param-valuenm.mp3rapidshare.WicketApplication/param-value /init-param /filter filter-mapping filter-nameWicketFilter/filter-name url-pattern/mp3Rapidshare/*/url-pattern /filter-mapping filter-mapping filter-name*WicketFilter*/filter-name url-pattern/*/url-pattern /filter-mapping /web-app But, now it works, so i can continue developing. So Thanks a lot NM On Fri, Feb 19, 2010 at 8:18 AM, Ian Marshall ianmarshall...@gmail.comwrote: Hello there, A fellow Wicket user! I use the following filter mappings in my web.xml, which work for me; they might work for you too... filter-mapping filter-nameWicketApplication/filter-name url-pattern/wicket/*/url-pattern /filter-mapping !-- This must be after the similar block for /wicket/* -- filter-mapping filter-nameWicketApplication/filter-name url-pattern/*/url-pattern /filter-mapping Do let us know how you get on. -- 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-j...@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-j...@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] Re: web.xml Question in GAE
Ian Marshall Thanks for your reply! NM On Fri, Feb 19, 2010 at 9:52 AM, nicolas melendez nfmelen...@gmail.comwrote: Hi now it works, but there was a strange behaviour here (maybe a bug) but i can't reproduce it anymore. The problem was that /* url-pattern didn't work, but /mp3Rapidshare/* worked. Here is how i Fix it: the original web.xml was: ?xml version=1.0 encoding=utf-8? web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns=http://java.sun.com/xml/ns/javaee; xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5 filter filter-name*WicketFilter*/filter-name filter-classorg.apache.wicket.protocol.http.*WicketFilter* /filter-class init-param param-nameapplicationClassName/param-name param-valuenm.mp3rapidshare.WicketApplication/param-value /init-param /filter filter-mapping filter-name*WicketFilter*/filter-name url-pattern/mp3Rapidshare/*/url-pattern /filter-mapping filter-mapping filter-name*WicketFilter*/filter-name url-pattern/*/url-pattern /filter-mapping /web-app here the filter-name and the filter-class have the same name at the end. So i changed to filter-name *WicketFilter1* /filter-name and it worked! the new web.xml: ?xml version=1.0 encoding=utf-8? web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns=http://java.sun.com/xml/ns/javaee; xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5 filter filter-name*WicketFilter1*/filter-name filter-classorg.apache.wicket.protocol.http.*WicketFilter* /filter-class init-param param-nameapplicationClassName/param-name param-valuenm.mp3rapidshare.WicketApplication/param-value /init-param /filter filter-mapping filter-name*WicketFilter1*/filter-name url-pattern/mp3Rapidshare/*/url-pattern /filter-mapping filter-mapping filter-name*WicketFilter1*/filter-name url-pattern/*/url-pattern /filter-mapping /web-app And then i tried to reproduce a possible Bug, Replacing the web.xml with the last from muy SVN: The same Web.xml that didn't work, now works: (Strange!!) ?xml version=1.0 encoding=utf-8? web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns=http://java.sun.com/xml/ns/javaee; xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; xsi:schemaLocation=http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5 filter filter-name*WicketFilter*/filter-name filter-classorg.apache.wicket.protocol.http.*WicketFilter* /filter-class init-param param-nameapplicationClassName/param-name param-valuenm.mp3rapidshare.WicketApplication/param-value /init-param /filter filter-mapping filter-nameWicketFilter/filter-name url-pattern/mp3Rapidshare/*/url-pattern /filter-mapping filter-mapping filter-name*WicketFilter*/filter-name url-pattern/*/url-pattern /filter-mapping /web-app But, now it works, so i can continue developing. So Thanks a lot NM On Fri, Feb 19, 2010 at 8:18 AM, Ian Marshall ianmarshall...@gmail.comwrote: Hello there, A fellow Wicket user! I use the following filter mappings in my web.xml, which work for me; they might work for you too... filter-mapping filter-nameWicketApplication/filter-name url-pattern/wicket/*/url-pattern /filter-mapping !-- This must be after the similar block for /wicket/* -- filter-mapping filter-nameWicketApplication/filter-name url-pattern/*/url-pattern /filter-mapping Do let us know how you get on. -- 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-j...@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-j...@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: Editing records in datastore (using JAVA)
datanucleus, Please can you show me how a setter tell JDO that it is called and JDO need to update it??? I am sorry but i am new to java. (Just for app-engine) On Feb 19, 1:49 pm, datanucleus andy_jeffer...@yahoo.com wrote: PS: I have added pm.close(); after pm.makePersistent(u); still it does not update the record... Why should it ? You have gone and updated fields directly so how does the object *know* that it has been updated ? Either mark the class updating the fields as @PersistenceAware, or update via setters -- 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-j...@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] Map Reduce
Hi, I am curious about what will be possible with the planned map reduce functionality. Could this be used as the basis of a free text search or facetted break down of search results? -- 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-j...@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: Editing records in datastore (using JAVA)
Dear Sushama Khadilkar, I am trying my hand in JDO..I have not thought to using JPA yet On Feb 19, 12:10 pm, Sushama Khadilkar sush.khadil...@gmail.com wrote: If you want to update the record using EntityManager , then just use em.merge(Object). This the link to the Example::http://www.javabeat.net/articles/81-jpa-in-netbeans-61-4.html -- 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-j...@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: web.xml Question in GAE
You're welcome. It's amazing how a prod from someone else can get the coding moving again, even if the prod was not completely on target! -- 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-j...@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] Re: vs-accounting.appspot.com - datastore viewer error
Hello Toby I am still not able to use the 'Datastore Viewer'. It simply displays message Server Error A server error has occurred. I cleaned up my entities that are using PhoneNumber, Email etc. -Aswath On Sat, Feb 6, 2010 at 1:06 AM, Toby Reyelts to...@google.com wrote: You have an empty property of type e-mail, and that makes the datastore viewer unhappy. You need to either use a different type that can be non-empty (like String), or have non-empty e-mails. On Thu, Feb 4, 2010 at 10:25 PM, aswath satrasala aswath.satras...@gmail.com wrote: My application is running fine. I am still getting the datastore viewer error.What can we do in this scenario. How can we get support? -Aswath On Mon, Feb 1, 2010 at 12:36 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello GAE team, I am still not able to use the DataStore viewer for my app-id 'vs-accounting' Thanks -Aswath On Thu, Jan 28, 2010 at 11:08 AM, aswath satrasala aswath.satras...@gmail.com wrote: Local file: datastore-indexes !-- Used 2 times in query history -- datastore-index kind=Tenant ancestor=true source=auto property name=tenants_INTEGER_IDX direction=asc/ /datastore-index !-- Used 1 time in query history -- datastore-index kind=Party ancestor=true source=auto property name=partys_INTEGER_IDX direction=asc/ /datastore-index !-- Used 1 time in query history -- datastore-index kind=SecurityGroup ancestor=true source=auto property name=secGrpList_INTEGER_IDX direction=asc/ /datastore-index datastore-index kind=PartyRole ancestor=true source=auto property name=partyRoles_INTEGER_IDX direction=asc/ /datastore-index /datastore-indexes Production: Party partys_INTEGER_IDX ▲ Includes ancestors *Serving* PartyRole partyRoles_INTEGER_IDX ▲ Includes ancestors *Serving* SecurityGroup secGrpList_INTEGER_IDX ▲ Includes ancestors *Serving* Tenant tenants_INTEGER_IDX ▲ Includes ancestors 12hrs ago , the secGrpList_INTEGER_IDX was not shown on the production admin console. Now, it is showing up. The datastore viewer is still responding back error page. -Aswath On Thu, Jan 28, 2010 at 2:48 AM, Ikai L (Google) ika...@google.comwrote: What does you local indexes file look like? Can you post the indexes listed in your production admin console? On Tue, Jan 26, 2010 at 11:24 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello GAE team, Further observations made while testing the app. I am not able to write entities to the datastore. Upon examining the logs, I found the following error. com.veersoft.action.CreateTenantAction doCreate: com.google.appengine.api.datastore.DatastoreNeedIndexException: no matching index found.. datastore-index kind=SecurityGroup ancestor=true source=manual property name=secGrpList_INTEGER_IDX direction=asc/ /datastore-index The application is fine on the local develpment server. -Aswath On Tue, Jan 26, 2010 at 8:51 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello, My app-id is vs-accounting. I login into appengine.google.com. I choose the above application. Then I click on the datastore viewer. I get the error Server Error A server error has occurred. Return to Applications screen » https://appengine.google.com/ -Aswath -- 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-j...@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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- 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-j...@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-j...@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
Re: [appengine-java] update to sdk1.3.1
No, it won't auto-update today. The following link explains how to switch the SDK that a project is using: http://code.google.com/eclipse/docs/using_sdks.html. On Thu, Feb 18, 2010 at 11:46 PM, AJ Chen ajc...@web2express.org wrote: I ran an update from eclipse. The sdk1.3.1 is installed in the eclipse/plugin dir, but the sdk in my existing GAE project still points to the old version 1.3.0. Should the update automatically update the existing project? if not, how to change it manually? thanks, -aj -- 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-j...@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. -- Miguel -- 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-j...@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] A List property - Can we filter 'null' and '[null]' values separately ?
Hello, I'm using low-level datastore API and its Query class to filter entities. I put two entities to datastore: the first has set a property 'list' to null and the second has the same property set to [null] (a list containing one null value). The following query will find both of them - that's ok: new Query(MyEntity).addFilter( list, Query.FilterOperator.EQUAL, null) But is there a way (using GAE API only) to filter only the first entity or only the second one ? The full code is on my blog: http://vaclavb.blogspot.com/2010/02/lists-and-nulls-in-google-app-engine.html Vaclav -- 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-j...@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] Re: vs-accounting.appspot.com - datastore viewer error
You still have phone entities that are empty. On Fri, Feb 19, 2010 at 8:40 AM, aswath satrasala aswath.satras...@gmail.com wrote: Hello Toby I am still not able to use the 'Datastore Viewer'. It simply displays message Server Error A server error has occurred. I cleaned up my entities that are using PhoneNumber, Email etc. -Aswath On Sat, Feb 6, 2010 at 1:06 AM, Toby Reyelts to...@google.com wrote: You have an empty property of type e-mail, and that makes the datastore viewer unhappy. You need to either use a different type that can be non-empty (like String), or have non-empty e-mails. On Thu, Feb 4, 2010 at 10:25 PM, aswath satrasala aswath.satras...@gmail.com wrote: My application is running fine. I am still getting the datastore viewer error.What can we do in this scenario. How can we get support? -Aswath On Mon, Feb 1, 2010 at 12:36 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello GAE team, I am still not able to use the DataStore viewer for my app-id 'vs-accounting' Thanks -Aswath On Thu, Jan 28, 2010 at 11:08 AM, aswath satrasala aswath.satras...@gmail.com wrote: Local file: datastore-indexes !-- Used 2 times in query history -- datastore-index kind=Tenant ancestor=true source=auto property name=tenants_INTEGER_IDX direction=asc/ /datastore-index !-- Used 1 time in query history -- datastore-index kind=Party ancestor=true source=auto property name=partys_INTEGER_IDX direction=asc/ /datastore-index !-- Used 1 time in query history -- datastore-index kind=SecurityGroup ancestor=true source=auto property name=secGrpList_INTEGER_IDX direction=asc/ /datastore-index datastore-index kind=PartyRole ancestor=true source=auto property name=partyRoles_INTEGER_IDX direction=asc/ /datastore-index /datastore-indexes Production: Party partys_INTEGER_IDX ▲ Includes ancestors *Serving* PartyRole partyRoles_INTEGER_IDX ▲ Includes ancestors *Serving* SecurityGroup secGrpList_INTEGER_IDX ▲ Includes ancestors *Serving* Tenant tenants_INTEGER_IDX ▲ Includes ancestors 12hrs ago , the secGrpList_INTEGER_IDX was not shown on the production admin console. Now, it is showing up. The datastore viewer is still responding back error page. -Aswath On Thu, Jan 28, 2010 at 2:48 AM, Ikai L (Google) ika...@google.comwrote: What does you local indexes file look like? Can you post the indexes listed in your production admin console? On Tue, Jan 26, 2010 at 11:24 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello GAE team, Further observations made while testing the app. I am not able to write entities to the datastore. Upon examining the logs, I found the following error. com.veersoft.action.CreateTenantAction doCreate: com.google.appengine.api.datastore.DatastoreNeedIndexException: no matching index found.. datastore-index kind=SecurityGroup ancestor=true source=manual property name=secGrpList_INTEGER_IDX direction=asc/ /datastore-index The application is fine on the local develpment server. -Aswath On Tue, Jan 26, 2010 at 8:51 PM, aswath satrasala aswath.satras...@gmail.com wrote: Hello, My app-id is vs-accounting. I login into appengine.google.com. I choose the above application. Then I click on the datastore viewer. I get the error Server Error A server error has occurred. Return to Applications screen » https://appengine.google.com/ -Aswath -- 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-j...@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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- 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-j...@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-j...@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
[appengine-java] Re: JavaMail doesn't work
JavaMail works fine once the app is deployed to App Engine. http://code.google.com/appengine/docs/java/mail/usingjavamail.html On Feb 18, 10:08 am, Raghu visuma...@gmail.com wrote: Hi All, I struck at JavaMail application. I tested remotely and locally also. It's not working. please help me. Please share a simple servlet if possible thanks raghu -- 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-j...@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] Re: web.xml Question in GAE
I think the problem is that you had an index.html file in your web application, and static files always override filters and servlets in App Engine. See the second paragraph of: http://code.google.com/appengine/docs/java/gettingstarted/staticfiles.html You can either remove the index.html (sounds like that's what you did, possibly without being aware of it), or you can specify your own welcome-file-list that doesn't include index.html. On Fri, Feb 19, 2010 at 7:30 AM, Ian Marshall ianmarshall...@gmail.comwrote: You're welcome. It's amazing how a prod from someone else can get the coding moving again, even if the prod was not completely on target! -- 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-j...@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-j...@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] A List property - Can we filter 'null' and '[null]' values separately ?
To summarize the issue, you cannot search for a null (list) if you store a null value in any instance of that (list) property. This is due to the way indexing is done for lists/arrays in the datastore. The short answer is no. You will have to store another property as a marker that you have a null list/array rather than a list/array that contains a null entry. In Objectify (http://code.google.com/p/objectify-appengine) we have a feature that doesn't store null entries for @Embedded collection/arrays; instead we store another property which keeps track of which entries in that collection are null. Then you can search for any collection that has null entries, but at the moment you can't search for a null/empty collection (since we don't store them, or any marker property indicating the difference between null/empty for that collection). We have plans to add support for differentiating between null/empty collections in queries, and it will be pretty easy to use, but we are waiting on more people needing that feature. Here are some discussions relating directly to this issue on the Objectify group: http://groups.google.com/group/objectify-appengine/browse_thread/thread/c05efb6943387eb4 On Fri, Feb 19, 2010 at 7:36 AM, vbart vaclav.barta...@spolecne.cz wrote: Hello, I'm using low-level datastore API and its Query class to filter entities. I put two entities to datastore: the first has set a property 'list' to null and the second has the same property set to [null] (a list containing one null value). The following query will find both of them - that's ok: new Query(MyEntity).addFilter( list, Query.FilterOperator.EQUAL, null) But is there a way (using GAE API only) to filter only the first entity or only the second one ? The full code is on my blog: http://vaclavb.blogspot.com/2010/02/lists-and-nulls-in-google-app-engine.html Vaclav -- 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-j...@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-j...@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] Editing records in datastore (using JAVA)
If you would like a very simple interface to the app engine datastore (not JPA/JDO) then Objectify might be for you. It doesn't sound like you need to use JDO/JPA. Here is an example of exactly what you want: http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify#Basic_Operations:_Get,_Put,_Delete Notice that the Car is created, stored, then (can be) retrieved, changed, and stored again: Car porche = new Car(2FAST, red); ofy.put(porche); ... you can use the same instance, or get it at another time; it will be the same object // Change some data and write it porche.color = blue; ofy.put(porche); The simplicity is that you only store (put) and retrieve (get) objects from the datastore. There is no disconnected state, or any issues therein (no merging or reconnecting existing objects to some manager). It is simple, easy, and works with regular (POJO) objects. There isn't any special gotchas or explicit order to storing parent or children (just that you do :) . it works just as you should expect a simple persistence framework to work. On Thu, Feb 18, 2010 at 7:55 AM, Manjoor manjoora...@gmail.com wrote: I have been searching for sample java program to add, edit and delete records. I found many example showing how to add and delete records but not a single about editing. Do anyone have a sample source link to show how to edit a record ??? -- 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-j...@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-j...@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] cron job or scheduled tasks
i have a leave database having casual leaves 1.5 i need it will automatically add 1.5 at every month 15Th ex Date casual Leaves on jan 14 0 jan 15 1.5 jan 30 1.5 feb 141.5 Feb 15 3.0 can any one help how to achieve this... Please dont refer code.google.com/appengine/java i cant understand how to achieve this from there -- 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-j...@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] What CPU times should I expect in the logs?
I'm relatively new to GAE. My queries so far have for single entities with owned relationships, queried by key, which has been great - no orange or red screaming in my logs. More recently, I've been working on a simple page that does this: 1. get a list of 10 of the user's Following entities - each contain a key to an object the user is following, and some extra metadata about the relationship 2. get each of the ObjectBeingFollowed entities by key in the Following entity Easy enough to get working, but the logs are screaming at me with CPU times up around 0.5-1.0 seconds. Is this just what to expect? Do you guys have pages that always return red or orange log messages? 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-j...@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] Using GAE Platform Outside of Google
Hello All! I am evaluating GAE/Java for some of my projects and came across a scenario I can't seem to find any information on. I am porting an application I would normally have available through GAE, but have a client who wants to keep everything housed onsite. I'm assuming the development server would not be appropriate for such an implementation. So, is there a version of GAE available to install on a server in such an environment or can the GAE classes be used in another servlet container such as Tomcat? This would also be the case if someone were to want to use the software offline using localhost. I understand this isn't exactly an ideal scenario. However, I thought I would at least ask. Thank you, Greg -- 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-j...@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: Google maps geocoder responds with 620 error since last nights server maintenance
Same problem here. No problems for 4 months with unchanged mapping code and as of the last day mostly 620 results. I am running on the python appengine but as previously said this is probably an issue with the geocoder IP limit. On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote: ive entered this is a bug on the maps api bug tracker. ive tried on 2 google apps accounts and ive asked others to confirm. it looks like geocoding is impossible from google apps servers. On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote: At least now I can be certain that it's not a problem with my code. I can only hope that Google can fix this problem ASAP, as my application is absolutely useless without a working geocoder. On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote: I'm also seeing 620 errors for most (possibly all) of my reverse geocode requests. Jeff -- 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-j...@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] What CPU times should I expect in the logs?
You could try to batch the get of your ObjectBeingFollowed entities so you only do two gets. Is most of your cpu time api_cpu? On 19 Feb 2010, at 12:29, Blake wrote: I'm relatively new to GAE. My queries so far have for single entities with owned relationships, queried by key, which has been great - no orange or red screaming in my logs. More recently, I've been working on a simple page that does this: 1. get a list of 10 of the user's Following entities - each contain a key to an object the user is following, and some extra metadata about the relationship 2. get each of the ObjectBeingFollowed entities by key in the Following entity Easy enough to get working, but the logs are screaming at me with CPU times up around 0.5-1.0 seconds. Is this just what to expect? Do you guys have pages that always return red or orange log messages? 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 . -- 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-j...@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] Parsing files uses too much cpu loading
I see about 10 times that cpu usage when loading data so that is not unusual. I imagine most of your cpu is api_cpu? Index creation seems to be the main culprit so turning off indexing on properties you don't need to query on is a good start. On 19 Feb 2010, at 04:31, novarse wrote: Hello, I'm trying to get data from csv files into my datastore tables. My app is showing cpu loadings of 30356ms 20023cpu_ms 11480api_cpu_ms from the dash board and I was wondering if someone could see how I could improve this situation. I'm pretty new to Java. sample line from file: -470,16/12/2008 0:00:00,125 this parses the file: private void processEvents(String fileName) { try { previousLineNumber = 0; i = 1; file = new File(fileName); CSVParser shredder = new CSVParser(new FileInputStream(file)); while ((t = shredder.nextValue()) != null) { if (previousLineNumber != shredder.getLastLineNumber()) { if (previousLineNumber != 0) { // save event saveData(jdoEvent); } previousLineNumber = shredder.getLastLineNumber(); i = 1; } else i++; switch (i) { case 1: jdoEvent.setPKeyEventID(Long.parseLong(t)); break; case 2: try { Date d = processDate(t); jdoEvent.setDate(d); } catch (ParseException e) { System.out.println(e.getMessage()); } break; case 3: jdoEvent.setFKeyRaceDescription(Long.parseLong(t)); break; } } if (previousLineNumber != 0) { saveData(jdoEvent); } } catch (Exception e) { System.err.println(e.getMessage()); } } this saves the object: private J void saveData(J jdoObject) { PersistenceManager pm = PMF.get().getPersistenceManager(); try { pm.makePersistent(jdoObject); } finally { pm.close(); } } this is my data object: package com.myproj.client; import java.util.Date; import javax.jdo.annotations.IdGeneratorStrategy; import javax.jdo.annotations.IdentityType; import javax.jdo.annotations.PersistenceCapable; import javax.jdo.annotations.Persistent; import javax.jdo.annotations.PrimaryKey; import com.google.gwt.user.client.rpc.IsSerializable; @PersistenceCapable(identityType = IdentityType.APPLICATION) public class JdoEvent implements IsSerializable { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private Long pKeyEventID; @Persistent private Date date; @Persistent private Long fKeyRaceDescription; public JdoEvent() { } public void setDate(Date date) { this.date = date; } public Date getDate() { return date; } public void setPKeyEventID(Long pKeyEventID) { this.pKeyEventID = pKeyEventID; } public Long getPKeyEventID() { return pKeyEventID; } public void setFKeyRaceDescription(Long fKeyRaceDescription) { this.fKeyRaceDescription = fKeyRaceDescription; } public Long getFKeyRaceDescription() { return fKeyRaceDescription; } public String getValues() { return getPKeyEventID() + ; + getFKeyRaceDescription() + ; + getDate(); } } Thank you -- 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
Re: [appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance
It helps to have some links... please star these issues! http://code.google.com/p/googleappengine/issues/detail?id=2806 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186 This problem is a really big deal, several features of my app depend on reverse geocodes. It looks like a simple whitelisting issue, shouldn't be too hard to fix! Jeff On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote: Same problem here. No problems for 4 months with unchanged mapping code and as of the last day mostly 620 results. I am running on the python appengine but as previously said this is probably an issue with the geocoder IP limit. On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote: ive entered this is a bug on the maps api bug tracker. ive tried on 2 google apps accounts and ive asked others to confirm. it looks like geocoding is impossible from google apps servers. On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote: At least now I can be certain that it's not a problem with my code. I can only hope that Google can fix this problem ASAP, as my application is absolutely useless without a working geocoder. On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote: I'm also seeing 620 errors for most (possibly all) of my reverse geocode requests. Jeff -- 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-j...@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-j...@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] Re: Google maps geocoder responds with 620 error since last nights server maintenance
Hey guys, I just wanted to let everyone know that I'm working on this. Stay tuned. I'll post to this thread when I have updates. On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.orgwrote: It helps to have some links... please star these issues! http://code.google.com/p/googleappengine/issues/detail?id=2806 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186 This problem is a really big deal, several features of my app depend on reverse geocodes. It looks like a simple whitelisting issue, shouldn't be too hard to fix! Jeff On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote: Same problem here. No problems for 4 months with unchanged mapping code and as of the last day mostly 620 results. I am running on the python appengine but as previously said this is probably an issue with the geocoder IP limit. On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote: ive entered this is a bug on the maps api bug tracker. ive tried on 2 google apps accounts and ive asked others to confirm. it looks like geocoding is impossible from google apps servers. On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote: At least now I can be certain that it's not a problem with my code. I can only hope that Google can fix this problem ASAP, as my application is absolutely useless without a working geocoder. On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote: I'm also seeing 620 errors for most (possibly all) of my reverse geocode requests. Jeff -- 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-j...@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-j...@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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- 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-j...@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] Re: Google maps geocoder responds with 620 error since last nights server maintenance
I think there's a version in the main group. I'll post to that one first if it exists. On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote: Hey guys, I just wanted to let everyone know that I'm working on this. Stay tuned. I'll post to this thread when I have updates. On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.orgwrote: It helps to have some links... please star these issues! http://code.google.com/p/googleappengine/issues/detail?id=2806 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186 This problem is a really big deal, several features of my app depend on reverse geocodes. It looks like a simple whitelisting issue, shouldn't be too hard to fix! Jeff On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote: Same problem here. No problems for 4 months with unchanged mapping code and as of the last day mostly 620 results. I am running on the python appengine but as previously said this is probably an issue with the geocoder IP limit. On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote: ive entered this is a bug on the maps api bug tracker. ive tried on 2 google apps accounts and ive asked others to confirm. it looks like geocoding is impossible from google apps servers. On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote: At least now I can be certain that it's not a problem with my code. I can only hope that Google can fix this problem ASAP, as my application is absolutely useless without a working geocoder. On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote: I'm also seeing 620 errors for most (possibly all) of my reverse geocode requests. Jeff -- 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-j...@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-j...@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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- 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-j...@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] Using GAE Platform Outside of Google
There is this: http://appscale.cs.ucsb.edu/ http://code.google.com/p/appscale/ I have no idea how mature or stable it is. Jeff On Thu, Feb 18, 2010 at 2:58 PM, Greg Marine gregmar...@iccnet.org wrote: Hello All! I am evaluating GAE/Java for some of my projects and came across a scenario I can't seem to find any information on. I am porting an application I would normally have available through GAE, but have a client who wants to keep everything housed onsite. I'm assuming the development server would not be appropriate for such an implementation. So, is there a version of GAE available to install on a server in such an environment or can the GAE classes be used in another servlet container such as Tomcat? This would also be the case if someone were to want to use the software offline using localhost. I understand this isn't exactly an ideal scenario. However, I thought I would at least ask. Thank you, Greg -- 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-j...@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-j...@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: App Engine and Spring slow start up
I believe my development environment was on 1.3.0. That might be something to look at, although it seems that probably it's a very small overhead, do you have any metrics that would give some evidence as to how much overhead is offline precompilation adding? Thanks On Feb 18, 2:04 pm, Don Schwarz schwa...@google.com wrote: Have you deployed your application with the 1.3.1 SDK? That release turned on offline precompilation by default, which is an optimization that may help. On Thu, Feb 18, 2010 at 7:59 AM, Alex chasov...@gmail.com wrote: Hi, It appeared that long init problem is well known for Grails users: http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 I wasted couple of weeks to create app I cannot run. Hope that SpringSource and Google can solve the issue. On Feb 17, 7:41 pm, Stephan Hartmann hartm...@metamesh.de wrote: The problem is that the initialization of your app takes longer than 30 seconds. Pinging your app doesn't help when the app is restarted due to redeployment or maintenance, or when high traffic demands a second instance. You should try to reduce your startup time. regards, Stephan 2010/2/17 luijar luis.j.aten...@gmail.com Great, all of our projects are Spring enabled lol. But I guess it's good that we are not the only ones seeing this, hopefully it gets a little more visibility. We have a cron job (1 min) that tries to keep our application alive by hitting a URL, but it does not do a very good job. It's frustrating and we don't even have access to the 500 page to tell the user to retry or go somewhere else. On Feb 17, 11:21 am, oth other...@gmail.com wrote: Yes we have seen this problem a lot. Per our tests, an application becomes idle after a minute of non activity. So, the unfortunate reality is that you need to keep your app alive by simulating activity on it. Or go the non Spring route. Thanks On Feb 16, 4:14 pm, luijar luis.j.aten...@gmail.com wrote: Hello Google App Engine forum, We have been seeing ever since we deployed our applications (currently 3 of them) that when our application instances become idle (they have not been hit for x amount of seconds) subsequent requests return with a 500 response. Logs show a hard deadline exceeded error com.google.apphosting.runtime.HardDeadlineExceededError: This request (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was still executing at 2010/02/12 20:39:41.225 UTC. at com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java) And the first line of the log message has the following : 02-12 12:39PM 14.088 javax.servlet.ServletContext log: Initializing Spring root WebApplicationContext Question: Has anyone else seen this behavior? How long does it take for an application instance to become idle? 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-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%252bunsubscr...@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-j...@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-j...@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: Google Apps Support in GAE
I use http://code.google.com/p/gdata-java-client/ On Feb 19, 5:16 pm, g3 insight insigh...@gmail.com wrote: I want to provide Google Apps search and document upload service in my GAE application. Is there any API/Service can support this function in GAE application? -- 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-j...@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] Re: Google maps geocoder responds with 620 error since last nights server maintenance
The configuration changes have been made and should be live shortly if not immediately. Can you check and let me know if they are working? I'd give it about ~30 minutes if it doesn't work right away. On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote: I think there's a version in the main group. I'll post to that one first if it exists. On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.comwrote: Hey guys, I just wanted to let everyone know that I'm working on this. Stay tuned. I'll post to this thread when I have updates. On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.orgwrote: It helps to have some links... please star these issues! http://code.google.com/p/googleappengine/issues/detail?id=2806 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186 This problem is a really big deal, several features of my app depend on reverse geocodes. It looks like a simple whitelisting issue, shouldn't be too hard to fix! Jeff On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote: Same problem here. No problems for 4 months with unchanged mapping code and as of the last day mostly 620 results. I am running on the python appengine but as previously said this is probably an issue with the geocoder IP limit. On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote: ive entered this is a bug on the maps api bug tracker. ive tried on 2 google apps accounts and ive asked others to confirm. it looks like geocoding is impossible from google apps servers. On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote: At least now I can be certain that it's not a problem with my code. I can only hope that Google can fix this problem ASAP, as my application is absolutely useless without a working geocoder. On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote: I'm also seeing 620 errors for most (possibly all) of my reverse geocode requests. Jeff -- 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-j...@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-j...@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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- 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-j...@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] Re: Compass on Google App Engine
i have a blog with compass on GAE, and i implement the searchable function here.. http://hapeblog.appspot.com/ On Thu, Feb 18, 2010 at 2:11 AM, a.maza andr.m...@gmail.com wrote: did you experience the problems in production environment or already in the development environment? May the indexing problem be avoided when using task queues? what do you think? On 17 Feb., 18:30, Raphael André Bauer raphael.andre.ba...@gmail.com wrote: On Wed, Feb 17, 2010 at 3:42 PM, John Patterson jdpatter...@gmail.com wrote: I thought I read somewhere on this list that compass and lucene cannot perform well on the datastore due to the number of index segments that need to be read for every query? i could not get it up and running one month ago with a large datset. i know the compass people are working hard to resolve issues with the gae, but i doubt (technically) that lucene is able to run properly on the app engine datastore (please correct me). it might, however, run well with a smaller dataset (100megs, offline indexing, and/or using an index file in the war folder)... ra! On 17 Feb 2010, at 21:23, a.maza wrote: checkout the latest source from compass. The last commit removes the Referencable interface. On 17 Feb., 14:36, Raphael André Bauer raphael.andre.ba...@gmail.com wrote: On Tue, Feb 16, 2010 at 8:15 AM, yonny yon...@googlemail.com wrote: Hello Folks, I think deploying a compass app on gae is not possible because the core compass interface extends javax.naming.Referenceable which is not on google's whitelist.I encoutered a similar problem when I call buildCompass() It throws a NoClassDefFoundError on org.compass.core.impl.DefaultCompass Any thoughts?? anyone? follow this one:http://www.kimchy.org/searchable-google-appengine-with-compass/ ra -- 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-j...@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 athttp://groups.google.com/group/google-appengine-java?hl=en.- Zitierten Text ausblenden - - Zitierten Text anzeigen - -- 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-j...@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-j...@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.- Zitierten Text ausblenden - - Zitierten Text anzeigen - -- 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-j...@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. -- dream or truth -- 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-j...@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] Problem whit upload form multipart
maybe this will be helpful http://hapeblog.appspot.com/blog.shtml?id=2002 On Wed, Feb 17, 2010 at 1:01 PM, John Patterson jdpatter...@gmail.comwrote: Do you have a different version of the jar in your lib directory to the one on your build path? On 17 Feb 2010, at 09:11, NIko Judo wrote: Hola he probado el codigo siguiente para recibir un formulario multipart en mi aplicacion : Test folowing code import org.apache.commons.fileupload.FileItemStream; import org.apache.commons.fileupload.FileItemIterator; import org.apache.commons.fileupload.servlet.ServletFileUpload; import java.io.InputStream; import java.io.IOException; import java.util.logging.Logger; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class FileUpload extends HttpServlet { private static final Logger log = Logger.getLogger(FileUpload.class.getName()); public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { try { ServletFileUpload upload = new ServletFileUpload(); res.setContentType(text/plain); FileItemIterator iterator = upload.getItemIterator(req); while (iterator.hasNext()) { FileItemStream item = iterator.next(); InputStream stream = item.openStream(); if (item.isFormField()) { log.warning(Got a form field: + item.getFieldName()); } else { log.warning(Got an uploaded file: + item.getFieldName() + , name = + item.getName()); // You now have the filename (item.getName() and the // contents (which you can read from stream). Here we just // print them back out to the servlet output stream, but you // will probably want to do something more interesting (for // example, wrap them in a Blob and commit them to the // datastore). int len; byte[] buffer = new byte[8192]; while ((len = stream.read(buffer, 0, buffer.length)) != -1) { res.getOutputStream().write(buffer, 0, len); } } } } catch (Exception ex) { throw new ServletException(ex); } } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } el caso es que simpre me da un error cuando envio el formulario con image folowing error : Error for /FileUpload java.lang.NoSuchMethodError: org.apache.commons.fileupload.servlet.ServletFileUpload.getItemIterator(Ljavax/ servlet/http/HttpServletRequest;)Lorg/apache/commons/fileupload/ FileItemIterator; at com.ubicacion.servlet.FileUpload.doPost(FileUpload.java:32) at javax.servlet.http.HttpServlet.service(HttpServlet.java:713) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 487) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1093) at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java: 97) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java: 35) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 712) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 405) at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java: 238) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 139) at org.mortbay.jetty.Server.handle(Server.java:313) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 506) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:830) at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java: 76) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java: 135)
Re: [appengine-java] log4j init fails
I think you can simply put the log4j.properties file in the WEB-INF/classes dir and you don't need any appengine-web.xml stuff for it. Log4j looks for its configuration file on the classpath which means it looks in WEB-INF/classes (and also in all of the jars in the lib directory). AJ Chen wrote: I have log4j config in appengine-web.xml, system-properties property name=java.util.logging.config.file value=WEB-INF/logging.properties/ property name=log4j.configuration value=file:WEB-INF/classes/log4j.properties/ property name=monitor.config.file value=WEB-INF/monitor.properties/ /system-properties but GAE still complains about it: log4j:WARN No appenders could be found for logger (DataNucleus.Connection). log4j:WARN Please initialize the log4j system properly. Is there anything else that should be set? thanks, -aj -- 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-j...@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. -- 0x2B | ~0x2b -- Hamlet -- 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-j...@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] Re: Google maps geocoder responds with 620 error since last nights server maintenance
It doesn't seem to be working. Not only am I still seeing a ton of 620s, but half the time I'm also getting something that doesn't parse as JSON. It contains an unexpected ''. I'm guessing it's some sort of error message getting rendered in html or xml. org.codehaus.jackson.JsonParseException: Unexpected character ('' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null') at [Source: java.io.bytearrayinputstr...@908faf; line: 1, column: 2] When I try the same URL from my desktop, it works fine. Jeff On Fri, Feb 19, 2010 at 2:16 PM, Ikai L (Google) ika...@google.com wrote: The configuration changes have been made and should be live shortly if not immediately. Can you check and let me know if they are working? I'd give it about ~30 minutes if it doesn't work right away. On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote: I think there's a version in the main group. I'll post to that one first if it exists. On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote: Hey guys, I just wanted to let everyone know that I'm working on this. Stay tuned. I'll post to this thread when I have updates. On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.org wrote: It helps to have some links... please star these issues! http://code.google.com/p/googleappengine/issues/detail?id=2806 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186 This problem is a really big deal, several features of my app depend on reverse geocodes. It looks like a simple whitelisting issue, shouldn't be too hard to fix! Jeff On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote: Same problem here. No problems for 4 months with unchanged mapping code and as of the last day mostly 620 results. I am running on the python appengine but as previously said this is probably an issue with the geocoder IP limit. On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote: ive entered this is a bug on the maps api bug tracker. ive tried on 2 google apps accounts and ive asked others to confirm. it looks like geocoding is impossible from google apps servers. On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote: At least now I can be certain that it's not a problem with my code. I can only hope that Google can fix this problem ASAP, as my application is absolutely useless without a working geocoder. On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote: I'm also seeing 620 errors for most (possibly all) of my reverse geocode requests. Jeff -- 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-j...@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-j...@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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/app_engine -- 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-j...@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-j...@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: Parsing files uses too much cpu loading
Create a task (for the task queue) - we'll call it SomeTaskServlet that imports a section of the file between two line numbers that are passed into it. In this task above, here's what you'd do: 1. count how many lines are in the file - let's say 105 2. divide that by ten (make sure to handle the remainder!!) 3. kick off/queue 10 SomeTaskServlet tasks: - lines 1-10 - lines 11-20 - lines 21-30 ... - lines 100-105 4. Make sure that your queued task is idempotent (http:// en.wikipedia.org/wiki/Idempotence), and to throw an exception if there's a problem. That way, the queue processor will retry it on error, and you'll never have to worry about a thing. The one big gotcha is that you really should know how many records you have to process up front, or you'll have a hard time knowing when to stop chunking. This is tough when you're dealing with databases in App Engine, because (afaik), you can't SELECT COUNT(*), but you're working with a file. Simple! If that file grows, and you wanna make sure you're scalable, then the SomeTaskServlet handles a max number of lines - say 10. If the range that was passed into it is larger than 10, then queue off the work that it was given into 10 batches back to another instance of itself. By the time you have a small enough batch, you'll have a chunk of data that you can process in 1/10 second. I'd recommend giving this task its own queue so you can throttle it so that you don't eat up your dynamic concurrent thread count (or whatever they call that). Reply whether this makes sense. I just did this to import 5,000 records from another system via REST. The first several rounds keep forking off more and more threads to chunk the data down into smaller bits. At the end, each of the hundreds of threads has SUCH a small job to do, you can throttle it, and they retry themselves on error. - Blake On Feb 18, 4:31 pm, novarse stephenmwi...@gmail.com wrote: Hello, I'm trying to get data from csv files into my datastore tables. My app is showing cpu loadings of 30356ms 20023cpu_ms 11480api_cpu_ms from the dash board and I was wondering if someone could see how I could improve this situation. I'm pretty new to Java. sample line from file: -470,16/12/2008 0:00:00,125 this parses the file: private void processEvents(String fileName) { try { previousLineNumber = 0; i = 1; file = new File(fileName); CSVParser shredder = new CSVParser(new FileInputStream(file)); while ((t = shredder.nextValue()) != null) { if (previousLineNumber != shredder.getLastLineNumber()) { if (previousLineNumber != 0) { // save event saveData(jdoEvent); } previousLineNumber = shredder.getLastLineNumber(); i = 1; } else i++; switch (i) { case 1: jdoEvent.setPKeyEventID(Long.parseLong(t)); break; case 2: try { Date d = processDate(t); jdoEvent.setDate(d); } catch (ParseException e) { System.out.println(e.getMessage()); } break; case 3: jdoEvent.setFKeyRaceDescription(Long.parseLong(t)); break; } } if (previousLineNumber != 0) { saveData(jdoEvent); } } catch (Exception e) { System.err.println(e.getMessage()); } } this saves the object: private J void saveData(J jdoObject) { PersistenceManager pm = PMF.get().getPersistenceManager(); try { pm.makePersistent(jdoObject); } finally { pm.close(); } } this is my data object: package com.myproj.client; import java.util.Date; import javax.jdo.annotations.IdGeneratorStrategy; import javax.jdo.annotations.IdentityType; import javax.jdo.annotations.PersistenceCapable; import javax.jdo.annotations.Persistent; import
[appengine-java] Re: Using GAE Platform Outside of Google
Thanks Jeff! I'll have a look at this. I really appreciate it! Greg On Feb 19, 1:59 pm, Jeff Schnitzer j...@infohazard.org wrote: There is this: http://appscale.cs.ucsb.edu/http://code.google.com/p/appscale/ I have no idea how mature or stable it is. JeffOn Thu, Feb 18, 2010 at 2:58 PM, Greg Marine gregmar...@iccnet.org wrote: Hello All! I am evaluating GAE/Java for some of my projects and came across a scenario I can't seem to find any information on. I am porting an application I would normally have available through GAE, but have a client who wants to keep everything housed onsite. I'm assuming the development server would not be appropriate for such an implementation. So, is there a version of GAE available to install on a server in such an environment or can the GAE classes be used in another servlet container such as Tomcat? This would also be the case if someone were to want to use the software offline using localhost. I understand this isn't exactly an ideal scenario. However, I thought I would at least ask. Thank you, Greg -- 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-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group athttp://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-j...@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] Null Pointer Exception at the time of transaction commit.
Thanks, But i'm not getting wat are u saying so can u plz explain clearly... -- 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-j...@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: What CPU times should I expect in the logs?
Thanks John. I did do that, but after reading the documentation, it seems that if you query for 10 objects with || key=='abc' || key=='def' || key=='ghi', then it'll actually perform 10 queries under the hood. I'm noticing a lot of slow-down in my app from these GAE exceptions that I think are due to my app starting up in new JVMs. That might be part of the problem. The other part is that my entities were a little screwy. I flattened the children into the parent since there's always three children, and each child only has a couple properties. That helped. After that, I implemented caching, which makes it scream now. I'm caching the display DTOs rather than the entities, because just building the DTOs was taking about 250 cpu ms. So, with *nothing* in cache, my original takes 2 cpu seconds, 1 api second. With the supporting entities in cache, it comes down to 800ms/ 500ms. After cleaning up my query and the entities as mentioned above, I brought that down to 500ms/200. And then, after caching the objects I'm querying for here, I'm down to 50-90 cpu ms with no API ms. Okay, as I was finishing this post, I hit the app a few more times... It's funny/frustrating how sporadic the system is. Sometimes the optimized path still takes up to 7 seconds, just to pull from cache!!! A few more refreshes and it's back down to 55 cpu ms and no api ms. Oh well, I guess this is just the nature of the beast. Some users are going to have pages take a few seconds to load at times, but at least I know that if I had to scale this up, it would still work, right? :) On Feb 19, 1:36 pm, John Patterson jdpatter...@gmail.com wrote: You could try to batch the get of your ObjectBeingFollowed entities so you only do two gets. Is most of your cpu time api_cpu? On 19 Feb 2010, at 12:29, Blake wrote: I'm relatively new to GAE. My queries so far have for single entities with owned relationships, queried by key, which has been great - no orange or red screaming in my logs. More recently, I've been working on a simple page that does this: 1. get a list of 10 of the user's Following entities - each contain a key to an object the user is following, and some extra metadata about the relationship 2. get each of the ObjectBeingFollowed entities by key in the Following entity Easy enough to get working, but the logs are screaming at me with CPU times up around 0.5-1.0 seconds. Is this just what to expect? Do you guys have pages that always return red or orange log messages? 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 athttp://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-j...@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.
[google-appengine] Re: how to upgrade my sdk from 1.3.0 to 1.3.1 in eclipse
For some reason, I also continue to get this warning from my Eclipse. I have run the upgrade via the normal Eclipse software update, and it claims I have the latest 1.3.1 version. However, I still see the following notice when I start up the embedded server via Eclipse: There is a new version of the SDK available. --- Latest SDK: Release: 1.3.1 Timestamp: Mon Feb 08 13:00:41 HST 2010 API versions: [1.0] --- Your SDK: Release: 1.3.0 Timestamp: Mon Dec 14 08:47:37 HST 2009 API versions: [1.0] --- Please visit http://code.google.com/appengine for the latest SDK. On Feb 18, 12:46 pm, Ikai L (Google) ika...@google.com wrote: The SDK update works for me. SDK 1.3.1 is available. Can you check again? On Tue, Feb 16, 2010 at 1:01 PM, Warren Goldman warren.gold...@gmail.comwrote: Receiving this message when debugging my google app in eclipse; There is a new version of the SDK available. --- Latest SDK: Release: 1.3.1 Timestamp: Mon Feb 08 17:00:41 CST 2010 API versions: [1.0] --- Your SDK: Release: 1.3.0 Timestamp: Mon Dec 14 12:47:37 CST 2009 API versions: [1.0] --- Please visithttp://code.google.com/appenginefor the latest SDK. Not sure what to do about this. Using this update url in eclipse (galileo 3.5); http://dl.google.com/eclipse/plugin/3.5(doing update has no affect) The download of the sdk for 1.3.1 (http:// googleappengine.googlecode.com/files/appengine-java-sdk-1.3.1.zip) is quite different that 1.3.0 folder structure in eclipse has folder com.google.appengine.eclipse.sdkbundle. 1.3.0_1.3.0.v200912141120 in plugins dir. any help is 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.comgoogle-appengine%2Bunsubscrib e...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Enginehttp://googleappengine.blogspot.com|http://twitter.com/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 upgrade my sdk from 1.3.0 to 1.3.1 in eclipse
Try manually uninstalling all your google plugins. If you are using Galileo (as it sounds like you are because you mentioned the 3.5 plugin repository), then you can use this link: http://eclipse.dzone.com/articles/ten-tips-installing-plugins which helps you uninstall plugins. Then, reinstall the Google plugins as normal. On Feb 16, 11:01 am, Warren Goldman warren.gold...@gmail.com wrote: Receiving this message when debugging my google app in eclipse; There is a new version of the SDK available. --- Latest SDK: Release: 1.3.1 Timestamp: Mon Feb 08 17:00:41 CST 2010 API versions: [1.0] --- Your SDK: Release: 1.3.0 Timestamp: Mon Dec 14 12:47:37 CST 2009 API versions: [1.0] --- Please visithttp://code.google.com/appenginefor the latest SDK. Not sure what to do about this. Using this update url in eclipse (galileo 3.5);http://dl.google.com/eclipse/plugin/3.5(doing update has no affect) The download of the sdk for 1.3.1 (http:// googleappengine.googlecode.com/files/appengine-java-sdk-1.3.1.zip) is quite different that 1.3.0 folder structure in eclipse has folder com.google.appengine.eclipse.sdkbundle. 1.3.0_1.3.0.v200912141120 in plugins dir. any help is 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: how to upgrade my sdk from 1.3.0 to 1.3.1 in eclipse
So I tried what I said, and I'm not in any better shape. I uninstalled all the google plugins, restarted, and then reinstalled the google plugins (gwt, appengine). Now when I try to start my webapp from within Eclipse, I get this error: Error occurred during initialization of VM agent library failed to init: instrument Error opening zip file or JAR manifest missing : /Users/sethladd/ eclipse/plugins/com.google.appengine.eclipse.sdkbundle. 1.3.0_1.3.0.v200912141120/appengine-java-sdk-1.3.0/lib/agent/appengine- agent.jar Not sure why it's trying to reference 1.3.0 Might have to uninstall Eclipse and try a completely fresh install. On Feb 18, 10:24 pm, Seth sethl...@gmail.com wrote: Try manually uninstalling all your google plugins. If you are using Galileo (as it sounds like you are because you mentioned the 3.5 plugin repository), then you can use this link: http://eclipse.dzone.com/articles/ten-tips-installing-plugins which helps you uninstall plugins. Then, reinstall the Google plugins as normal. On Feb 16, 11:01 am, Warren Goldman warren.gold...@gmail.com wrote: Receiving this message when debugging my google app in eclipse; There is a new version of the SDK available. --- Latest SDK: Release: 1.3.1 Timestamp: Mon Feb 08 17:00:41 CST 2010 API versions: [1.0] --- Your SDK: Release: 1.3.0 Timestamp: Mon Dec 14 12:47:37 CST 2009 API versions: [1.0] --- Please visithttp://code.google.com/appengineforthe latest SDK. Not sure what to do about this. Using this update url in eclipse (galileo 3.5);http://dl.google.com/eclipse/plugin/3.5(doingupdate has no affect) The download of the sdk for 1.3.1 (http:// googleappengine.googlecode.com/files/appengine-java-sdk-1.3.1.zip) is quite different that 1.3.0 folder structure in eclipse has folder com.google.appengine.eclipse.sdkbundle. 1.3.0_1.3.0.v200912141120 in plugins dir. any help is 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.
Re: [google-appengine] GAE/J Low Level API Transaction management.
I had that suspicion, but, I wasn't 100% sure. I wonder if it's an issue that shows up in production or just local datastore. Pat. On Thu, Feb 18, 2010 at 1:34 PM, Jeff Schnitzer j...@infohazard.org wrote: I just created a unit test for this case (there wasn't one before) and sure enough, it fails. Looks like a bug in appengine. Create an issue, I'll star it. The failing unit test is the last one in this file: http://code.google.com/p/objectify-appengine/source/browse/trunk/src/com/googlecode/ob jectify/test/QueryTests.java FWIW, our implementation is the ancestor() method: http://code.google.com/p/objectify-appengine/source/browse/trunk/src/com/googlecode/objectify/impl/QueryImpl.java Javadocs are on the interface class: http://objectify-appengine.googlecode.com/svn/trunk/javadoc/com/googlecode/objectify/Query.html Jeff On Thu, Feb 18, 2010 at 11:22 AM, Patrick Twohig patr...@namazustudios.com wrote: Duly noted. However, I'm not about to rewrite a bulk of my code over a single issue I'm having. At the time I started this, I hadn't realized Objectify existed and tried using JDO which turned out to be a gigantic nightmare, so I slimmed it down and wrote my own wrapper similar to Objectify. Right now the only pressing issue is that ancestor queries aren't working as expected and it's driving me nuts. Could you perhaps point me to some source in Objectify that executes an ancestor query that I may be able to see? On Wed, Feb 17, 2010 at 10:05 PM, Jeff Schnitzer j...@infohazard.org wrote: The documentation I wrote up here might help: http://code.google.com/p/objectify-appengine/wiki/Concepts You might consider using something like Objectify (or Twig, or SimpleDS, etc) instead of the Low-Level API. Jeff On Wed, Feb 17, 2010 at 9:23 PM, Patrick Twohig patr...@namazustudios.com wrote: Aside from the Javadocs, does there exist any further documentation on the GAE/J low-level API. I've had a handfull of issues with it so far and I'm at a bit of a loss. I'm having trouble with ancestor queries. Specifically, I'm not getting any child entities when I look for objects with no kind specified and just an ancestor. However, the equivalent code in python performs as expected. I was also curious how GAE/J organizes transactions. From what I gather in the documentation, each transaction is organized in a ThreadLocal stack. Every time you call DatastoreService.beginTransaction() it creates a new transaction, pushes it on the thread local stack then when it's done, it's popped of. I was curious if it may be possible to add a method that can provide the current transaction given a particular key somehow. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You 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. -- You 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. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You 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. -- You 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. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You 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] indexes in building state for quite a while ...
Hi, I updated set of indexes and it was in building state for more than one and half days now. I tried to use vacuum_indexes but it didn't solve the problem.. Any help guys.. My app id is os247test -- You 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 maps usage
The only thing you can do to address your problem is through some kind of ajax, which is quite feasible if you have to plot your values once a minute or so. Happy coding ;) Nick On Feb 18, 12:25 pm, Avis developer sivaram.subb...@gmail.com wrote: I need to develop a application which uses a GPS mobile to get the latitude and longitude coordinates of a person and plot in Google maps. I will be using google AppEngine to deploy the site, so i will be using datastore provided by GAE. I need to know how to plot the values in maps asynchronously , i.e as the value in the datastore changes,without the user requesting again and again through the browser, it needs to be updated asynchronously like cricinfo does for updating scores . What event should i use to the above cause.. Am a beginner in programming, so pls consider my level n help me.. thanks for the reply 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: pygooglechart
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.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Error 500 on Datastore Viewer
In the last couple of hours every time I try to access the Datastore Viewer or the Datastore Statistics I get always the error 500. Someone could help me? Thx. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-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.
Re: [google-appengine] Re: pygooglechart
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%2bunsubscr...@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: Strange traffic Charts after the last maintenance
I can also confirm that the problem is fixed. On Feb 19, 4:12 am, gwstuff gwsa...@gmail.com wrote: OK. The request chat in my dashboard just spiked into the normal range:http://corewars.org/spike.png. Looks like this problem is fixed. On Feb 18, 8:51 pm, gwstuff gwsa...@gmail.com wrote: Confirmed. My request/second rate has changed from 1.5-2.5 to 0.5-1.0 on an average. I chart my request data separately and can see that the load is the same as before, so this has something to do with the calculation. Sapan On Feb 18, 3:05 pm, matic mytix.m...@gmail.com wrote: After the last GAE maintenance yesterday, our traffic (req/sec) lowered dramatically and all the charts (req/sec, milisec/req, errors/ sec) are very strange:http://img.skitch.com/20100218-bqfa4pdhgefyf6hir8e3swbwq7.jpg Is this just a charts problem or is something seriously 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-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] Model class of a Query instance?
Is there an official way to get the Model class from a Query instance? I had a look through the online docs and couldn't find anything. In the SDK code however, the Model class of a Query instance can be retrieved from the _model_class attribute of the Query instance, eg: q = MyModel.all() model_class = q._model_class # == MyModel I don't really want to do it this way because since this is not documented anywhere, I'm afraid that this implementation may change in the future. -- You 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.
Re: [google-appengine] Re: Question on key design: Datastore errors and tablets
On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote: What about keynames like: counter_standard_dbf counter_standard_clo or would something like dbfo01la_counter_standard clo091b_counter_standard work better? I'm thinking of cases where you may use keynames that can in some way be constructed/predicted for fast access later. like..username_counter_standard Would the common pre-fix or post-fix make for close distribution? :| Either one will work fine - Bigtable will split tablets based on key to ensure no tablet gets too big. Long identical prefixes just mean that the split will be based on later characters in the string. What's important for key distribution for really high update rates is the distribution of key names/IDs for those updates: If they all go to a single tablet (eg, they make up a small proportion of the total range of IDs you're employing), they will be limited by what that tablet server can support. If they are widely spread out within the range you're using, regardless of what that range is, you'll be fine. -Nick Johnson On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Eli, Using a randomly generated ID like a uuid is perfectly satisfactory to achieve an even distribution. On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote: I understand the process of evenly distributing IDs since they are Integer values.. is there a canonized appengine way to evenly distribute key_names? Just make sure key_name1 and key_name2 don't have their i-th letters too close too eachother? How far is far enough? Does doing even distribution matter if you aren't using auto-generated IDs? It certainly can - if you insert, in order, , aaab, aaac, etc, you'll encounter the same problem at very high volumes as you'd see with auto generated IDs. -Nick Johnson Thanks for information. On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) nick.john...@google.com wrote: Hi Ulrich, On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com wrote: Hi, I have read the following Timeouts due to datastore issues --- [...] The most common example of this occurs when you are rapidly inserting a large number of entities of the same kind, with auto-generated IDs. In this case, most inserts hit the same range of the same tablet, and the single tablet server is overwhelmed with writes. [...] If this does affect your app, the easiest solution is to use more evenly distributed IDs instead of the auto-allocated ones [...] ( http://code.google.com/appengine/articles/handling_datastore_errors.html ) Let's say I am having a model Parent and a model Child. For Parent entities, I use key names that are evenly distributed. For Child entities, I use auto-generated key IDs and _no_ key names, but all Child entities are children of Parent entities, so the paths to the children contain the evenly distributes key names of the parents. If I have many write operations on children that are in the same entity group, the described error could occur. But what happens if my write operations are on children that are in different entity groups? Their IDs are auto-generated and not evenly distributed, but their paths contain the evenly distributed key names. Good question! The point being made in the article refers to the global distribution of the complete key, so writes to these children will be well distributed, and you won't have to worry about this source of contention. -Nick Johnson -- You 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.comgoogle-appengine%2Bunsubscrib e...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib e...@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: MMS to Email Gateway failures
This is still not working. I may also point out that when I do get emails that are sent from app engine, to me phone as SMS, they are from a huge string, like so: 3- yf9swuod0qgjsotigskxxoloi.iusjkxxoiq.yosvyutmsgor@apphosting.bounces.google.com Therefore, I think this is something that Google needs to fix, including fixing SPF records (or whatever). It would be nice if the email actually appeared to be from who's sending it. - Derrick On Feb 17, 10:25 pm, Andrew Chilton andychil...@gmail.com wrote: Hi Derrick, On 18 February 2010 10:20, A1programmer derrick.simp...@gmail.com wrote: [snip] Does anyone have any idea why this may be, or can offer suggestions? As it looks now, if I can get this to work nicely on another platform, I'm going to have to move my stuff off of my GAE (paid account). Might this help?http://www.google.com/support/a/bin/answer.py?hl=enanswer=33786 It might help it look less like spam (if indeed that is what is happening). Cheers, Andy -- contact: Andrew Chilton website:http://www.chilts.org/blog/ -- You 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: Question on key design: Datastore errors and tablets
Thanks Nick, I understand now. So I guess the easiest thing to do is to have a random component in your keynames...at least for apps I'm considering I don't think I'd have any other way to reasonably ensure the range of keynames in a given (batch) update were well distributed. On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com wrote: On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote: What about keynames like: counter_standard_dbf counter_standard_clo or would something like dbfo01la_counter_standard clo091b_counter_standard work better? I'm thinking of cases where you may use keynames that can in some way be constructed/predicted for fast access later. like..username_counter_standard Would the common pre-fix or post-fix make for close distribution? :| Either one will work fine - Bigtable will split tablets based on key to ensure no tablet gets too big. Long identical prefixes just mean that the split will be based on later characters in the string. What's important for key distribution for really high update rates is the distribution of key names/IDs for those updates: If they all go to a single tablet (eg, they make up a small proportion of the total range of IDs you're employing), they will be limited by what that tablet server can support. If they are widely spread out within the range you're using, regardless of what that range is, you'll be fine. -Nick Johnson On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Eli, Using a randomly generated ID like a uuid is perfectly satisfactory to achieve an even distribution. On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote: I understand the process of evenly distributing IDs since they are Integer values.. is there a canonized appengine way to evenly distribute key_names? Just make sure key_name1 and key_name2 don't have their i-th letters too close too eachother? How far is far enough? Does doing even distribution matter if you aren't using auto-generated IDs? It certainly can - if you insert, in order, , aaab, aaac, etc, you'll encounter the same problem at very high volumes as you'd see with auto generated IDs. -Nick Johnson Thanks for information. On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) nick.john...@google.com wrote: Hi Ulrich, On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com wrote: Hi, I have read the following Timeouts due to datastore issues --- [...] The most common example of this occurs when you are rapidly inserting a large number of entities of the same kind, with auto-generated IDs. In this case, most inserts hit the same range of the same tablet, and the single tablet server is overwhelmed with writes. [...] If this does affect your app, the easiest solution is to use more evenly distributed IDs instead of the auto-allocated ones [...] ( http://code.google.com/appengine/articles/handling_datastore_errors.html ) Let's say I am having a model Parent and a model Child. For Parent entities, I use key names that are evenly distributed. For Child entities, I use auto-generated key IDs and _no_ key names, but all Child entities are children of Parent entities, so the paths to the children contain the evenly distributes key names of the parents. If I have many write operations on children that are in the same entity group, the described error could occur. But what happens if my write operations are on children that are in different entity groups? Their IDs are auto-generated and not evenly distributed, but their paths contain the evenly distributed key names. Good question! The point being made in the article refers to the global distribution of the complete key, so writes to these children will be well distributed, and you won't have to worry about this source of contention. -Nick Johnson -- You 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.comgoogle-appengine%2Bunsubscrib e...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- 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-appeng...@googlegroups.com. To unsubscribe from this group, send email to
Re: [google-appengine] Re: Question on key design: Datastore errors and tablets
Hi Peter, On Fri, Feb 19, 2010 at 1:04 PM, peterk peter.ke...@gmail.com wrote: Thanks Nick, I understand now. So I guess the easiest thing to do is to have a random component in your keynames...at least for apps I'm considering I don't think I'd have any other way to reasonably ensure the range of keynames in a given (batch) update were well distributed. Bear in mind that you only have to even worry about this if you're expecting hundreds of QPS of inserts to the same model. If you are in this situation, hashing some stable information from your model may be sufficient to generate a well distributed key name. -Nick Johnson On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com wrote: On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote: What about keynames like: counter_standard_dbf counter_standard_clo or would something like dbfo01la_counter_standard clo091b_counter_standard work better? I'm thinking of cases where you may use keynames that can in some way be constructed/predicted for fast access later. like..username_counter_standard Would the common pre-fix or post-fix make for close distribution? :| Either one will work fine - Bigtable will split tablets based on key to ensure no tablet gets too big. Long identical prefixes just mean that the split will be based on later characters in the string. What's important for key distribution for really high update rates is the distribution of key names/IDs for those updates: If they all go to a single tablet (eg, they make up a small proportion of the total range of IDs you're employing), they will be limited by what that tablet server can support. If they are widely spread out within the range you're using, regardless of what that range is, you'll be fine. -Nick Johnson On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Eli, Using a randomly generated ID like a uuid is perfectly satisfactory to achieve an even distribution. On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote: I understand the process of evenly distributing IDs since they are Integer values.. is there a canonized appengine way to evenly distribute key_names? Just make sure key_name1 and key_name2 don't have their i-th letters too close too eachother? How far is far enough? Does doing even distribution matter if you aren't using auto-generated IDs? It certainly can - if you insert, in order, , aaab, aaac, etc, you'll encounter the same problem at very high volumes as you'd see with auto generated IDs. -Nick Johnson Thanks for information. On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) nick.john...@google.com wrote: Hi Ulrich, On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com wrote: Hi, I have read the following Timeouts due to datastore issues --- [...] The most common example of this occurs when you are rapidly inserting a large number of entities of the same kind, with auto-generated IDs. In this case, most inserts hit the same range of the same tablet, and the single tablet server is overwhelmed with writes. [...] If this does affect your app, the easiest solution is to use more evenly distributed IDs instead of the auto-allocated ones [...] ( http://code.google.com/appengine/articles/handling_datastore_errors.html ) Let's say I am having a model Parent and a model Child. For Parent entities, I use key names that are evenly distributed. For Child entities, I use auto-generated key IDs and _no_ key names, but all Child entities are children of Parent entities, so the paths to the children contain the evenly distributes key names of the parents. If I have many write operations on children that are in the same entity group, the described error could occur. But what happens if my write operations are on children that are in different entity groups? Their IDs are auto-generated and not evenly distributed, but their paths contain the evenly distributed key names. Good question! The point being made in the article refers to the global distribution of the complete key, so writes to these children will be well distributed, and you won't have to worry about this source of contention. -Nick Johnson -- You 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.comgoogle-appengine%2Bunsubscrib
[google-appengine] Error while deleting a version
My App Id is teluguobserver Presently I have 2 versions of code deployed. Version 2 and 3. When I am trying to delete the version 2, I am getting server error without any details. Server Error A server error has occurred. Please help me in deleting this version. -- You 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: Question on key design: Datastore errors and tablets
Say I did a batch update of 500 entities all of the same model...could this breach the '100s of qps' requirement that could lead to tablets getting too hot? I've seen benches (http://blog.dantup.com/pi/ bm_put_perf.png) that show 500 entities being batch put in ~4s which suggests an average put rate that might be in the 100+ per second in such a case. Or would that be 'ok'? :) I'm guessing if I were in a situation where multiple such batch updates could be occurring simultaneously or in a tight timeframe, then I'd be more likely to run into this...depending on how busy my app became, I'd possibly need to start doing that (i.e. lots of such large batch updates happening in short timeframes). On Feb 19, 1:12 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Peter, On Fri, Feb 19, 2010 at 1:04 PM, peterk peter.ke...@gmail.com wrote: Thanks Nick, I understand now. So I guess the easiest thing to do is to have a random component in your keynames...at least for apps I'm considering I don't think I'd have any other way to reasonably ensure the range of keynames in a given (batch) update were well distributed. Bear in mind that you only have to even worry about this if you're expecting hundreds of QPS of inserts to the same model. If you are in this situation, hashing some stable information from your model may be sufficient to generate a well distributed key name. -Nick Johnson On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com wrote: On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote: What about keynames like: counter_standard_dbf counter_standard_clo or would something like dbfo01la_counter_standard clo091b_counter_standard work better? I'm thinking of cases where you may use keynames that can in some way be constructed/predicted for fast access later. like..username_counter_standard Would the common pre-fix or post-fix make for close distribution? :| Either one will work fine - Bigtable will split tablets based on key to ensure no tablet gets too big. Long identical prefixes just mean that the split will be based on later characters in the string. What's important for key distribution for really high update rates is the distribution of key names/IDs for those updates: If they all go to a single tablet (eg, they make up a small proportion of the total range of IDs you're employing), they will be limited by what that tablet server can support. If they are widely spread out within the range you're using, regardless of what that range is, you'll be fine. -Nick Johnson On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Eli, Using a randomly generated ID like a uuid is perfectly satisfactory to achieve an even distribution. On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote: I understand the process of evenly distributing IDs since they are Integer values.. is there a canonized appengine way to evenly distribute key_names? Just make sure key_name1 and key_name2 don't have their i-th letters too close too eachother? How far is far enough? Does doing even distribution matter if you aren't using auto-generated IDs? It certainly can - if you insert, in order, , aaab, aaac, etc, you'll encounter the same problem at very high volumes as you'd see with auto generated IDs. -Nick Johnson Thanks for information. On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) nick.john...@google.com wrote: Hi Ulrich, On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com wrote: Hi, I have read the following Timeouts due to datastore issues --- [...] The most common example of this occurs when you are rapidly inserting a large number of entities of the same kind, with auto-generated IDs. In this case, most inserts hit the same range of the same tablet, and the single tablet server is overwhelmed with writes. [...] If this does affect your app, the easiest solution is to use more evenly distributed IDs instead of the auto-allocated ones [...] ( http://code.google.com/appengine/articles/handling_datastore_errors.html ) Let's say I am having a model Parent and a model Child. For Parent entities, I use key names that are evenly distributed. For Child entities, I use auto-generated key IDs and _no_ key names, but all Child entities are children of Parent entities, so the paths to the children contain the evenly distributes key names of the parents. If I have many write operations on children that are in the same entity group, the described error could occur. But what happens if my write operations are on children that
Re: [google-appengine] Model class of a Query instance?
Hi Nick, I have something like this: class Foo(db.Model): name = db.StringProperty() ... class Bar(db.Model): foo = db.ReferenceProperty(Foo, collection_name='bars') foo_name = db.StringProperty() class Baz(db.Model): foo = db.ReferenceProperty(Foo, collection_name='bazs') foo_name = db.StringProperty() I have added a hook in my application which calls a post_put() method on all instances that are put() into the Datastore (after they are put, obviously). In the post_put() of a Foo entity, I want to get all reverse referenced Bar and Baz entities, and update their foo_name with the Foo entity's name. However, I only need to update the Bar and Baz entities who's foo_name value != the Foo entity's name. So I could do something like: class Foo(db.Model): ... def post_put(): for collection_name in ('bars', 'bazs'): q = getattr(self, collection_name) q.filter('foo_name !=', self.name) # Fetch, then update. This works fine, except I need to add a new index each time I do this, since q has two filters, one equality (an implied filter('foo =', self)) and one inequality. Instead, I would like to get the Model class associated with each collection_name and just add one inequality filter, ie: class Foo(db.Model): ... def post_put(): for collection_name in ('bars', 'bazs'): model_class = self.get_model_class_for_collection(collection_name) q = model_class.all().filter('foo_name !=', self.name) # Fetch, then update. def get_model_class_for_collection(collection_name): q = getattr(self, collection_name) return q.model_class() # This is the Query method I want This way I do not need to create a new index each time I do this. Can you suggest a similar no-new-index way of doing this? I also thought about doing this (only get_model_class_for_collection() has changed): class Foo(db.Model): ... def post_put(): for collection_name in ('bars','bazs'): model_class = self.get_model_class_for_collection(collection_name) q = model_class.all().filter('foo_name !=', self.name) # Fetch, then update. def get_model_class_for_collection(collection_name): q = getattr(self, collection_name) entity = g.get() return entity.__class__ Forgetting about the extra Datastore get() required, the method above could cause problems when it comes to PolyModel entities, because (correct me if I am wrong) when PolyModel entities come back from the Datastore they are instances of the deepest subclass in the entity's inheritance chain, so returning entity.__class__ (in the last line above) will limit the results of the query (with the single inequality filter) to entity's of the original entity's PolyModel subclass. I hope that makes sense. Nick, I would love to get your ideas on this. Also, I'm no Python expert so if I'm overcomplicating things please let me know. Cheers, Nick On 19 February 2010 22:50, Nick Johnson (Google) nick.john...@google.comwrote: Hi Nickolas, There's no public interface for this. Why do you need to do it? -Nick Johnson On Fri, Feb 19, 2010 at 11:28 AM, Nickolas Daskalou n...@daskalou.comwrote: Is there an official way to get the Model class from a Query instance? I had a look through the online docs and couldn't find anything. In the SDK code however, the Model class of a Query instance can be retrieved from the _model_class attribute of the Query instance, eg: q = MyModel.all() model_class = q._model_class # == MyModel I don't really want to do it this way because since this is not documented anywhere, I'm afraid that this implementation may change in the future. -- You 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. -- 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-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. -- You 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
Re: [google-appengine] Problems with my AppEngine Account
Hi Ikai, i deaktivated the account in the meanwhile, but I decided to give it a further chance and re-registered today. But it's still the same: * I can create an application, but afterwards I don't see it in the apps list. eg. exclamation-iphone I already reset the IP address of my domain to point to the server, I used before. I wanted to use Google app-engine, because I wanted to have a well scaling homepage. But all in all I probably won't use it, as it is not even possible for me to upload the app.. thank you, Guido Am 17.02.2010 um 22:46 schrieb Ikai L (Google): Guido, are you still having issues with this? 2010/2/12 Guido Kämper g...@spreadshirt.net Hello, I have a serious problem with my app engine account. Seems to be related to rights management issues or login problems. I added one application without problems, I could upload it using appcfg.sh update But now I made some changes at the domain and added the application to Google Apps. First I got redirect errors, when accessing the Appengine portal - these problems somehow got solved. The app works as expected,it is now available at www.exclamation.de. But: I am not allowed to update the application with further versions. Output: 403 Forbidden You do not have permission to modify this app (app_id=u'exclam123'). And: If I add a new application, I get the message, that I don't have access to the new application, and it does not show up in the applications overview. But the count of available applications (10 at account creation) was decreased by 1. I am writing from my second email address, as the MX records of my primary email address is currently changing to google mail. Unfortunately I already wrote the group admin of this group, because I could not find any contact information for server problems. Is anyone in this group able to help me with my problems? The account is gk(at)exclamation.de Or can anyone give me a contact info of the google administration? thank you very much, Guido -- You 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 . -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/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 . ___ Teamlead IT Backend Tel.: 0341 594 00 5561 sprd.net AG Gießerstraße 27 · 04229 Leipzig · Germany Vorstand/Executive Board: Jana Eggers (Vorsitzende/CEO) Matthias Spieß Aufsichtsratsvorsitzender/ Chairman of the Supervisory Board: Lukasz Gadowski Handelsregister/Trade Register: Amtsgericht Leipzig, HRB 22478 Umsatzsteuer-IdentNummer/VAT-ID: DE 8138 7149 4 -- You 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] must i install Visual Studio for python ssl module?
for ssl module, i downloaded ssl-1.15.tar.gz from http://pypi.python.org/pypi/ssl. but it is source, no exe file. i tried to install it, message as below. D:\Python25\ssl-1.15setup.py install running install running build running build_py running build_ext building 'ssl._ssl2' extension error: Python was built with Visual Studio version 7.1, and extensions need to b e built with the same version of the compiler, but it isn't installed. where can i get a exe file or how can i install this module in other way? -- You 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.
Re: [google-appengine] Model class of a Query instance?
Hi Nickolas, On Fri, Feb 19, 2010 at 2:14 PM, Nickolas Daskalou n...@daskalou.comwrote: Hi Nick, I have something like this: class Foo(db.Model): name = db.StringProperty() ... class Bar(db.Model): foo = db.ReferenceProperty(Foo, collection_name='bars') foo_name = db.StringProperty() class Baz(db.Model): foo = db.ReferenceProperty(Foo, collection_name='bazs') foo_name = db.StringProperty() I have added a hook in my application which calls a post_put() method on all instances that are put() into the Datastore (after they are put, obviously). In the post_put() of a Foo entity, I want to get all reverse referenced Bar and Baz entities, and update their foo_name with the Foo entity's name. However, I only need to update the Bar and Baz entities who's foo_name value != the Foo entity's name. Will this be an all-or-nothing proposition? Eg, if the put of 'foo' changed the foo_name, they'll all need updating, otherwise none of them will? In that case, you'd be better off checking if it's changed, and updating them all (without the inequality filter) if it did change. So I could do something like: class Foo(db.Model): ... def post_put(): for collection_name in ('bars', 'bazs'): q = getattr(self, collection_name) q.filter('foo_name !=', self.name) # Fetch, then update. This works fine, except I need to add a new index each time I do this, since q has two filters, one equality (an implied filter('foo =', self)) and one inequality. Instead, I would like to get the Model class associated with each collection_name and just add one inequality filter, ie: class Foo(db.Model): ... def post_put(): for collection_name in ('bars', 'bazs'): model_class = self.get_model_class_for_collection(collection_name) q = model_class.all().filter('foo_name !=', self.name) # Fetch, then update. def get_model_class_for_collection(collection_name): q = getattr(self, collection_name) return q.model_class() # This is the Query method I want This way I do not need to create a new index each time I do this. The above will change every single Bar and Baz entity that doesn't match foo's entity name, though, including those that have nothing to do with the foo you modified. Can you suggest a similar no-new-index way of doing this? Depending on how many Bar and Baz entities there are per Foo, you could just drop the inequality and filter them out once they're fetched. I also thought about doing this (only get_model_class_for_collection() has changed): class Foo(db.Model): ... def post_put(): for collection_name in ('bars','bazs'): model_class = self.get_model_class_for_collection(collection_name) q = model_class.all().filter('foo_name !=', self.name) # Fetch, then update. def get_model_class_for_collection(collection_name): q = getattr(self, collection_name) entity = g.get() return entity.__class__ Given that you're already hard-coding in the list of collections, you could avoid the need for a 'get_model_class_for_collection' method by replacing the loop with: for model_class in (Bar, Baz): Forgetting about the extra Datastore get() required, the method above could cause problems when it comes to PolyModel entities, because (correct me if I am wrong) when PolyModel entities come back from the Datastore they are instances of the deepest subclass in the entity's inheritance chain, so returning entity.__class__ (in the last line above) will limit the results of the query (with the single inequality filter) to entity's of the original entity's PolyModel subclass. I hope that makes sense. Nick, I would love to get your ideas on this. Also, I'm no Python expert so if I'm overcomplicating things please let me know. Cheers, Nick On 19 February 2010 22:50, Nick Johnson (Google) nick.john...@google.comwrote: Hi Nickolas, There's no public interface for this. Why do you need to do it? -Nick Johnson On Fri, Feb 19, 2010 at 11:28 AM, Nickolas Daskalou n...@daskalou.comwrote: Is there an official way to get the Model class from a Query instance? I had a look through the online docs and couldn't find anything. In the SDK code however, the Model class of a Query instance can be retrieved from the _model_class attribute of the Query instance, eg: q = MyModel.all() model_class = q._model_class # == MyModel I don't really want to do it this way because since this is not documented anywhere, I'm afraid that this implementation may change in the future. -- You 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
Re: [google-appengine] Re: Question on key design: Datastore errors and tablets
Hi peterk, On Fri, Feb 19, 2010 at 2:02 PM, peterk peter.ke...@gmail.com wrote: Say I did a batch update of 500 entities all of the same model...could this breach the '100s of qps' requirement that could lead to tablets getting too hot? I've seen benches (http://blog.dantup.com/pi/ bm_put_perf.png) that show 500 entities being batch put in ~4s which suggests an average put rate that might be in the 100+ per second in such a case. Only if you're doing such puts at a high rate. It's the sustained rate that matters, not the instantaneous rate. -Nick Johnson Or would that be 'ok'? :) I'm guessing if I were in a situation where multiple such batch updates could be occurring simultaneously or in a tight timeframe, then I'd be more likely to run into this...depending on how busy my app became, I'd possibly need to start doing that (i.e. lots of such large batch updates happening in short timeframes). On Feb 19, 1:12 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Peter, On Fri, Feb 19, 2010 at 1:04 PM, peterk peter.ke...@gmail.com wrote: Thanks Nick, I understand now. So I guess the easiest thing to do is to have a random component in your keynames...at least for apps I'm considering I don't think I'd have any other way to reasonably ensure the range of keynames in a given (batch) update were well distributed. Bear in mind that you only have to even worry about this if you're expecting hundreds of QPS of inserts to the same model. If you are in this situation, hashing some stable information from your model may be sufficient to generate a well distributed key name. -Nick Johnson On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com wrote: On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote: What about keynames like: counter_standard_dbf counter_standard_clo or would something like dbfo01la_counter_standard clo091b_counter_standard work better? I'm thinking of cases where you may use keynames that can in some way be constructed/predicted for fast access later. like..username_counter_standard Would the common pre-fix or post-fix make for close distribution? :| Either one will work fine - Bigtable will split tablets based on key to ensure no tablet gets too big. Long identical prefixes just mean that the split will be based on later characters in the string. What's important for key distribution for really high update rates is the distribution of key names/IDs for those updates: If they all go to a single tablet (eg, they make up a small proportion of the total range of IDs you're employing), they will be limited by what that tablet server can support. If they are widely spread out within the range you're using, regardless of what that range is, you'll be fine. -Nick Johnson On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com wrote: Hi Eli, Using a randomly generated ID like a uuid is perfectly satisfactory to achieve an even distribution. On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote: I understand the process of evenly distributing IDs since they are Integer values.. is there a canonized appengine way to evenly distribute key_names? Just make sure key_name1 and key_name2 don't have their i-th letters too close too eachother? How far is far enough? Does doing even distribution matter if you aren't using auto-generated IDs? It certainly can - if you insert, in order, , aaab, aaac, etc, you'll encounter the same problem at very high volumes as you'd see with auto generated IDs. -Nick Johnson Thanks for information. On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) nick.john...@google.com wrote: Hi Ulrich, On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com wrote: Hi, I have read the following Timeouts due to datastore issues --- [...] The most common example of this occurs when you are rapidly inserting a large number of entities of the same kind, with auto-generated IDs. In this case, most inserts hit the same range of the same tablet, and the single tablet server is overwhelmed with writes. [...] If this does affect your app, the easiest solution is to use more evenly distributed IDs instead of the auto-allocated ones [...] ( http://code.google.com/appengine/articles/handling_datastore_errors.html ) Let's say I am having a model Parent and a model Child. For Parent entities, I use key names that are evenly distributed. For Child entities, I use auto-generated key
[google-appengine] Local datastore is slow once loaded up, any suggestions?
I've loaded up a local datastore with 40,000+ entries. Unfortunately, recalling any data from it at all is very slow on my fairly new Macbook Pro. Any suggestions on speeding things up, short of buying a new piece of hardware? -- You 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.
Re: [google-appengine] Local datastore is slow once loaded up, any suggestions?
Hi, Unfortunately, the App Engine SDK datastore isn't really designed for testing with such a large amount of data. You should try testing with a much smaller dataset, if that's remotely possible. -Nick Johnson On Fri, Feb 19, 2010 at 5:19 PM, obvious c...@obviousdiversion.com wrote: I've loaded up a local datastore with 40,000+ entries. Unfortunately, recalling any data from it at all is very slow on my fairly new Macbook Pro. Any suggestions on speeding things up, short of buying a new piece of hardware? -- You 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. -- 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-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.
Re: [google-appengine] Re: Lucene/Compass
I run it in my app that's on the App Engine right now, app's in staging so I have it blocked off to people not in my domain. Shay Banon has a video clip of it running on his blog, and then I submitted a patch to the compass project that prevents transactions from butting heads when writing the index to the datastore. I've seen it working with mine own two eyes, as they say. It's also listed as working in the will it play in app engine page. Unfortunately, I'm concerned about the scalability of it. It seems to take quite a while to index a single object and every so often the search index gets corrupted because a request to index an object gets shut down by a deadline exceeded exception. I try to recover by rolling back the work in progress and releasing all locks, but the request still gets terminated before that can happen. This is with 4-5 users using it just to do testing/tuning of the app. I can't imagine how it would work under any actual load. It's also using quite a bit of CPU usage. On Wed, Feb 17, 2010 at 7:21 AM, uo yon...@googlemail.com wrote: I too encountered challenges and I still cante believe anyone runs compass on gae... on close inspection of some of the core compass classes like org.compass.core.Compass implements javax.naming.referenceable which isnt in Google's whitelist. On Feb 16, 3:33 am, Patrick Twohig patr...@namazustudios.com wrote: Yeah. I know. The beta version of Compass supports GAE On Mon, Feb 15, 2010 at 1:13 AM, Tonny 12br...@gmail.com wrote: Not having access to the file system on GAE will prevent you from using the out-of-the-box Lucene Index implementations (which uses the filesystem). On Feb 13, 12:40 am, Patrick Twohig patr...@namazustudios.com wrote: I was curious if anybody is using Lucene and Compass and how well it works in the app engine. I've seen some other posts indicating that it actually manages to handle quite a bit of data, but I was curious if anybody else out there could attest to how well it works. -- You 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 google-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%252bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You 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. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You 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.
Re: [google-appengine] Protobuf Version on GAE
Hi Davide, The Protocol Buffers we use on App Engine are built using a different version of the Protocol Buffer library to the one that was open sourced. If you want to use Protocol Buffers yourself, you'll need to include the library with your app. -Nick Johnson On Thu, Feb 18, 2010 at 2:44 PM, Davide Cerbo davidece...@gmail.com wrote: Hi everyone, someone use Google Protobuf on GAE? And know what version is installed? I have deploy a project that use it and I have the follow exception: java.lang.NoSuchMethodError: com.google.protobuf.Descriptors$FileDescriptor.internalBuildGeneratedFileFrom(Ljava/lang/String;[Lcom/google/protobuf/Descriptors$FileDescriptor;Lcom/google/protobuf/Descriptors$FileDescriptor$InternalDescriptorAssigner;)V Searching around the web I've found that is a problem of version. I use version 2.2.0 while GAE doesn't use it :( I have deployed it with my WAR but it is ignored. Someone can tell me what version user GAE? Thanks in advance. Davide -- -- Davide Cerbo -- You 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. -- 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-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.
Re: [google-appengine] implementing asynchronous http in java
apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(request)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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. -- You 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] Datastore Viewer gql query problem
Hi everybody, frow a few days a simply gql query such as this one will throw an exception. SELECT * FROM Station order by synced Synced it's just a not null timestamp field. Since it's happening in the admin panel I don't have any log explaining why it's not working anymore. https://appengine.google.com/datastore/explorer?submitted=1app_id=prezzi-benzinaviewby=gqlkind=Stationquery=SELECT+*+FROM+Station+order+by+synced Stefano -- You 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] problem with working on google app engine
i have installed my google app engine and did a program of hello world,but while i am making changes on this during run time no changes is reflected and i am getting the same output as previous..please help me out -- You 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] Documentation contribution
I'd like to add an important detail to http://code.google.com/appengine/docs/java/config/cron.html How can I do it? I haven't found any accessible SVN/Wiki version of this page. -- You 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] Datastore Statistics page not updating (over 3 days now)
Is there a backlog on getting Datastore Statistics calculated? When I go to the Datastore Statistics page for my application, it indicates that Last Updated = 3 days, 3:35:42 ago Which is accurate since there are no stats for entities or Models created since then. Is anyone else having this issue or am I the only lucky one? IF this is not related to the Maintenance performed earlier this week, then it could be related to the fact that I generated a new Model with ALOT of new entities (around 500,000) the night before Maintenance .. so much so that my Total Stored Data jumped from .03 to .27 GB (granted, all of the properties on the entities are Indexed=False). Could the addition of so much new data make Statistics take a long time to update? -- You 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: Problems with my AppEngine Account
Try logging in at http://appengine.google.com/a/spreadshirt.net On Feb 19, 10:03 am, Guido Kämper g...@spreadshirt.net wrote: Hi Ikai, i deaktivated the account in the meanwhile, but I decided to give it a further chance and re-registered today. But it's still the same: * I can create an application, but afterwards I don't see it in the apps list. eg. exclamation-iphone I already reset the IP address of my domain to point to the server, I used before. I wanted to use Google app-engine, because I wanted to have a well scaling homepage. But all in all I probably won't use it, as it is not even possible for me to upload the app.. thank you, Guido Am 17.02.2010 um 22:46 schrieb Ikai L (Google): Guido, are you still having issues with this? 2010/2/12 Guido Kämper g...@spreadshirt.net Hello, I have a serious problem with my app engine account. Seems to be related to rights management issues or login problems. I added one application without problems, I could upload it using appcfg.sh update But now I made some changes at the domain and added the application to Google Apps. First I got redirect errors, when accessing the Appengine portal - these problems somehow got solved. The app works as expected,it is now available atwww.exclamation.de. But: I am not allowed to update the application with further versions. Output: 403 Forbidden You do not have permission to modify this app (app_id=u'exclam123'). And: If I add a new application, I get the message, that I don't have access to the new application, and it does not show up in the applications overview. But the count of available applications (10 at account creation) was decreased by 1. I am writing from my second email address, as the MX records of my primary email address is currently changing to google mail. Unfortunately I already wrote the group admin of this group, because I could not find any contact information for server problems. Is anyone in this group able to help me with my problems? The account is gk(at)exclamation.de Or can anyone give me a contact info of the google administration? thank you very much, Guido -- You 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 . -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com|http://twitter.com/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 athttp://groups.google.com/group/google-appengine?hl=en . ___ Teamlead IT Backend Tel.: 0341 594 00 5561 sprd.net AG Gießerstraße 27 · 04229 Leipzig · Germany Vorstand/Executive Board: Jana Eggers (Vorsitzende/CEO) Matthias Spieß Aufsichtsratsvorsitzender/ Chairman of the Supervisory Board: Lukasz Gadowski Handelsregister/Trade Register: Amtsgericht Leipzig, HRB 22478 Umsatzsteuer-IdentNummer/VAT-ID: DE 8138 7149 4 -- You 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: first app upload - blank page
I'm having the same issue. I have three different scripts in the same file, one which is mapped to /, one to /blog and one to /blog/ admin/ My app.yaml has the following handlers: handlers: - url: /static static_dir: static - url: /favicon.ico static_files: static/favicon.ico upload: static/favicon.ico - url: /about-me static_files: static/about-me.html upload: static/about-me.html - url: /blog script: blog.py - url: /blog/admin script: admin.py login: required - url: /blog/admin/.* script: admin.py login: required - url: /blog/.* script: blog.py - url: /.* script: site.py and site.py has: class FrontPageHandler(webapp.RequestHandler): def get(self): self.response.out.write( html body Hello /body /html) application = webapp.WSGIApplication( [('/', FrontPageHandler)], debug=True) def main(): util.run_wsgi_app(application) if __name__ == __main__: main() / Works fine on local server, shows a blank page on appengine's server. /blog and /blog/admin work fine. Please help, I've been going at this for the past two hours :( -- You 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] Google Data Store
hi I have just started to learn Google datastore. I am just doin one small application as an experiment and tht needs a database and for this reason I am using datastore. I just have a fundamental doubt. Does for small application and few queries will need to pay. I mean is it free and if yes how much i.e what is the limit? I read that it is CPU time how is that calculated? -- You 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] Google Data Store
hi I have just started to learn Google datastore. I am just doin one small application as an experiment and tht needs a database and for this reason I am using datastore. I just have a fundamental doubt. Does for small application and few queries will need to pay. I mean is it free and if yes how much i.e what is the limit? I read that it is CPU time how is that calculated? -- You 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 Data Store
On Feb 19, 1:35 pm, Prasad pra...@rediffmail.com wrote: hi I have just started to learn Google datastore. I am just doin one small application as an experiment and tht needs a database and for this reason I am using datastore. I just have a fundamental doubt. Does for small application and few queries will need to pay. I mean is it free and if yes how much i.e what is the limit? I read that it is CPU time how is that calculated? If it's really a small application, it will almost certainly be free. If you don't enable billing, it's free regardless, you'd just start hitting over quota exceptions once the quota was used up. I believe all of the free quotas are intended to work within the 1.3 million requests per day for typical applications. IMO if you're seeing a significant % of that you're probably outside of most reasonable definitions of small. :) -- You 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.
Re: [google-appengine] Documentation contribution
What's the detail? Create a new issue in our issues tracker and post the link: http://code.google.com/p/googleappengine/issues/list On Thu, Feb 18, 2010 at 10:14 PM, Alexander Orlov alexander.or...@loxal.net wrote: I'd like to add an important detail to http://code.google.com/appengine/docs/java/config/cron.html How can I do it? I haven't found any accessible SVN/Wiki version of this page. -- You 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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/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: pygooglechart
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.
Re: [google-appengine] must i install Visual Studio for python ssl module?
You could download the free version of Visual Studio and then try to compile it with that.. but... you'd be on your own figuring out how to get it to compile after installing Visual Studio. On Fri, Feb 19, 2010 at 10:39 AM, saintthor saintt...@gmail.com wrote: for ssl module, i downloaded ssl-1.15.tar.gz from http://pypi.python.org/pypi/ssl. but it is source, no exe file. i tried to install it, message as below. D:\Python25\ssl-1.15setup.py install running install running build running build_py running build_ext building 'ssl._ssl2' extension error: Python was built with Visual Studio version 7.1, and extensions need to b e built with the same version of the compiler, but it isn't installed. where can i get a exe file or how can i install this module in other way? -- You 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. -- You 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: implementing asynchronous http in java
guess I'll post on stackoverflow... On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote: apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques t)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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. -- You 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: implementing asynchronous http in java
weird, I get the same error even when I pin objects and call urlfetch synchronously: url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); // undo pinning after debug HTTPResponse response = urlFetchService.fetch(request); byte[] responseBytes = response.getContent(); String responseString = new String(responseBytes); parseResponse(responseString); apiCallsMade++; On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote: apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques t)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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. -- You 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.
Re: [google-appengine] Re: implementing asynchronous http in java
I don't code in Java.. but my guess is you're making a silly mistake in there somewhere.. Copy pasting some other person's posted code from the Java AppEngine group I see it done this way: URL url = new URL(urlStr); URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService(); HTTPRequest httpRequest = new HTTPRequest(url, HTTPMethod.GET,followRedirects()); HTTPResponse response = urlFetchService.fetch(httpRequest); On Fri, Feb 19, 2010 at 4:27 PM, davidnelson david.jonathan.nel...@gmail.com wrote: weird, I get the same error even when I pin objects and call urlfetch synchronously: url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); // undo pinning after debug HTTPResponse response = urlFetchService.fetch(request); byte[] responseBytes = response.getContent(); String responseString = new String(responseBytes); parseResponse(responseString); apiCallsMade++; On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote: apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques t)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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.comgoogle-appengine%2Bunsubscrib e...@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-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. -- You 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 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: implementing asynchronous http in java
At this point I'm feeling not so smart :-( I can't even get synchronous urlfetch to work via the low level api: URL url = new URL(http://www.google.com;); URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService(); FetchOptions options = FetchOptions.Builder.followRedirects(); HTTPRequest httpRequest = new HTTPRequest(url, HTTPMethod.GET,options); HTTPResponse response = urlFetchService.fetch(httpRequest); it throws a nullpointerexception with no stack trace and no source code available to debug it. On Feb 19, 1:37 pm, Eli Jones eli.jo...@gmail.com wrote: I don't code in Java.. but my guess is you're making a silly mistake in there somewhere.. Copy pasting some other person's posted code from the Java AppEngine group I see it done this way: URL url = new URL(urlStr); URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService(); HTTPRequest httpRequest = new HTTPRequest(url, HTTPMethod.GET,followRedirects()); HTTPResponse response = urlFetchService.fetch(httpRequest); On Fri, Feb 19, 2010 at 4:27 PM, davidnelson david.jonathan.nel...@gmail.com wrote: weird, I get the same error even when I pin objects and call urlfetch synchronously: url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); // undo pinning after debug HTTPResponse response = urlFetchService.fetch(request); byte[] responseBytes = response.getContent(); String responseString = new String(responseBytes); parseResponse(responseString); apiCallsMade++; On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote: apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques t)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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%2Bunsubscrib e...@googlegroups.comgoogle-appengine%2Bunsubscrib e...@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
[google-appengine] Re: implementing asynchronous http in java
more info, I tried using the app engine version 1.3.0 and that's when I get nullpointerexceptions. switching back to 1.3.1 and I get the first exception I initially posted, sync or async. On Feb 19, 1:37 pm, Eli Jones eli.jo...@gmail.com wrote: I don't code in Java.. but my guess is you're making a silly mistake in there somewhere.. Copy pasting some other person's posted code from the Java AppEngine group I see it done this way: URL url = new URL(urlStr); URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService(); HTTPRequest httpRequest = new HTTPRequest(url, HTTPMethod.GET,followRedirects()); HTTPResponse response = urlFetchService.fetch(httpRequest); On Fri, Feb 19, 2010 at 4:27 PM, davidnelson david.jonathan.nel...@gmail.com wrote: weird, I get the same error even when I pin objects and call urlfetch synchronously: url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); // undo pinning after debug HTTPResponse response = urlFetchService.fetch(request); byte[] responseBytes = response.getContent(); String responseString = new String(responseBytes); parseResponse(responseString); apiCallsMade++; On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote: apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques t)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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%2Bunsubscrib e...@googlegroups.comgoogle-appengine%2Bunsubscrib e...@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-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. -- You 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] Re: implementing asynchronous http in java
problem solved. I was referencing the app engine/gwt project from a console app. apparently you can't do this. when I debug it as a google app project, it works. hope this minor pain and lesson will help someone else someday. thanks, David On Feb 19, 2:13 pm, davidnelson david.jonathan.nel...@gmail.com wrote: more info, I tried using the app engine version 1.3.0 and that's when I get nullpointerexceptions. switching back to 1.3.1 and I get the first exception I initially posted, sync or async. On Feb 19, 1:37 pm, Eli Jones eli.jo...@gmail.com wrote: I don't code in Java.. but my guess is you're making a silly mistake in there somewhere.. Copy pasting some other person's posted code from the Java AppEngine group I see it done this way: URL url = new URL(urlStr); URLFetchService urlFetchService = URLFetchServiceFactory.getURLFetchService(); HTTPRequest httpRequest = new HTTPRequest(url, HTTPMethod.GET,followRedirects()); HTTPResponse response = urlFetchService.fetch(httpRequest); On Fri, Feb 19, 2010 at 4:27 PM, davidnelson david.jonathan.nel...@gmail.com wrote: weird, I get the same error even when I pin objects and call urlfetch synchronously: url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); // undo pinning after debug HTTPResponse response = urlFetchService.fetch(request); byte[] responseBytes = response.getContent(); String responseString = new String(responseBytes); parseResponse(responseString); apiCallsMade++; On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote: apologies if I'm a little vague in my reply but I remember receiving something similar when I first started using the URLFetchService and I think it was related to the fact that I had imported the incorrect classes for HTTPRequest or header or something like like. I think I just chose the first one offered to me by the IDE ... It was a while ago so I hope I'm not sending you on a wild goose chase. On Fri, Feb 19, 2010 at 4:52 AM, davidnelson david.jonathan.nel...@gmail.com wrote: Hi, I'm trying to implement async http in java. Here is the important part of the code: for (String urlString : urls) { // TODO: try and get rid of these two heap allocations url = new URL(urlString); request = new HTTPRequest(url); request.addHeader(userAgentHeader); request.addHeader(authorizationHeader); request.addHeader(acceptEncodingHeader); request.addHeader(acceptCharsetHeader); responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques t)); apiCallsMade++; } for (FutureHTTPResponse futureResponse : responses) { parseResponse(new String(futureResponse.get().getContent())); } I keep getting this error: com.google.apphosting.api.ApiProxy $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()' was not found.. I looked around for any jars that were missing from the classpath but didn't see anything missing. Do you know which jar that code is in? I googled the error and also searched through this group but found nothing. Thanks, David -- You 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%2Bunsubscrib e...@googlegroups.comgoogle-appengine%2Bunsubscrib e...@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-appeng...@googlegroups.com. To unsubscribe from this group, send email to
[google-appengine] HELP! Stored Data Quota Weirdness- My Site is Down!
Yesterday after I updated our quotas though Google checkout because we were regularly getting close to some of our limits. About 1am last night, my site started throwing OverQuotaError: The API call datastore_v3.Put() required more quota than is available. This morning I quickly jumped online and purchased more allowance, thinking we had a spike in traffic and my new quotas have kicked in but it seems my site is still throwing the error. Also, It seems that i'm able to store data now, but other users cannot. Are admins treated differently? Also, My dashboard seem a little weird as its Free Quota Bar is siting on 0 for stored data? http://www.imged.org/121/capture0.png One other question, is there a better place than this for me to contact a Google support staff to help? Is there such a thing? Jay. -- You 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: HELP! Stored Data Quota Weirdness- My Site is Down!
Also note that the dashboard reports total stored data in the database as 1GB when there should be about 6 gig of data. On Feb 20, 9:54 am, jay kyburz@gmail.com wrote: Yesterday after I updated our quotas though Google checkout because we were regularly getting close to some of our limits. About 1am last night, my site started throwing OverQuotaError: The API call datastore_v3.Put() required more quota than is available. This morning I quickly jumped online and purchased more allowance, thinking we had a spike in traffic and my new quotas have kicked in but it seems my site is still throwing the error. Also, It seems that i'm able to store data now, but other users cannot. Are admins treated differently? Also, My dashboard seem a little weird as its Free Quota Bar is siting on 0 for stored data?http://www.imged.org/121/capture0.png One other question, is there a better place than this for me to contact a Google support staff to help? Is there such a thing? Jay. -- You 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.
Re: [google-appengine] Re: HELP! Stored Data Quota Weirdness- My Site is Down!
Well, the screencapture you posted is just reflecting that.. 1 GB out of 400 GB is much less than 1%.. so.. it just shows 0% usage (or that is my guess). Though, I have bee seeing wierd behaviour with the Total Stored Data number.. like you, mine was showing less usage that was there. (It showed .03 GB when I was using .27 GB.. it eventually corrected itself). On Fri, Feb 19, 2010 at 6:04 PM, jay kyburz@gmail.com wrote: Also note that the dashboard reports total stored data in the database as 1GB when there should be about 6 gig of data. On Feb 20, 9:54 am, jay kyburz@gmail.com wrote: Yesterday after I updated our quotas though Google checkout because we were regularly getting close to some of our limits. About 1am last night, my site started throwing OverQuotaError: The API call datastore_v3.Put() required more quota than is available. This morning I quickly jumped online and purchased more allowance, thinking we had a spike in traffic and my new quotas have kicked in but it seems my site is still throwing the error. Also, It seems that i'm able to store data now, but other users cannot. Are admins treated differently? Also, My dashboard seem a little weird as its Free Quota Bar is siting on 0 for stored data?http://www.imged.org/121/capture0.png One other question, is there a better place than this for me to contact a Google support staff to help? Is there such a thing? Jay. -- You 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. -- You 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: HELP! Stored Data Quota Weirdness- My Site is Down!
is it possible that I'm experiencing the same problem as these people here.. http://groups.google.com/group/google-appengine/browse_thread/thread/d9553ff5a42ce122/e9cc07c63aedb65c?lnk=gstq=Over+Quota+Error#e9cc07c63aedb65c On Feb 20, 10:04 am, jay kyburz@gmail.com wrote: Also note that the dashboard reports total stored data in the database as 1GB when there should be about 6 gig of data. On Feb 20, 9:54 am, jay kyburz@gmail.com wrote: Yesterday after I updated our quotas though Google checkout because we were regularly getting close to some of our limits. About 1am last night, my site started throwing OverQuotaError: The API call datastore_v3.Put() required more quota than is available. This morning I quickly jumped online and purchased more allowance, thinking we had a spike in traffic and my new quotas have kicked in but it seems my site is still throwing the error. Also, It seems that i'm able to store data now, but other users cannot. Are admins treated differently? Also, My dashboard seem a little weird as its Free Quota Bar is siting on 0 for stored data?http://www.imged.org/121/capture0.png One other question, is there a better place than this for me to contact a Google support staff to help? Is there such a thing? Jay. -- You 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] Application Logs
My output from System.out is not showing under INFO in the Admin Console Logs. Has anyone else faced similar issue? -- You 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: HELP! Stored Data Quota Weirdness- My Site is Down!
hah, oh yeah I was confused because it wan't reporting any of my data in the datastore. On Feb 20, 10:12 am, Eli Jones eli.jo...@gmail.com wrote: Well, the screencapture you posted is just reflecting that.. 1 GB out of 400 GB is much less than 1%.. so.. it just shows 0% usage (or that is my guess). Though, I have bee seeing wierd behaviour with the Total Stored Data number.. like you, mine was showing less usage that was there. (It showed .03 GB when I was using .27 GB.. it eventually corrected itself). On Fri, Feb 19, 2010 at 6:04 PM, jay kyburz@gmail.com wrote: Also note that the dashboard reports total stored data in the database as 1GB when there should be about 6 gig of data. On Feb 20, 9:54 am, jay kyburz@gmail.com wrote: Yesterday after I updated our quotas though Google checkout because we were regularly getting close to some of our limits. About 1am last night, my site started throwing OverQuotaError: The API call datastore_v3.Put() required more quota than is available. This morning I quickly jumped online and purchased more allowance, thinking we had a spike in traffic and my new quotas have kicked in but it seems my site is still throwing the error. Also, It seems that i'm able to store data now, but other users cannot. Are admins treated differently? Also, My dashboard seem a little weird as its Free Quota Bar is siting on 0 for stored data?http://www.imged.org/121/capture0.png One other question, is there a better place than this for me to contact a Google support staff to help? Is there such a thing? Jay. -- You 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. -- You 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: Datastore Statistics page not updating (over 3 days now)
Hmm.. I suppose I could have hit the 1MB limit for stats that is mentioned here: http://code.google.com/appengine/kb/adminconsole.html#datastore_stats http://code.google.com/appengine/kb/adminconsole.html#datastore_statsIs there a rule of thumb for estimating stats usage? I'm at .3 GB of Datastore usage so that would mean that somewhere around 0.3% of that went to stats.. which pushed me over the limit possibly? I have only 5 defined Models that are in use.. and those models have a total of 16 defined properties and 12 of those properties have indexed=False. Anyway, this is low on the pile of important issues.. but it'll be nice when I can keep an eye on stats for my entities since it helps me optimize any poorly defined models. On Fri, Feb 19, 2010 at 1:17 PM, Eli Jones eli.jo...@gmail.com wrote: Is there a backlog on getting Datastore Statistics calculated? When I go to the Datastore Statistics page for my application, it indicates that Last Updated = 3 days, 3:35:42 ago Which is accurate since there are no stats for entities or Models created since then. Is anyone else having this issue or am I the only lucky one? IF this is not related to the Maintenance performed earlier this week, then it could be related to the fact that I generated a new Model with ALOT of new entities (around 500,000) the night before Maintenance .. so much so that my Total Stored Data jumped from .03 to .27 GB (granted, all of the properties on the entities are Indexed=False). Could the addition of so much new data make Statistics take a long time to update? -- You 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: Datastore Statistics page not updating (over 3 days now)
Hooray, the magic appengine elves have updated my stats. Thank you App Engine Infrastructure. On Fri, Feb 19, 2010 at 7:16 PM, Eli Jones eli.jo...@gmail.com wrote: Hmm.. I suppose I could have hit the 1MB limit for stats that is mentioned here: http://code.google.com/appengine/kb/adminconsole.html#datastore_stats http://code.google.com/appengine/kb/adminconsole.html#datastore_statsIs there a rule of thumb for estimating stats usage? I'm at .3 GB of Datastore usage so that would mean that somewhere around 0.3% of that went to stats.. which pushed me over the limit possibly? I have only 5 defined Models that are in use.. and those models have a total of 16 defined properties and 12 of those properties have indexed=False. Anyway, this is low on the pile of important issues.. but it'll be nice when I can keep an eye on stats for my entities since it helps me optimize any poorly defined models. On Fri, Feb 19, 2010 at 1:17 PM, Eli Jones eli.jo...@gmail.com wrote: Is there a backlog on getting Datastore Statistics calculated? When I go to the Datastore Statistics page for my application, it indicates that Last Updated = 3 days, 3:35:42 ago Which is accurate since there are no stats for entities or Models created since then. Is anyone else having this issue or am I the only lucky one? IF this is not related to the Maintenance performed earlier this week, then it could be related to the fact that I generated a new Model with ALOT of new entities (around 500,000) the night before Maintenance .. so much so that my Total Stored Data jumped from .03 to .27 GB (granted, all of the properties on the entities are Indexed=False). Could the addition of so much new data make Statistics take a long time to update? -- You 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.
Re: [google-appengine] Local datastore is slow once loaded up, any suggestions?
I noticed this issue as well when working from a bulkloaded backup up my live datastore (around the same number of entities). For me, it seems that db.delete() takes forever.. db.puts() seem tolerable. (I'm on Windows). I see that Nick is indicating that this may just be the way it is. It'd be nice to do offline processing and development working against a snapshot of my current datastore.. but I'm not going to whine too much for that. I'd rather the App Engine Team keep focusing on sweetening the live store. One potential way around this (if you reay, really wanted to use the development environment with a large datastore).. you could cook up a way to have the datastore stuff loaded into a global Dictionary object.. and you could put(), delete() stuff from it while testing. That might work well since the development environment seems to run only one instance or thread or whatever they call it.. so as long as you didn't fill up the memory, it seems that maybe the global object would be there for long enough to do several tests.. Then again, you'd probably need uncoupled Models.. where no class was related to any other one through references or ancestors or parents or children etc. So, like I said, you'd have to really want to do this.. For me, this would work since I want to do lots of cycling through 10s of thousands of entities.. updating and deleting them in memory (Model entities are relate to others only through their key_names and not through any defined properties)... then when I was done.. I could just have some process sync the ram datastore with the one on disk.. and go have a beer or whatever while it took its sweet time. There be dragons in the details though. On Fri, Feb 19, 2010 at 12:19 PM, obvious c...@obviousdiversion.com wrote: I've loaded up a local datastore with 40,000+ entries. Unfortunately, recalling any data from it at all is very slow on my fairly new Macbook Pro. Any suggestions on speeding things up, short of buying a new piece of hardware? -- You 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. -- You 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.
Re: [google-appengine] Application Logs
Is there a reason you're using this mechanism instead of using the Logger? http://code.google.com/appengine/articles/logging.html http://code.google.com/appengine/articles/logging.htmlIn general, you shouldn't rely on having access to STDOUT in production. On Fri, Feb 19, 2010 at 3:57 PM, Sandeep sandeep.sath...@gmail.com wrote: My output from System.out is not showing under INFO in the Admin Console Logs. Has anyone else faced similar issue? -- You 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. -- Ikai Lan Developer Programs Engineer, Google App Engine http://googleappengine.blogspot.com | http://twitter.com/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] Frustrating tutorials
several of the tutorials leave out steps that leave the reader very very confused as to why the heck they dont work. Mainly this- http://code.google.com/appengine/docs/java/datastore/creatinggettinganddeletingdata.html fails to adress in anyway the difficulties of using Key or KeyFactory. The error - The import com.google.appengine cannot be resolved should be addressed. If anyone has this working WITHOUT ANY HACKS let me know I keys to JUST WORK. i'm just gonna use strings. This point of Frustration encounted MUST be indicated before wasting other peoples time trying to make their own keys withought the source from appengine. -- You 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.
Re: [google-appengine] Local datastore is slow once loaded up, any suggestions?
I did some preliminary testing on this.. mainly, I used the cachepy.py from here: http://appengine-cookbook.appspot.com/recipe/cachepy-faster-than-memcache-and-unlimited-quota/ http://appengine-cookbook.appspot.com/recipe/cachepy-faster-than-memcache-and-unlimited-quota/I created a test page.. that I used to load 400,000 entities from one of my Models whenever it received a flag from me to fill up the cache (I created the entities on the fly and gave them key_names and values and then called cachepy.set() on each one). Then.. i removed the cache flag.. and just used the test page to get entities from the cachepy cache by keyname to see how long they hung around. I then went into the Interactive Console and began grabbing entities from the cache as well. The entities could be got from both locations. I then started doing this: result = cachepy.get(keyname) result.prop1 = newvalue etc.. I would then use my test page to check the cache for that keyname, and I would see the newvalue for prop1. It looks like.. as long as you are actively using the cache from the global dictionary object that cachpy uses.. it will stay in memory. (It has for 60 minutes so far, and I'm guessing it will persist as long as you are using it and you don't stick too many new objects into the cache.) Since you aren't pickling the objects before sticking them in the global dict.. you're able to use the Model entities with all the datastore type checking etc.. so.. you have some sanity to what can and can't be done to the entities in memory and you get proper error reporting if you do something un-kosher to one of your entity properties like trying to set an IntegerProperty to a String.. etc. So, if you have a setup where you do a lot of accessing entities by key_name and then doin thangs to that stuff.. this could work in the development server. You'd just need a bootstrap process to stuff your datastore into the cache when you were ready to get to testing.. and then.. create some process to dump that info to the datastore once you were done mucking around. Loading up the 400,000 entities into the cache gobbled up an extra 270MB of RAM in the pythonw.exe process on my machine... and I'm guessing you can just keep adding objects to the cache until Python crashes... I guess if you really wanted to get punk rock... you could emulate searching by entity properties by just having a function that looped through all entities of a given Model and had it return the ones that matched your query. That would be plenty fast. On Fri, Feb 19, 2010 at 8:44 PM, Eli Jones eli.jo...@gmail.com wrote: I noticed this issue as well when working from a bulkloaded backup up my live datastore (around the same number of entities). For me, it seems that db.delete() takes forever.. db.puts() seem tolerable. (I'm on Windows). I see that Nick is indicating that this may just be the way it is. It'd be nice to do offline processing and development working against a snapshot of my current datastore.. but I'm not going to whine too much for that. I'd rather the App Engine Team keep focusing on sweetening the live store. One potential way around this (if you reay, really wanted to use the development environment with a large datastore).. you could cook up a way to have the datastore stuff loaded into a global Dictionary object.. and you could put(), delete() stuff from it while testing. That might work well since the development environment seems to run only one instance or thread or whatever they call it.. so as long as you didn't fill up the memory, it seems that maybe the global object would be there for long enough to do several tests.. Then again, you'd probably need uncoupled Models.. where no class was related to any other one through references or ancestors or parents or children etc. So, like I said, you'd have to really want to do this.. For me, this would work since I want to do lots of cycling through 10s of thousands of entities.. updating and deleting them in memory (Model entities are relate to others only through their key_names and not through any defined properties)... then when I was done.. I could just have some process sync the ram datastore with the one on disk.. and go have a beer or whatever while it took its sweet time. There be dragons in the details though. On Fri, Feb 19, 2010 at 12:19 PM, obvious c...@obviousdiversion.com wrote: I've loaded up a local datastore with 40,000+ entries. Unfortunately, recalling any data from it at all is very slow on my fairly new Macbook Pro. Any suggestions on speeding things up, short of buying a new piece of hardware? -- You 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
Re: [google-appengine] Model class of a Query instance?
Thanks for your advice Nick. My actual app is a bit more complex than the example I gave. I'll explain more in my response to your comments below. Will this be an all-or-nothing proposition? Eg, if the put of 'foo' changed the foo_name, they'll all need updating, otherwise none of them will? In that case, you'd be better off checking if it's changed, and updating them all (without the inequality filter) if it did change. Yes, indeed it's all-or-nothing. The above will change every single Bar and Baz entity that doesn't match foo's entity name, though, including those that have nothing to do with the foo you modified. Yep, that's true. In my real app though, I don't want to query on foo's name, but instead on foo's metadata signature, which is a hash of a combination of foo's key and properties (or rather, the properties that reverse-referenced entities duplicate, such as foo's name). Depending on how many Bar and Baz entities there are per Foo, you could just drop the inequality and filter them out once they're fetched. I have ReferenceProperty properties all over the place in my model design, so there are many Foo-type Models, some with up to a dozen different reverse-referenced Bar/Baz-type Models, with each of those Foo-Bar/Baz relations potentially having thousands of entities. Given that you're already hard-coding in the list of collections, you could avoid the need for a 'get_model_class_for_collection' method by replacing the loop with: for model_class in (Bar, Baz): In my real app I'm not hard-coding these (due to the maintenance required as the model design evolves), I'm trying to get them dynamically, see this other thread I created: http://groups.google.com/group/google-appengine/browse_thread/thread/1a6e911f3eff79ed However, I may indeed need to hard-code these if I can't find any satisfactory way of getting all the collection_names dynamically. Now more about my real app... I have a mixin class for Models to inherit from, which looks like this: class ModelCommons(object): def get_metadata_signature(self): return hashlib.sha1('Kind:%s|ID:%s|KeyName:%s|Prop:%s' % ( self.kind(), self.key().id(), self.key().name(), repr(self.get_current_metadata(.hexdigest() def get_current_metadata(self): meta = [] for prop_name in self.__class__.meta_property_names: meta.append((prop_name, getattr(self.__class__, prop_name).get_value_for_datastore(self))) return meta def update_collections_metadata(self): current_metadata_signature = self.get_metadata_signature() for collection_name in self.get_collection_names() # In a perfect world model_class = self.get_model_class_from_collection_name(collection_name) # The magic method I was looking for reference_prop_name = self.get_reverse_reference_property_name_from_collection_name(collection_name) # Another magic method that I need metadatasig_prop_name = '%s_metadata_signature' % reference_prop_name while True: # BEGIN TRANSACTION (not shown) entity = model_class.all().filter('%s !=' % metadatasig_prop_name, current_metadata_signature).get() if not entity: break setattr(entity, reference_prop_name, self) entity.update_reference_property_metadata_for_property(reference_prop_name) entity.put() # END TRANSACTION def update_reference_property_metadata_for_property(self, prop_name): # Implementation not shown, but assume this method also # updates the {{prop_name}}_metadata_signature property. def post_put(self): if self.get_metadata_signature() != self._initial_metadata_signature from google.appengine.ext import deferred deferred.defer(self.update_collections_metadata) # Haven't tried to see if this works, but that's the idea # For the ever-so-boring Author - Article example: class Author(db.Model, ModelCommons): name = db.StringProperty() avatar_url = db.StringProperty() permissions = db.StringListProperty() meta_property_names = ('name', 'avatar_url') # Yuck way to set the initial state. Is there a better way? def __init__(self, *args, **kwds): super(self.__class__, self).__init__(*args, **kwds) self._initial_metadata_signature = self.get_metadata_signature() class Article(db.Model, ModelCommons): title = db.StringProperty() content = db.BlobProperty() author = db.ReferenceProperty(Author, collection_name = 'articles') author_metadata_signature = db.StringProperty() author_name = db.StringProperty() author_avatar_url = db.StringProperty() pre_put(): self.update_reference_property_metadata_for_property('author') I'll also have clean-up tasks just in case the deferred task in post_put() isn't successfully added. If you've followed all that code, when this happens: author = Author(key_name = 'BillyJoel123', name='Billy Joel', avatar_url='http://whatever.com/billy.png', permissions = ['editor','admin']) author.put() article =