[appengine-java] cache expiration
In my application, I get values from captors Each value has a 5 minute validity. Each read from a captor cost a lot, so I've tried to put it in the GAE cache My code (JCache or low level api) is working with the cache as long as I don't use the exoiration delay. When I use the expiration delay, it works fine as long as the expiration delay isn't spent. After, a get(key) on the cache always gives null and a put(key,value) doesn't change that. The same problem seems to be describded here http://groups.google.com/group/google-appengine-java/browse_thread/thread/4e562762f13d932e/a974365a918b279d?lnk=gstq=JCache+expirationpli=1 and in other messages on the web Here is a view of my code on the low level API key = num; foo = (String)cache.get(key); if (foo == null) { foo = /* get the value */ cache.put(key, foo, exp, MemcacheService.SetPolicy.SET_ALWAYS); } resp.setContentType(text/xml); resp.getOutputStream().print(foo); } where exp is declared as a global by static Expiration exp = Expiration.byDeltaSeconds(300); -- 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] XMPP : Sendinvitation failed with xx...@gmail.com
I was trying to send an invitation to a gmail id and the gmail user is logged in through GTALK and i am getting following message, what can be the reason for this ? Nested in javax.servlet.ServletException: java.lang.IllegalArgumentException: Invalid jabber ID: JID: x...@gmail.com: java.lang.IllegalArgumentException: Invalid jabber ID: JID: x...@gmail.com at com.google.appengine.api.xmpp.XMPPServiceImpl.sendInvitation(XMPPServiceImpl.java: 82) Thanks, Rahul -- 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] JTidy
I am trying to use JTidy in Eclipse. I add JTidy jar to the build path and add the jar again as the source attachment. When I make a tidy object it shows up as a org.w3c.tidy.Tidy. but when I run my app i get the error java.lang.NoClassDefFoundError: org/w3c/tidy/Tidy. Am I not adding the jar correctly? Does JTidy not work on google 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] JTidy
Make sure you put it in your war/WEB-INF/lib directory On 19 Mar 2010, at 21:36, WillSpecht wrote: I am trying to use JTidy in Eclipse. I add JTidy jar to the build path and add the jar again as the source attachment. When I make a tidy object it shows up as a org.w3c.tidy.Tidy. but when I run my app i get the error java.lang.NoClassDefFoundError: org/w3c/tidy/Tidy. Am I not adding the jar correctly? Does JTidy not work on google 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-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.
[appengine-java] Is it possible to add a member to a detached object's collection that wasn't itself detached?
In case my subject line was confusing, I'll elaborate: Let's say I have a parent object that has a collection of children. I detach that parent object and intentionally omit the collection of children from the fetch group, in order to avoid fetching the potentially numerous children. Then, I want to add a new child to that parent's collection. I thought I would be able to add that child to the parent's empty un- detached collection, and thus have a child-collection size of 1, and then have that child be added to the parent's collection of children when the parent is attached. This code gave me an illegal access of field that wasn't detached, if you want to access this field please detach it exception. The reason that I thought this was possible was the following lines from the JDO docs: If you don't detach a field of an object, you cannot access the value for that field while the object is detached. If you don't detach a field of an object, you can update the value for that field while detached, and thereafter you can access the value for that field. (http://www.jpox.org/docs/1_2/jdo/attach_detach.html) The second line pertains to what I'm doing (updatingthe value for the field while detached), but I guess in so doing I am also trying to access the value for the field. In short, is what I'm trying to do possible? Cheers, Mike -- 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: Does memcache get clean when new version deployed and made to be the default one?
The *anything* can be side-effects all over the code so I found it easier to deal with it in one place. Here is the code to get the version number. Perhaps there is a simpler way. String getAppVer() { String sPath = System.getProperty(user.dir); if (sPath == null) return 99; int nIX = sPath.lastIndexOf(/); if (nIX 0) return 888; return sPath.substring(nIX+1); } Steve On Mar 19, 1:17 pm, Jeff Schnitzer j...@infohazard.org wrote: There is a simpler solution to this: If you fetch something from memcache, and *anything* goes wrong, treat it as if you got back an empty result. The problem will eventually take care of itself. Jeff On Fri, Mar 19, 2010 at 4:19 AM, Steve Pritchard steve...@gmail.com wrote: Thats why I used the version number string (available in the System.properties) to be part of my key. I was using MemCache to store path names (among other things) and it broke every time I deployed. Steve Pritchard On Mar 18, 10:03 pm, John Patterson jdpatter...@gmail.com wrote: No. On 19 Mar 2010, at 08:37, opok wrote: Hi all, does memcache get clean when new version deployed and made to be the default one? -- 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 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.
[appengine-java] Re: Filter's static variable is lost
Hi, you could use a Servlet Content Listener, which will tell you when the Servlet context starts / stops ... you'll at least know when Google are loading or unloading your app. But this doesn't help solving the problem I described above. if you truly have to do some initialization each time the JVM starts, I mean the opposite. I don't want to do initialization every time Google loads my app. I will convert all static variables into datastore entries. Instead, I want to save the state for a lifetime, until a new deployment is made. I think you assumed I was writing about loading, but I meant deployment. So, my question is how to determine a new deployment(uploading the new application with the same version name) in my app programatically. Thanks, Ali On Mar 19, 7:31 pm, Peter Ondruska peter.ondru...@gmail.com wrote: You should first test that Context destroy is called as I recall from earlier discussion that this may not be used in GAE/J On Mar 19, 5:49 pm, Conor Power iamco...@gmail.com wrote: you could use a Servlet Content Listener, which will tell you when the Servlet context starts / stops ... you'll at least know when Google are loading or unloading your app. from reading your email however, it seems like there maybe a little confusion around app initialization. if you truly have to do some initialization each time the JVM starts, you won't want to store initialized in the datastore as if / when other instances are spun up they will be in an inconsistent state than what you want. it seems like you want this initialized state on a per context basis. C On Fri, Mar 19, 2010 at 3:18 PM, John Patterson jdpatter...@gmail.comwrote: Deploying a new version has no effect on data stored in the datastore. What do you mean by initialize your app. If you are referring to loading data into memory then that needs to be done for every instance of your app that is loaded. Not just once per deployment. On 19 Mar 2010, at 19:10, Ali Ok wrote: Ok, I understood this one. However, I think you should warn the developers not to use static variables at all, in a large and red styled documentation paragraph. In this case, assume that every static variable is converted, and they all being set from Datastore. However, this does not solve the problem. Let me explain an example: * After deployment, at the first request, let me put a flag, initialized=true, into datastore * On later requests, my app does not need to be initialized, since I get initialized=true from Datastore. Everything is cool. * Let's make a new deployment to App Engine at this stage. * After deployment of a new version, my app needs to be intialized again * In the code, once again I check my initialized flag from Datastore is true, since a new deployment doesn't clear the stored data, right? * How to determine that a new deployment is made, and the initialization needs to be run again? What are the effects of a new deployment to the Datastore? Thanks for your replies, Ali On 18 Mart, 22:34, Don Schwarz schwa...@google.com wrote: Unlike most Java hosting providers, we load and unload your code on JVMs as your load patterns change. This will result in static variable static being lost, and as a result you should only expect durability of data stored in the datastore. Transient data should generally be stored in memcache, although data may be evicted from memcache as well. For more information, see: http://code.google.com/appengine/kb/java.html#What_Causes_Loading_Req... On Thu, Mar 18, 2010 at 9:34 AM, Ali Ok al...@aliok.com.tr wrote: Hi, I am trying to implement Google App Engine support for Myfaces 2. You can see the work [1] [2]. At the moment, I am making some trials to identify the problem at [2]. I am experiencing an interesting problem. My filter's static variable is lost after some time(ie. 3 minutes) I have a filter like this: public class TestFilter implements Filter { ... private static String myStaticVariable; public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { log.warning(myStaticVariable + myStaticVariable); if(myStaticVariable==null) myStaticVariable = someValue; arg2.doFilter(arg0, arg1); } ... } When I make the first request, myStaticVariable is set to someValue. If I make a request in a short period (ie. 20 seconds), I see that value of myStaticVariable is still someValue. However, after 3 minutes, when I make another request, I see that myStaticVariable is set to its default value (null). Why are my static variables are gone? Am I doing something wrong? I can understand that the reconstruction of the filter and
[appengine-java] Re: Datastore Delete raises wrong exception
Thanks Don for confirming this. I filed an issue at http://code.google.com/p/googleappengine/issues/detail?id=2993 And please keep in mind that dev server should behave in the same way as the production server in this case. -- 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] XMPP : Sendinvitation failed with xx...@gmail.com
Hi, I tried. The following source think that it was able to execute it normally. String sendEmail = @gmail.com; JID jid = new JID(sendEmail); XMPPService xmpp = XMPPServiceFactory.getXMPPService(); xmpp.sendInvitation(jid); When this source doesn't operate normally, it is likely to have to think about other causes. Good luck Please try. thanks. I was trying to send an invitation to a gmail id and the gmail user is logged in through GTALK and i am getting following message, what can be the reason for this ? Nested in javax.servlet.ServletException: java.lang.IllegalArgumentException: Invalid jabber ID: JID: x...@gmail.com: java.lang.IllegalArgumentException: Invalid jabber ID: JID: x...@gmail.com at com.google.appengine.api.xmpp.XMPPServiceImpl.sendInvitation(XMPPServiceImpl. java: 82) Thanks, Rahul -- 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: Hard Deadline Exceeded and High CPU
Hey Ken, I'm having the same issue as you, did you find a reasonable resolution? It surprises me that this isn't talked about more as it happens with just a basic Grails app as you mentioned. It makes me think there's something trivial I need to do to get it to work. Best of luck, Gav On Mar 8, 12:30 am, Ken evotur...@gmail.com wrote: Actually my app is written in Groovy onGrails. It is supposed to be supported by App Engine and seems to work OK, with a few warts and this problem. Unfortunately it means I probably don't have as much control over application start up times as I might with another framework. Is there any way to increase the amount of time my app is allowed to spend spinning up? If not, then app engine really doesn't support Groovy onGrails. We should probably note this stuff somewhere. On Mar 7, 6:08 pm, John Patterson jdpatter...@gmail.com wrote: The Jetty server is not used again after an error so another one has to be spun-up for you next request. The only thing you can do about it is tackle the HDEEs which is not always easy. It sounds like they might be due to long start-up time? If so there are a number of tactics you can use to reduce this: Use lazy initialization as much as possible. Split your app into a user facing version and an admin version that share the same datastore If you use Guice try using the non-AOP version that does not enhance classes at startup Spring - not sure but others mentioned turning off classpath scanning Try reducing external jar dependencies - not sure how much affect loading these has If the cause of the HDEEs is that your requests take a long time then you'll need to reduce processing time Try using the Deferred class: http://groups.google.com/group/google-appengine-java/browse_thread/th... On 8 Mar 2010, at 05:37, Ken wrote: I am getting HardDeadlineExceededErrors. What do you mean that the instance will be disposed? What can I do about it? Thank you. On Mar 7, 5:18 pm, John Patterson jdpatter...@gmail.com wrote: If there are errors like HardDeadlineExceededError then the server instance will be disposed. Could this be the problem? On 8 Mar 2010, at 05:09, Ken wrote: I was just looking in the logs after making numerous requests to my application. Something is seriously wrong. I'm even having high CPU on static files. In one request it took 45 seconds of CPU to return the favicon.ico file. I guess this is really related to starting a server instance, but if that's true then the server is going down after only a few seconds of use. It is starting the server handling a request and a few seconds later dropping the server. It isn't even staying up a minute. On Mar 7, 3:13 pm, Ken evotur...@gmail.com wrote: I have a very simple Groovy onGrailsapplication installed that uses only a single table. The application is really just the scaffolded edits on this table with very few modifications to make it work. So it doesn't really do anything. About one in five clicks result in an error. The exception is a Hard Deadline Exceeded and there is a warning about the CPU limit as well. Randomly a request will take around 30 seconds of CPU for no reason. There is no change in the code. There is no change to the data. The exact same request will return with essentially no latency and then it will take 30 seconds of CPU. I thought this might be some kind of weirdness withGrails, but there are several issues listed that seem to be related to same issue: http://code.google.com/p/googleappengine/issues/detail?id=2621http:// ... ?id=2840http://code.google.com/p/googleappengine/issues/detail?id=2691http:// ... ?id=2837http://code.google.com/p/googleappengine/issues/detail?id=2846 I've stared them all because they all are likely related to the same problem I'm having. I was hoping that someone here knew what was going on and might be able to help me resolve it. In one of the messages above someone mentions moving an application to another shard to solve the problem. What does this mean? Is it really a potential solution? 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 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-java@googlegroups.com . To unsubscribe from this group, send email to
[appengine-java] Re: Unable to upload application
Some of admin console pages (Application settings or Admin logs for example) are unavailable too On Mar 19, 1:26 am, Peter Ondruska peter.ondru...@gmail.com wrote: I am trying to upload my application but it fails everytime: com.google.appengine.tools.admin.AdminException: Unable to update app: Error posting to URL:https://appengine.google.com/api/appversion/create?app_id=f72dzzn5q5q... 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 62) at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngin eBridgeImpl.java: 271) at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(De ployProjectJob.java: 145) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorksp aceJob.java: 38) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: java.io.IOException: Error posting to URL:https://appengine.google.com/api/appversion/create?app_id=f72dzzn5q5q... 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.jav a: 149) at com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.jav a: 82) at com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.jav a: 532) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction(AppVersi onUpload.java: 349) at com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload .java: 111) at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 56) ... 4 more -- 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: Unable to upload application
Same here On Mar 19, 1:50 am, Huebi konrad.hueb...@googlemail.com wrote: here as well :( On 18 Mrz., 23:42, François Masurel fm2...@mably.com wrote: Same problem here too :-( On 18 mar, 23:30, Sandeep Sathaye sandeep.sath...@gmail.com wrote: I am having the same problem. On Thu, Mar 18, 2010 at 6:26 PM, Peter Ondruska peter.ondru...@gmail.comwrote: I am trying to upload my application but it fails everytime: com.google.appengine.tools.admin.AdminException: Unable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=f72dzzn5q5q... 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 62) at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngin eBridgeImpl.java: 271) at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(De ployProjectJob.java: 145) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorksp aceJob.java: 38) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: java.io.IOException: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=f72dzzn5q5q... 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.jav a: 149) at com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.jav a: 82) at com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.jav a: 532) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction(AppVersi onUpload.java: 349) at com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload .java: 111) at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 56) ... 4 more -- 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%2B 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] Unable to upload application
I encountered this error when I was trying to deploy a disabled application May be worth checking the status of your application. This option is available from Administration section. I have tried this as we speak, and at the moment, the app engine admin utility is not responding. I am getting Server Error (500) - A server error has occurred. May be some maintenance work happening? On Fri, Mar 19, 2010 at 9:26 AM, Peter Ondruska peter.ondru...@gmail.comwrote: I am trying to upload my application but it fails everytime: com.google.appengine.tools.admin.AdminException: Unable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=f72dzzn5q5qtversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 62) at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java: 271) at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java: 145) at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java: 38) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: java.io.IOException: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=f72dzzn5q5qtversion=2; 500 Internal Server Error Server Error (500) A server error has occurred. at com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java: 149) at com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java: 82) at com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java: 532) at com.google.appengine.tools.admin.AppVersionUpload.beginTransaction(AppVersionUpload.java: 349) at com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java: 111) at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java: 56) ... 4 more -- 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: Hard Deadline Exceeded and High CPU
This is being actively looked into; http://jira.codehaus.org/browse/GRAILSPLUGINS-1736 On Mar 8, 12:30 am, Ken evotur...@gmail.com wrote: Actually my app is written in Groovy onGrails. It is supposed to be supported by App Engine and seems to work OK, with a few warts and this problem. Unfortunately it means I probably don't have as much control over application start up times as I might with another framework. Is there any way to increase the amount of time my app is allowed to spend spinning up? If not, then app engine really doesn't support Groovy onGrails. We should probably note this stuff somewhere. On Mar 7, 6:08 pm, John Patterson jdpatter...@gmail.com wrote: The Jetty server is not used again after an error so another one has to be spun-up for you next request. The only thing you can do about it is tackle the HDEEs which is not always easy. It sounds like they might be due to long start-up time? If so there are a number of tactics you can use to reduce this: Use lazy initialization as much as possible. Split your app into a user facing version and an admin version that share the same datastore If you use Guice try using the non-AOP version that does not enhance classes at startup Spring - not sure but others mentioned turning off classpath scanning Try reducing external jar dependencies - not sure how much affect loading these has If the cause of the HDEEs is that your requests take a long time then you'll need to reduce processing time Try using the Deferred class: http://groups.google.com/group/google-appengine-java/browse_thread/th... On 8 Mar 2010, at 05:37, Ken wrote: I am getting HardDeadlineExceededErrors. What do you mean that the instance will be disposed? What can I do about it? Thank you. On Mar 7, 5:18 pm, John Patterson jdpatter...@gmail.com wrote: If there are errors like HardDeadlineExceededError then the server instance will be disposed. Could this be the problem? On 8 Mar 2010, at 05:09, Ken wrote: I was just looking in the logs after making numerous requests to my application. Something is seriously wrong. I'm even having high CPU on static files. In one request it took 45 seconds of CPU to return the favicon.ico file. I guess this is really related to starting a server instance, but if that's true then the server is going down after only a few seconds of use. It is starting the server handling a request and a few seconds later dropping the server. It isn't even staying up a minute. On Mar 7, 3:13 pm, Ken evotur...@gmail.com wrote: I have a very simple Groovy onGrailsapplication installed that uses only a single table. The application is really just the scaffolded edits on this table with very few modifications to make it work. So it doesn't really do anything. About one in five clicks result in an error. The exception is a Hard Deadline Exceeded and there is a warning about the CPU limit as well. Randomly a request will take around 30 seconds of CPU for no reason. There is no change in the code. There is no change to the data. The exact same request will return with essentially no latency and then it will take 30 seconds of CPU. I thought this might be some kind of weirdness withGrails, but there are several issues listed that seem to be related to same issue: http://code.google.com/p/googleappengine/issues/detail?id=2621http:// ... ?id=2840http://code.google.com/p/googleappengine/issues/detail?id=2691http:// ... ?id=2837http://code.google.com/p/googleappengine/issues/detail?id=2846 I've stared them all because they all are likely related to the same problem I'm having. I was hoping that someone here knew what was going on and might be able to help me resolve it. In one of the messages above someone mentions moving an application to another shard to solve the problem. What does this mean? Is it really a potential solution? 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 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-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
[appengine-java] Error During Eclipse Install
I have been able to get the GWT plugin and GWT Web SDK installed ok through Eclipse, but I get this error when I try to install the App Engine SDK: An error occurred while collecting items to be installed session context was:(profile=SDKProfile, phase=org.eclipse.equinox.internal.provisional.p2.engine.phases.Collect, operand=, action=). Error closing the output stream for osgi.bundle,com.google.appengine.eclipse.sdkbundle. 1.3.1,1.3.1.v201002101412 on repository file:/C:/Documents%20and %20Settings/Administrator/My%20Documents/eclipse/. Error unzipping C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp \com.google.appengine.eclipse.sdkbundle. 1.3.1_1.3.1.v2010021014127093477679547686438.jar: invalid entry size (expected 9729129 but got 9732484 bytes) The 2nd number (number got) always changes, sometimes its less, sometimes more. I have tried to download/install this plugin 10 times all with the same error. Eclipse SDK Version: 3.5.2 Build id: M20100211-1343 Java: 1.6.0_18 Windows XP x64. Anyone have any ideas? -- 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: Parallel Asynchronous Datastore Commands with Twig 1.0
I'm interested in the asynchronous datastore commands. How does it work behind the scenes? I'm using the low level datastore API and think asynchronous writes could be really useful for my project. I browsed through the low level api docs, but couldn't find a way to do an asynchronous command. -- 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.