[appengine-java] Re: JDO problem : oid is not instanceof javax.jdo.identity.ObjectIdentity
I managed to reproduce the issue with a simplified model. Notice that the same code seemed to pass the test yoesterday...not today. I can't attach files so I paste the model here @PersistenceCapable class Inner{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; } @PersistenceCapable class Outer{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; @Persistent Inner inner; public Outer(){ inner = new Inner(); } // public void setInner(Inner in){ // inner = in; // } } @PersistenceCapable class Container{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; @Persistent ArrayListOuter outers; @Persistent ArrayListInner inners; public void addOuters( int n){ outers = new ArrayListOuter(); for (int i = 0; i n; i++){ outers.add(new Outer()); } } public void addInners(int n){ inners = new ArrayListInner(); for (int i = 0; i n; i++){ inners.add(new Inner()); } } } public class TestJDOException { private final LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig()); private static final PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(transactions-optional); @Before public void setUp() throws Exception { helper.setUp(); } @After public void tearDown() throws Exception { helper.tearDown(); } @Test public void testAddInners(){ Key key = null; Container container = new Container(); container.addInners(1); PersistenceManager pm = pmf.getPersistenceManager(); try{ pm.makePersistent(container); key = container.key; } finally{ pm.close(); } pm = pmf.getPersistenceManager(); try{ container = pm.getObjectById(Container.class, key); System.out.println(container.inners); System.out.println(container.outers); } finally{ pm.close(); } } @Test public void testAddOuters(){ Key key = null; Container container = new Container(); container.addOuters(1); PersistenceManager pm = pmf.getPersistenceManager(); try{ pm.makePersistent(container); key = container.key; } finally{ pm.close(); } pm = pmf.getPersistenceManager(); try{ container = pm.getObjectById(Container.class, key); System.out.println(container.inners); System.out.println(container.outers); } finally{ pm.close(); } } } First test passes, second fails. Every test adding Outers fails as well. Thanks to everybody Lorenzo -- 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: JDO problem : oid is not instanceof javax.jdo.identity.ObjectIdentity
I managed to reproduce the issue with a simplified model. Notice that the same code seemed to pass the test yoesterday...not today. I can't attach files so I paste the model here @PersistenceCapable class Inner{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; } @PersistenceCapable class Outer{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; @Persistent Inner inner; public Outer(){ inner = new Inner(); } // public void setInner(Inner in){ // inner = in; // } } @PersistenceCapable class Container{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; @Persistent ArrayListOuter outers; @Persistent ArrayListInner inners; public void addOuters( int n){ outers = new ArrayListOuter(); for (int i = 0; i n; i++){ outers.add(new Outer()); } } public void addInners(int n){ inners = new ArrayListInner(); for (int i = 0; i n; i++){ inners.add(new Inner()); } } } public class TestJDOException { private final LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig()); private static final PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(transactions-optional); @Before public void setUp() throws Exception { helper.setUp(); } @After public void tearDown() throws Exception { helper.tearDown(); } @Test public void testAddInners(){ Key key = null; Container container = new Container(); container.addInners(1); PersistenceManager pm = pmf.getPersistenceManager(); try{ pm.makePersistent(container); key = container.key; } finally{ pm.close(); } pm = pmf.getPersistenceManager(); try{ container = pm.getObjectById(Container.class, key); System.out.println(container.inners); System.out.println(container.outers); } finally{ pm.close(); } } @Test public void testAddOuters(){ Key key = null; Container container = new Container(); container.addOuters(1); PersistenceManager pm = pmf.getPersistenceManager(); try{ pm.makePersistent(container); key = container.key; } finally{ pm.close(); } pm = pmf.getPersistenceManager(); try{ container = pm.getObjectById(Container.class, key); System.out.println(container.inners); System.out.println(container.outers); } finally{ pm.close(); } } } First test passes, second fails. Every test adding Outers fails as well. Thanks to everybody Lorenzo -- 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: JDO problem : oid is not instanceof javax.jdo.identity.ObjectIdentity
Looks like the problem is due to a combination of two factors: *Class Inner has two parents, Outer and Container AND *Class Container mantains a list of Inners. Changing to @PersistenceCapable class Container{ @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) Key key; @Persistent ArrayListOuter outers; @Persistent Inner inners; public void addOuters( int n){ outers = new ArrayListOuter(); for (int i = 0; i n; i++){ outers.add(new Outer()); } } public void addInners(int n){ for (int i = 0; i n; i++){ inner = new Inner(); } } } Makes everything work fine. I have a very similar model which works well in production (it's been up for nearly one month now). Hope this helps people facing similar issues. Maybe a short note in documentation could help. Regards Lorenzo -- 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: Fwd: entity update question
Incorrect, Vik. You do not need to call pm.makePersistent(e) in order to save changes made to an already persistent object. You use makePersistent(..) to cause new instances to become persistent, to merge detached instance state into the persistence context, or to attach detached instances into the persistence context in place. The act of changing the state of a persistence capable instance marks the instance as dirty, which JDO will then flush at or before the commit of the transaction governing your operation. Calling pm.makePersistent(x) on an instance x that is already persistent is a no-op. If x is detached and you want to merge the changes incurred while detached into the persistent object graph, then do the following: Employee persistentEmployee = pm.makePersistent(detachedEmployee); The PersistenceManager will take the detachedEmployee, find its persistent counterpart by id (persistentEmployee), apply any changes found in detachedEmployee to persistentEmployee, then return persistentEmployee. This happens assuming that the option javax.jdo.option.CopyOnAttach is true. If false and the PM has no Employee with that oid currently in the persistence context, then detachedEmployee itself transitions to persistent-dirty and is itself returned. If false and the PM already has an Employee with the same oid in the persistence context, then a JDOUserException will be thrown. I highly recommend a read of the JDO specification. It's really well written, if I don't say so myself... :) HTH, Matthew JDO Expert Group Member On Oct 13, 1:56 pm, Cyrille Vincey crll...@gmail.com wrote: Yes you do. From: Vik vik@gmail.com Reply-To: google-appengine-java@googlegroups.com Date: Wed, 13 Oct 2010 18:47:33 +0530 To: Google App Engine for Java google-appengine-java@googlegroups.com Subject: [appengine-java] Fwd: entity update question Hie I do for create like try{ Employee e = new Employee(); pm.makePersistent(e); }finally(){ pm.close(); } For update case I am getting the entity by id and updating one of the attribute like Employee e = pm.getObectById(empPK, Employee.class); e.setSalary(1000); the question is do i need to call the below statement in this case as well? pm.makePersistent(e) Thankx and Regards Vik Founderwww.sakshum.comhttp://www.sakshum.comwww.sakshum.blogspot.comhttp://www.sakshum.blogspot.com -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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] Content-Length header on POST request to GAE
Dear community, I've searched on Google and on this forum for an answer to my question, but nothing turned up, so here goes: I am trying to set the Content-Length header in my response from within the servlet, like this: response.setContentLength(someString.getBytes().length); The request is a POST request. It works on the test-server started from within Eclipse (and tested with curl), it doesn't work on the GAE production server -- the header field Content-Length simply gets discarded. These are the headers from the response on GAE production: HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Date: Thu, 14 Oct 2010 13:24:48 GMT Server: Google Frontend Cache-Control: private, x-gzip-ok= Transfer-Encoding: chunked Does it have something to do with the compression and/or the chunked encoding? Is it still possible to set the content-length somehow? If not, why does GAE supress this header? Thank you very much in advance! Regards, Markus -- 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] HtmlUnit support on GAE for GWT crawlability
This is not 100% mature, but it is a beginning http://code.google.com/p/guit-ajax-crawler/ On Wed, Oct 13, 2010 at 11:25 PM, brucko geoff.bruck...@gmail.com wrote: This is doable. After sorting through the various forums, I decided to write a blog to put what I did all in one place. The biggest problem now appears to be startup times for your instance on App Engine resulting in timeouts. The other thing to watch is to make sure that you don't use the redirects in an irresponsible way leading to infinite loops. Blog is here. How to Make Google AppEngine Applications Ajax Crawlablehttp://www.ozdroid.com/#%21BLOG/2010/10/12/How_to_Make_Google_AppEngine_Applications_Ajax_Crawlable Geoff -- 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. -- Guit: Elegant, beautiful, modular and *production ready* gwt applications. http://code.google.com/p/guit/ -- 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] Strange exception with my app
Hi google appengine team, Since today, I have been getting continuously the exception reported below. Yesterday I am not sure, but the day before yesterday it worked for sure. I have more apps that use the same library and all of them keep throwing the same exception. You can reproduce it uploading this xsl file: http://www.4shared.com/file/uefUC7KX/simple.html on this servlet: http://almaoffice0.appspot.com/testPDF.jsp app id: almaoffice0 and domodentweb. In the development server, everything works fine (just like before). I need information about the issue pretty fast because the second app is a production one and I need to know what decision to take. Thanks in advance. Uncaught exception from servlet java.lang.NoClassDefFoundError: sun/dc/path/PathException at org.apache.xmlgraphics.java2d.GraphicContext.init(GraphicContext.java: 93) at org.apache.fop.render.intermediate.IFGraphicContext.init(IFGraphicContext.java: 42) at org.apache.fop.render.intermediate.IFRenderer.init(IFRenderer.java: 127) at org.apache.fop.render.RendererFactory.createRendererForDocumentHandler(RendererFactory.java: 313) at org.apache.fop.render.RendererFactory.tryIFDocumentHandlerMaker(RendererFactory.java: 290) at org.apache.fop.render.RendererFactory.createRenderer(RendererFactory.java: 270) at org.apache.fop.area.RenderPagesModel.init(RenderPagesModel.java: 69) at org.apache.fop.area.AreaTreeHandler.setupModel(AreaTreeHandler.java: 130) at org.apache.fop.area.AreaTreeHandler.init(AreaTreeHandler.java: 102) at org.apache.fop.render.RendererFactory.createFOEventHandler(RendererFactory.java: 359) at org.apache.fop.fo.FOTreeBuilder.init(FOTreeBuilder.java:105) at org.apache.fop.apps.Fop.createDefaultHandler(Fop.java:100) at org.apache.fop.apps.Fop.init(Fop.java:78) at org.apache.fop.apps.FopFactory.newFop(FopFactory.java:254) at org.apache.fop.apps.FopFactory.newFop(FopFactory.java:231) at cri.domodentweb.server.servlets.GenUserCalendarMemoPDF.doGet(GenUserCalendarMemoPDF.java: 166) at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: 511) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1166) at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java: 97) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java: 35) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 388) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 418) at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java: 238) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 542) at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:923) at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java: 76) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java: 135) at com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java: 261) at com.google.apphosting.base.RuntimePb$EvaluationRuntime $6.handleBlockingRequest(RuntimePb.java:8483) at com.google.apphosting.base.RuntimePb$EvaluationRuntime $6.handleBlockingRequest(RuntimePb.java:8481) at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java: 24) at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java: 418) at com.google.net.rpc.impl.Server$RpcTask.runInContext(Server.java: 572) at com.google.tracing.TraceContext$TraceContextRunnable $1.run(TraceContext.java:448) at
[appengine-java] Re: Need to include com.google.gdata.client in the deployment for GAE?
Thanks Ikai. Are there any plans to include GData Client to the App Engine? Saqib On Oct 7, 6:50 pm, Ikai Lan (Google) ikai.l+gro...@google.com wrote: You have to include it. The gdata client is not available server side. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter:http://twitter.com/app_engine On Thu, Oct 7, 2010 at 1:42 PM, Saqib Ali docbook@gmail.com wrote: Hello All, I am working on a GAE App that will talk using Google Spreadsheet API w/ OAuth. Do I need to include com.google.gdata.client in the deployment package, or is it already available on GAE? Thanks, Saqib -- 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] Re: Need to include com.google.gdata.client in the deployment for GAE?
Not at the moment, though the new builtins function in app.yaml would certainly allow for it. The reason I think it wouldn't is because the GData client isn't maintained by a team that works closely with App Engine, but if there is a demand, there's nothing else really holding us back. I don't see including it as that big of a deal, though, so in my eyes this feature would be low priority. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger: http://googleappengine.blogspot.com Reddit: http://www.reddit.com/r/appengine Twitter: http://twitter.com/app_engine On Thu, Oct 14, 2010 at 9:19 AM, Saqib Ali docbook@gmail.com wrote: Thanks Ikai. Are there any plans to include GData Client to the App Engine? Saqib On Oct 7, 6:50 pm, Ikai Lan (Google) ikai.l+gro...@google.comikai.l%2bgro...@google.com wrote: You have to include it. The gdata client is not available server side. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter:http://twitter.com/app_engine On Thu, Oct 7, 2010 at 1:42 PM, Saqib Ali docbook@gmail.com wrote: Hello All, I am working on a GAE App that will talk using Google Spreadsheet API w/ OAuth. Do I need to include com.google.gdata.client in the deployment package, or is it already available on GAE? Thanks, Saqib -- 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.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.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] HtmlUnit support on GAE for GWT crawlability
Awesome! It's been submitted to the App Engine Reddit: http://www.reddit.com/r/AppEngine/comments/dr9c4/making_htmlunit_work_with_gwt_and_app_engine_for/ -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger: http://googleappengine.blogspot.com Reddit: http://www.reddit.com/r/appengine Twitter: http://twitter.com/app_engine On Thu, Oct 14, 2010 at 8:16 AM, Gal Dolber gal.dol...@gmail.com wrote: This is not 100% mature, but it is a beginning http://code.google.com/p/guit-ajax-crawler/ On Wed, Oct 13, 2010 at 11:25 PM, brucko geoff.bruck...@gmail.com wrote: This is doable. After sorting through the various forums, I decided to write a blog to put what I did all in one place. The biggest problem now appears to be startup times for your instance on App Engine resulting in timeouts. The other thing to watch is to make sure that you don't use the redirects in an irresponsible way leading to infinite loops. Blog is here. How to Make Google AppEngine Applications Ajax Crawlablehttp://www.ozdroid.com/#%21BLOG/2010/10/12/How_to_Make_Google_AppEngine_Applications_Ajax_Crawlable Geoff -- 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. -- Guit: Elegant, beautiful, modular and *production ready* gwt applications. http://code.google.com/p/guit/ -- 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: Fwd: entity update question
...which, by the way, can be found for JDO 3.0 at http://jcp.org/aboutJava/communityprocess/mrel/jsr243/index3.html The section in question here is 12.6.7, p.124, Make instances persistent. --matthew On Oct 14, 8:34 am, MatthewAdams matthewadam...@gmail.com wrote: I highly recommend a read of the JDO specification. It's really well written, if I don't say so myself... :) -- 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] protobuf storage with JDO
Hello, I make a basic application that store simple java object using objectify I also make a spring service that create and return protobuf object as the protobuf object is nearly the same that the object that I store in big table I wonder if there was a standard way to store protobuf object in the datastore as objectify and JDO use annotation and that I will not anoted generated protobuf object perhaps someone as a sample / tutorial of the AddressBook protobuf in appengine that store object in the datastore -- 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] JPA query + missing the obvious?
I have this query: Query query = getEM().createQuery(select s from Subscription s where s.clientId = ?1 and s.topicId = ?2); query.setParameter(1, client.getId()); query.setParameter(2, topic.getId()); return getSingleResult(query); I'm pretty sure it should return some results - the proper data is persisted before this, but yet, I don't get any results. Which obvious thing am I missing? My entity class: @Entity public class Subscription extends AbstractEntity { private static long serialVersionUID = 1l; private Long clientId; private Long topicId; public Long getClientId() { return clientId; } public void setClientId(Long client) { this.clientId = client; } public Long getTopicId() { return topicId; } public void setTopicId(Long topicId) { this.topicId = topicId; } } -- 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: JPA query + missing the obvious?
A missing info -- the matching data is persisted before, in a separate/ different transaction. -- 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] SDK 1.3.8 released!
Hello App Engine Developers! We're very happy to announce that SDK 1.3.8 is released today. There are many new cool features, so please download the new SDK and enjoy it! You can download the new SDK from: http://code.google.com/appengine/downloads.html Our blog post includes some screenshots of new features in admin console: http://googleappengine.blogspot.com/2010/10/new-app-engine-sdk-138-includes-new.html Here are release notes: Java --- Version 1.3.8 = - You can run task queue tasks immediately from the admin console. - Added an OutputSettings class to the Images API to specify the JPEG encoding quality when running in production. - Support for login of multiple Google accounts within an app, and longer login sessions. For more information see: http://www.google.com/support/accounts/bin/answer.py?answer=181599 - In queue.xml, the maximum allowed bucket size is now 100. - Removed limits on zigzag merge-join queries. Therefore the error The built-in indices are not efficient enough for this query and your data. Please add a composite index for this query. will no longer be thrown in most cases, enabling more types of queries without indexes. - The whitelist has been updated to include java.net.InetAddress and some interfaces and abstract classes in javax.xml.soap, including javax.xml.soap.SOAPMessage. - Fixed an issue reserving App Ids by owners of emails containing periods, multiple cases, and googlemail.com address. http://code.google.com/p/googleappengine/issues/detail?id=1196 - Fixed an issue where TaskOptions had no public getters, making testing impossible. http://code.google.com/p/googleappengine/issues/detail?id=3243 - Fixed an issue on the development server where PNGs were being returned as JPEGs. http://code.google.com/p/googleappengine/issues/detail?id=3661 Python - Version 1.3.8 == - Builtin app.yaml handlers are available for common application functions, such as appstats. http://code.google.com/appengine/docs/python/config/appconfig.html#Builtin_Handlers - The Admin Console now provides an experimental tool to delete all entities in the datastore or all entities of a given type. This is available only if enabled using the datastore_admin builtin. Deleting entities will count against application quota. http://code.google.com/appengine/docs/python/datastore/creatinggettinganddeletingdata.html#Deleting_Entities_in_Bulk - You can run task queue tasks immediately from the Admin Console. - You can now specify the quality of JPEG images via the Image API's execute_transforms function. Available in production only. - Support for login of multiple Google accounts within an app, and longer login sessions. For more information see: http://www.google.com/support/accounts/bin/answer.py?answer=181599 - In queue.yaml, the maximum allowed bucket size is now 100. - Precompilation is now enabled by default. To disable, use the --no_precompilation flag when updating your app. - BlobInfo now has an open() method that returns a BlobReader. - BlobReader now accepts a BlobInfo. - Removed limits on zigzag merge-join queries. Therefore the error The built-in indices are not efficient enough for this query and your data. Please add a composite index for this query. will no longer be thrown in most cases, enabling more types of queries without indexes. - Fixed an issue with task queue tasks not running on the dev_appserver when using Python 2.6. - Fixed an issue on the dev_appserver where auto task running wasn't working for BulkAdd. - Fixed an issue reserving App Ids by owners of similarly-named mails accounts containing periods, multiple cases, and googlemail.com address. http://code.google.com/p/googleappengine/issues/detail?id=1196 - Fixed an issue on the development server where PNGs were being returned as JPEGs. http://code.google.com/p/googleappengine/issues/detail?id=3661 -- Takashi Matsuo Developer Relations Developer Advocate for Google App Engine/iGoogle Google Japan, Inc. -- 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] Any changes to access levels in com.google.appengine.api.datastore recently?
Has anything changed with class access levels (public vs. private) in the production datastore code in the last day or so? I've had a Clojure app running for several weeks and starting last night, whenever I try to access the datastore, I get the error below. It could be a bug in the library I'm using (appengine-clj) or even in Clojure's dispatch code, but I just want to understand if anything has changed server-side that might have triggered it. The application still works on the dev appserver v1.3.7. java.lang.IllegalArgumentException: Can't call public method of non-public class: public com.google.appengine.api.datastore.Transaction com.google.appengine.api.datastore.BaseDatastoreService.getCurrentTransaction(com.google.appengine.api.datastore.Transaction) at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:85) at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:28) at appengine.datastore.service$current_transaction.invoke(service.clj:72) at appengine.datastore.service$put_entity.invoke(service.clj:131) at appengine.datastore.service$fn__176.invoke(service.clj:149) at appengine.datastore.service$fn__136$G__116__141.invoke(service.clj:10) at com.redaranj.ledes.service.servlet$fn__1902$fn__1903.invoke(servlet.clj:17) at compojure.core$routes$fn__1706$fn__1707.invoke(core.clj:72) at clojure.core$some.invokeStatic(core.clj:2297) at compojure.core$routes$fn__1706.invoke(core.clj:71) at ring.middleware.params$wrap_params$fn__1468.invoke(params.clj:77) at ring.middleware.cookies$wrap_cookies$fn__1559.invoke(cookies.clj:123) at ring.util.servlet$make_service_method$fn__1881.invoke(servlet.clj:117) at com.redaranj.ledes.service.servlet$_service.invoke(servlet.clj:19) at com.redaranj.ledes.service.servlet.service(Unknown Source) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:97) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:238) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923) at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:135) at com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:261) at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:8483) at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:8481) at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24) at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:418) at com.google.net.rpc.impl.Server$RpcTask.runInContext(Server.java:572) at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:448) at com.google.tracing.TraceContext.runInContext(TraceContext.java:688) at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:326) at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:318) at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:446) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:636) -- 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
[appengine-java] help with redirecting user after authentication
hello people; i have a question about user authentication, i want to redirect the http request, to a custom url, after the user performs login, actually the framework redirects to the same url that host the app. thanks a lot fd -- 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] app engine log service
An App Engine application in sandbox cannot write to the filesystem. If I use log4j for my application, It will write log data into local files. Is the log file distributed in the server? Dose the server side replaces the original log4j jar with your own ones ? Dose Google has some limitation on the size of log files? Thanks very much! -- You 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 query
Hi @ all, i have a problem with a query, What I want to do, is to search in a String[] for keywords. I use the String.startsWith(a) function. When I build the qery like this: select from ... where myArray.startsWith(keyword), everything works fine. But the problem is, when I build a query, where I want to search for two keywords, the query doesnt give me results. Example: select from ... where myArray.startsWith(keyword1) myArray.stratsWith(keyword2) I don´t know why this doenst work, maybe somebody can help me?? Thanks. Greets Alex -- You 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] what xml lib use
hi gloogers we are starting to use a xml in ours gae enviroment we need choose one external library to manage xml object we can user sax, minidom and probably more. I would like start learning libray that google use internaly thinking in a future appear a xml lib integrate in gae and may be is the same we have learned. Please can you help me. thanks -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: what xml lib use
Hi I am going to assume your using python. You should look at elementtree. Its already in the standard python distribution and for many tasks its the simplest to use if it's all your own code. If you using some other tools then they may have dependencies on other specific parsers. If you have a look at googles own gdata library then you will find the atom.core uses elementtree for all of its xml parsing. So I think elementtree is a really good place to start. http://docs.python.org/library/xml.etree.elementtree.html Disregard all of this if you not using python ;-) Regards Tim On Oct 14, 3:28 pm, alf alberto@gmail.com wrote: hi gloogers we are starting to use a xml in ours gae enviroment we need choose one external library to manage xml object we can user sax, minidom and probably more. I would like start learning libray that google use internaly thinking in a future appear a xml lib integrate in gae and may be is the same we have learned. Please can you help me. thanks -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: what xml lib use
Also you should note in appengine the only way you have to talk to any remote service is via urlfetch (or urllib2 which is layered over urlfetch) or the xmpp service. You can't open sockets etc or use any non http(s) based protocol in appengine. Rgds Tim On Oct 14, 4:30 pm, Tim Hoffman zutes...@gmail.com wrote: Hi I am going to assume your using python. You should look at elementtree. Its already in the standard python distribution and for many tasks its the simplest to use if it's all your own code. If you using some other tools then they may have dependencies on other specific parsers. If you have a look at googles own gdata library then you will find the atom.core uses elementtree for all of its xml parsing. So I think elementtree is a really good place to start.http://docs.python.org/library/xml.etree.elementtree.html Disregard all of this if you not using python ;-) Regards Tim On Oct 14, 3:28 pm, alf alberto@gmail.com wrote: hi gloogers we are starting to use a xml in ours gae enviroment we need choose one external library to manage xml object we can user sax, minidom and probably more. I would like start learning libray that google use internaly thinking in a future appear a xml lib integrate in gae and may be is the same we have learned. Please can you help me. thanks -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Fan-in with materialized views: A sketch
Robert, I took a brief inspection at your code and seems very cool. Exactly what i was lloking for for my report generation and such. I'm looking forward for more examples, but it seems a very valuable addition for our toolbox. Thanks a lot! On Wed, Oct 13, 2010 at 9:20 PM, Carles Gonzalez carle...@gmail.com wrote: Neat! I'm going to see this code, hopefully I'll understand something :) On Wednesday, October 13, 2010, Robert Kluin robert.kl...@gmail.com wrote: Hey Dmitry, In case it might help, I pushed some code to bitbucket. At the moment I would (personally) say the code is not too pretty, but it works well. :) http://bitbucket.org/thebobert/slagg Sorry it does not really have good documentation at the moment, but I think the basic example I threw together will give you a good idea of how to use it. I need to do another cleanup pass over the API to make a few more refinements. I pulled this code out of one of my apps, and tried to quickly refactor it to be a bit more generic. We are currently using basically the same code in three apps to do some really complex calculations. As soon as I get time I will get an example up showing how to use it for neat stuff, like overall, yearly, monthly, and daily aggregates across multiple values (like total dollars and quantity). The cool thing is that you can do all of those aggregations across various groupings, like customer, company, contact, and sales-person, at once. I'll get that code pushed out in the next few days. Would love to get some feedback on it. Robert On Tue, Oct 12, 2010 at 17:26, Dmitry dmitry.lukas...@gmail.com wrote: Ben, thanks for your code! I'm trying to understand all this stuff too... Robert, any success with your library? May be you've already done all stuff we are trying to implement... p.s. where is Brett S.:) would like to hear his comments on this On Sep 21, 1:49 pm, Ben pondneverfree...@yahoo.com wrote: Thanks for your insights. I would love feedback on this implementation (Brett S. suggested we send in our code for this) http://pastebin.com/3pUhFdk8 This implementation is for just one materialized view row at a time (e.g. a simple counter, no presence markers). Hopefully putting an ETA on the transactional task will relieve the write pressure, since usually it should be an old update with an out-of-date sequence number and be discarded (the update having already been completed in batch by the fork-join-queue). I'd love to generalize this to do more than one materialized view row but thought I'd get feedback first. Thanks, Ben On Sep 17, 7:30 am, Robert Kluin robert.kl...@gmail.com wrote: Responses inline. On Thu, Sep 16, 2010 at 17:32, Ben pondneverfree...@yahoo.com wrote: I have a question about Brett Slatkin's talk at I/O 2010 on data pipelines. The question is about slide #67 of his pdf, corresponding to minute 51:30 of his talk http://code.google.com/events/io/2010/sessions/high-throughput-data-p... I am wondering what is supposed to happen in the transactional task (bullet point 2c). Would these updates to the materialized view cause you to write too frequently to the entity group containing the materialized view? I think there are really two different approaches you can use to insert your work models. 1) The work models get added to the original entity's group. So, inside of the original transaction you do not write to the entity group containing the materialized view -- so no contention on it. Commit the transaction and proceed to step 3. 2) You kick off a transactional task to insert the work model, or fan-out more tasks to create work models :). Then you proceed to step 3. You can use method 1 if you have only a few aggregates. If you have more aggregates use the second method. I have a library I am almost ready to open source that makes method 2 really easy, so you can have lots of aggregates. I'll post to this group when I release it. And a related question, what happens if there is a failure just after the transaction in bullet #2, but right before the named task gets inserted in bullet #3. In my current implementation I just left out the transactional task (bullet point 2c) but I think that causes me to lose the eventual consistency. Failure between steps 2 and 3 just means _that_ particular update will not try to kick-off, ie insert, the fan-in (aggregation) task. But it might have already been inserted by the previous update, or the next update. However, if nothing else kicks of the fan-in task you will need some periodic cleanup method to catch the update and kick of the fan-in task. Depending on exactly how you implemented step 2 you may not need a transactional task. Robert Thanks! -- You received this message
[google-appengine] Re: what xml lib use
yes we are using python. ths On Oct 14, 9:28 am, alf alberto@gmail.com wrote: hi gloogers we are starting to use a xml in ours gae enviroment we need choose one external library to manage xml object we can user sax, minidom and probably more. I would like start learning libray that google use internaly thinking in a future appear a xml lib integrate in gae and may be is the same we have learned. Please can you help me. thanks -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Outage of site due to cannot import name datastore_stub_util
This is a request for help from someone at google. Appid: fpgamesserver.appspot.com At 3.53pm on Oct 13 we had an error that said cannot import name datastore_stub_util due to the launch of a new process. It's not clear why a new process was launched since the previous requests were not CPU intensive. It's possible that this one request was, but I can't quite tell why. Every subsequent request to my application results in an error: 'NoneType' object has no attribute 'exception'. This error references a line main.py which says: logging.exception('Exception in request:') Requests to the site (fpgamesserver.appspot.com/heist) return this error: Error: Server Error The server encountered an error and could not complete your request. If the problem persists, please report your problem and mention this error message and the query that caused it. The first error that seems to have been triggered by the launch of a new process is: 10-13 03:54PM 39.280 /heist/ 500 2722ms 1108cpu_ms 0kb Mozilla/ 5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/ 20100914 Firefox/3.6.10,gzip(gfe) See details 65.46.75.178 - - [13/Oct/2010:15:54:42 -0700] GET /heist/ HTTP/ 1.1 500 0 - Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10,gzip(gfe) fpgamesserver.appspot.com ms=2722 cpu_ms=1108 api_cpu_ms=0 cpm_usd=0.030836 loading_request=1 D 10-13 03:54PM 41.340 FILTER_LIST: [{'PATH_INFO': '!.*/admin/.*'}] D 10-13 03:54PM 41.341 Match on {'PATH_INFO': '!.*/admin/.*'} I 10-13 03:54PM 41.537 Hook registered I 10-13 03:54PM 41.538 DatastoreProxy initialized E 10-13 03:54PM 41.912 Exception in request: Traceback (most recent call last): File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/base.py, line 68, in get_response callback, callback_args, callback_kwargs = resolver.resolve(request.path) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 162, in resolve sub_match = pattern.resolve(new_path) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 118, in resolve return self.callback, args, kwargs File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 127, in _get_callback raise ViewDoesNotExist, Could not import %s. Error was: %s % (mod_name, str(e)) ViewDoesNotExist: Could not import freshplanet.framework.views. Error was: cannot import name datastore_stub_util E 10-13 03:54PM 41.993 class 'django.core.exceptions.ViewDoesNotExist': Tried freshplanet.framework.views.get500. Error was: cannot import name datastore_stub_util Traceback (most recent call last): File /base/data/home/apps/fpgamesserver/0-0-4-first-caper- online.345419715554941267/main.py, line 50, in module main() File /base/data/home/apps/fpgamesserver/0-0-4-first-caper- online.345419715554941267/main.py, line 47, in main util.run_wsgi_app(application) File /base/python_runtime/python_lib/versions/1/google/ appengine/ext/webapp/util.py, line 97, in run_wsgi_app run_bare_wsgi_app(add_wsgi_middleware(application)) File /base/python_runtime/python_lib/versions/1/google/ appengine/ext/webapp/util.py, line 115, in run_bare_wsgi_app result = application(env, _start_response) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/wsgi.py, line 189, in __call__ response = self.get_response(request) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/base.py, line 125, in get_response callback, param_dict = resolver.resolve500() File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 200, in resolve500 return self._resolve_special('500') File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 194, in _resolve_special raise ViewDoesNotExist, Tried %s. Error was: %s % (callback, str(e)) I 10-13 03:54PM 42.000 This request caused a new process to be started for your application, and thus caused your application code to be loaded for the first time. This request may thus take longer and use more CPU than a typical request for your application. It's not clear why a new process was launched since the previous request was at 3.46pm and does not seem to be overloaded. But it's possible that the previous request to that, which took 1380cpu_ms triggered this process to launch? Also, why is this process corrupted and is there a way to recover it automatically or avoid this sort of outage? Is this something that I'm just
Re: [google-appengine] Problem with query
Hey Alex, I am guessing that under the hood App Engine breaks the startsWith into two filters that looks something like: myArray = keyword AND myArray keyword + z So when you add the second startsWith filter, you get: myArray = keyword AND myArray keyword + z AND myArray = otherword AND myArray otherword2 + z That is not going to work. You may be able to validate my theory by making the two keywords the same and seeing if you get results. Robert On Thu, Oct 14, 2010 at 03:17, AlexG alexander.gauss.ax...@googlemail.com wrote: Hi @ all, i have a problem with a query, What I want to do, is to search in a String[] for keywords. I use the String.startsWith(a) function. When I build the qery like this: select from ... where myArray.startsWith(keyword), everything works fine. But the problem is, when I build a query, where I want to search for two keywords, the query doesnt give me results. Example: select from ... where myArray.startsWith(keyword1) myArray.stratsWith(keyword2) I don´t know why this doenst work, maybe somebody can help me?? Thanks. Greets Alex -- You 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. -- You 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] Outage of site due to cannot import name datastore_stub_util
You might try to deploy your code to a new version, then set the new version to default. That will cause your app to reload. I think Tim has a good idea, deploy the same code to two versions. Then when you get a stuck / corrupt instance you can switch the default version and be back in business. Robert On Thu, Oct 14, 2010 at 10:22, cybertoast cyberto...@gmail.com wrote: This is a request for help from someone at google. Appid: fpgamesserver.appspot.com At 3.53pm on Oct 13 we had an error that said cannot import name datastore_stub_util due to the launch of a new process. It's not clear why a new process was launched since the previous requests were not CPU intensive. It's possible that this one request was, but I can't quite tell why. Every subsequent request to my application results in an error: 'NoneType' object has no attribute 'exception'. This error references a line main.py which says: logging.exception('Exception in request:') Requests to the site (fpgamesserver.appspot.com/heist) return this error: Error: Server Error The server encountered an error and could not complete your request. If the problem persists, please report your problem and mention this error message and the query that caused it. The first error that seems to have been triggered by the launch of a new process is: 10-13 03:54PM 39.280 /heist/ 500 2722ms 1108cpu_ms 0kb Mozilla/ 5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/ 20100914 Firefox/3.6.10,gzip(gfe) See details 65.46.75.178 - - [13/Oct/2010:15:54:42 -0700] GET /heist/ HTTP/ 1.1 500 0 - Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10,gzip(gfe) fpgamesserver.appspot.com ms=2722 cpu_ms=1108 api_cpu_ms=0 cpm_usd=0.030836 loading_request=1 D 10-13 03:54PM 41.340 FILTER_LIST: [{'PATH_INFO': '!.*/admin/.*'}] D 10-13 03:54PM 41.341 Match on {'PATH_INFO': '!.*/admin/.*'} I 10-13 03:54PM 41.537 Hook registered I 10-13 03:54PM 41.538 DatastoreProxy initialized E 10-13 03:54PM 41.912 Exception in request: Traceback (most recent call last): File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/base.py, line 68, in get_response callback, callback_args, callback_kwargs = resolver.resolve(request.path) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 162, in resolve sub_match = pattern.resolve(new_path) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 118, in resolve return self.callback, args, kwargs File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 127, in _get_callback raise ViewDoesNotExist, Could not import %s. Error was: %s % (mod_name, str(e)) ViewDoesNotExist: Could not import freshplanet.framework.views. Error was: cannot import name datastore_stub_util E 10-13 03:54PM 41.993 class 'django.core.exceptions.ViewDoesNotExist': Tried freshplanet.framework.views.get500. Error was: cannot import name datastore_stub_util Traceback (most recent call last): File /base/data/home/apps/fpgamesserver/0-0-4-first-caper- online.345419715554941267/main.py, line 50, in module main() File /base/data/home/apps/fpgamesserver/0-0-4-first-caper- online.345419715554941267/main.py, line 47, in main util.run_wsgi_app(application) File /base/python_runtime/python_lib/versions/1/google/ appengine/ext/webapp/util.py, line 97, in run_wsgi_app run_bare_wsgi_app(add_wsgi_middleware(application)) File /base/python_runtime/python_lib/versions/1/google/ appengine/ext/webapp/util.py, line 115, in run_bare_wsgi_app result = application(env, _start_response) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/wsgi.py, line 189, in __call__ response = self.get_response(request) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/base.py, line 125, in get_response callback, param_dict = resolver.resolve500() File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 200, in resolve500 return self._resolve_special('500') File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 194, in _resolve_special raise ViewDoesNotExist, Tried %s. Error was: %s % (callback, str(e)) I 10-13 03:54PM 42.000 This request caused a new process to be started for your application, and thus caused your application code to be loaded for the first time. This request may thus take longer and use more
Re: [google-appengine] Fan-in with materialized views: A sketch
Hey Carles, Glad it seems helpful. I am hoping to get time today to push out some revisions and sample code. Robert On Thu, Oct 14, 2010 at 05:50, Carles Gonzalez carle...@gmail.com wrote: Robert, I took a brief inspection at your code and seems very cool. Exactly what i was lloking for for my report generation and such. I'm looking forward for more examples, but it seems a very valuable addition for our toolbox. Thanks a lot! On Wed, Oct 13, 2010 at 9:20 PM, Carles Gonzalez carle...@gmail.com wrote: Neat! I'm going to see this code, hopefully I'll understand something :) On Wednesday, October 13, 2010, Robert Kluin robert.kl...@gmail.com wrote: Hey Dmitry, In case it might help, I pushed some code to bitbucket. At the moment I would (personally) say the code is not too pretty, but it works well. :) http://bitbucket.org/thebobert/slagg Sorry it does not really have good documentation at the moment, but I think the basic example I threw together will give you a good idea of how to use it. I need to do another cleanup pass over the API to make a few more refinements. I pulled this code out of one of my apps, and tried to quickly refactor it to be a bit more generic. We are currently using basically the same code in three apps to do some really complex calculations. As soon as I get time I will get an example up showing how to use it for neat stuff, like overall, yearly, monthly, and daily aggregates across multiple values (like total dollars and quantity). The cool thing is that you can do all of those aggregations across various groupings, like customer, company, contact, and sales-person, at once. I'll get that code pushed out in the next few days. Would love to get some feedback on it. Robert On Tue, Oct 12, 2010 at 17:26, Dmitry dmitry.lukas...@gmail.com wrote: Ben, thanks for your code! I'm trying to understand all this stuff too... Robert, any success with your library? May be you've already done all stuff we are trying to implement... p.s. where is Brett S.:) would like to hear his comments on this On Sep 21, 1:49 pm, Ben pondneverfree...@yahoo.com wrote: Thanks for your insights. I would love feedback on this implementation (Brett S. suggested we send in our code for this)http://pastebin.com/3pUhFdk8 This implementation is for just one materialized view row at a time (e.g. a simple counter, no presence markers). Hopefully putting an ETA on the transactional task will relieve the write pressure, since usually it should be an old update with an out-of-date sequence number and be discarded (the update having already been completed in batch by the fork-join-queue). I'd love to generalize this to do more than one materialized view row but thought I'd get feedback first. Thanks, Ben On Sep 17, 7:30 am, Robert Kluin robert.kl...@gmail.com wrote: Responses inline. On Thu, Sep 16, 2010 at 17:32, Ben pondneverfree...@yahoo.com wrote: I have a question about Brett Slatkin's talk at I/O 2010 on data pipelines. The question is about slide #67 of his pdf, corresponding to minute 51:30 of his talk http://code.google.com/events/io/2010/sessions/high-throughput-data-p... I am wondering what is supposed to happen in the transactional task (bullet point 2c). Would these updates to the materialized view cause you to write too frequently to the entity group containing the materialized view? I think there are really two different approaches you can use to insert your work models. 1) The work models get added to the original entity's group. So, inside of the original transaction you do not write to the entity group containing the materialized view -- so no contention on it. Commit the transaction and proceed to step 3. 2) You kick off a transactional task to insert the work model, or fan-out more tasks to create work models :). Then you proceed to step 3. You can use method 1 if you have only a few aggregates. If you have more aggregates use the second method. I have a library I am almost ready to open source that makes method 2 really easy, so you can have lots of aggregates. I'll post to this group when I release it. And a related question, what happens if there is a failure just after the transaction in bullet #2, but right before the named task gets inserted in bullet #3. In my current implementation I just left out the transactional task (bullet point 2c) but I think that causes me to lose the eventual consistency. Failure between steps 2 and 3 just means _that_ particular update will not try to kick-off, ie insert, the fan-in (aggregation) task. But it might have already been inserted by the previous update, or the next update. However, if nothing else kicks of the fan-in task you will
[google-appengine] Need more memcache space
Hello, I need more memcache space, actually i have 2G and that is too less. Why i need more? I generate a userlist of 100onlines by a cron every 10minutes but i have see, my userlist is deleted when my website is on hightraffics. so to correct it i have updated my cron to generate a userlist every 1minute but that consume more ressources. APPID: devel-inchallah Cordially, Sahid -- You 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: Outage of site due to cannot import name datastore_stub_util
We are facing same issue from yesterday evening.. some time it throws error while loading the module and sometime deadline exceed error. There was no change in the application as such and and something at the infrastructure level is causing this. Error I am getting currently is 10-14 07:18AM 57.239 / 500 29033ms 500cpu_ms 0kb Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/ 6.0.472.63 Safari/534.3,gzip(gfe),gzip(gfe) 83.244.197.164 - - [14/Oct/2010:07:19:26 -0700] GET / HTTP/1.1 500 0 - Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.63 Safari/ 534.3,gzip(gfe),gzip(gfe) www.planneddeparture.com ms=29033 cpu_ms=500 api_cpu_ms=0 cpm_usd=0.013985 loading_request=1 pending_ms=424 E 10-14 07:19AM 26.268 class 'google.appengine.runtime.DeadlineExceededError': Traceback (most recent call last): File /base/data/home/apps/nilgiriapp/2.345491452186038764/main.py, line 32, in module import django.core.handlers.wsgi File /base/python_runtime/python_lib/versions/third_party/ django-1.1/django/core/handlers/wsgi.py, line 11, in module from django.core.urlresolvers import set_script_prefix File /base/python_runtime/python_lib/versions/third_party/ django-1.1/django/core/urlresolvers.py, line 8, in module I 10-14 07:19AM 26.271 This request caused a new process to be started for your application, and thus caused your application code to be loaded for the first time. This request may thus take longer and use more CPU than a typical request for your application. Will appreciate any help / support on this. On Oct 14, 3:22 pm, cybertoast cyberto...@gmail.com wrote: This is a request for help from someone at google. Appid: fpgamesserver.appspot.com At 3.53pm on Oct 13 we had an error that said cannot import name datastore_stub_util due to the launch of a new process. It's not clear why a new process was launched since the previous requests were not CPU intensive. It's possible that this one request was, but I can't quite tell why. Every subsequent request to my application results in an error: 'NoneType' object has no attribute 'exception'. This error references a line main.py which says: logging.exception('Exception in request:') Requests to the site (fpgamesserver.appspot.com/heist) return this error: Error: Server Error The server encountered an error and could not complete your request. If the problem persists, please report your problem and mention this error message and the query that caused it. The first error that seems to have been triggered by the launch of a new process is: 10-13 03:54PM 39.280 /heist/ 500 2722ms 1108cpu_ms 0kb Mozilla/ 5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/ 20100914 Firefox/3.6.10,gzip(gfe) See details 65.46.75.178 - - [13/Oct/2010:15:54:42 -0700] GET /heist/ HTTP/ 1.1 500 0 - Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10,gzip(gfe) fpgamesserver.appspot.com ms=2722 cpu_ms=1108 api_cpu_ms=0 cpm_usd=0.030836 loading_request=1 D 10-13 03:54PM 41.340 FILTER_LIST: [{'PATH_INFO': '!.*/admin/.*'}] D 10-13 03:54PM 41.341 Match on {'PATH_INFO': '!.*/admin/.*'} I 10-13 03:54PM 41.537 Hook registered I 10-13 03:54PM 41.538 DatastoreProxy initialized E 10-13 03:54PM 41.912 Exception in request: Traceback (most recent call last): File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/handlers/base.py, line 68, in get_response callback, callback_args, callback_kwargs = resolver.resolve(request.path) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 162, in resolve sub_match = pattern.resolve(new_path) File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 118, in resolve return self.callback, args, kwargs File /base/python_runtime/python_lib/versions/third_party/ django-0.96/django/core/urlresolvers.py, line 127, in _get_callback raise ViewDoesNotExist, Could not import %s. Error was: %s % (mod_name, str(e)) ViewDoesNotExist: Could not import freshplanet.framework.views. Error was: cannot import name datastore_stub_util E 10-13 03:54PM 41.993 class 'django.core.exceptions.ViewDoesNotExist': Tried freshplanet.framework.views.get500. Error was: cannot import name datastore_stub_util Traceback (most recent call last): File /base/data/home/apps/fpgamesserver/0-0-4-first-caper- online.345419715554941267/main.py, line 50, in module main() File /base/data/home/apps/fpgamesserver/0-0-4-first-caper- online.345419715554941267/main.py, line 47, in main util.run_wsgi_app(application) File
[google-appengine] Request was aborted after waiting too long to attempt to service your request
I got these all in a row: 10-13 03:03PM 43.032 /settings/account 500 10026ms 0cpu_ms 0kb Mozilla/ 5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.36 Safari/534.7,gzip(gfe),gzip(gfe) W 10-13 03:03PM 53.058 Request was aborted after waiting too long to attempt to service your request. This may happen sporadically when the App Engine serving cluster is und 10-13 03:03PM 42.652 /settings/numbering 500 10225ms 0cpu_ms 0kb Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.36 Safari/534.7,gzip(gfe),gzip(gfe) W 10-13 03:03PM 52.877 Request was aborted after waiting too long to attempt to service your request. This may happen sporadically when the App Engine serving cluster is und 10-13 03:03PM 32.537 /dashboard 500 10113ms 0cpu_ms 0kb AppEngine- Google; (+http://code.google.com/appengine) W 10-13 03:03PM 42.651 Request was aborted after waiting too long to attempt to service your request. This may happen sporadically when the App Engine serving cluster is und 10-13 03:01PM 41.751 /settings/users 500 52014ms 0cpu_ms 0kb Mozilla/ 5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.36 Safari/534.7,gzip(gfe),gzip(gfe) W 10-13 03:02PM 33.744 A serious problem was encountered with the process that handled this request, causing it to exit. This is likely to cause a new process to be used for 10-13 03:02PM 22.495 /dashboard 500 10016ms 0cpu_ms 0kb AppEngine- Google; (+http://code.google.com/appengine) W 10-13 03:02PM 32.512 Request was aborted after waiting too long to attempt to service your request. This may happen sporadically when the App Engine serving cluster is und 10-13 03:01PM 44.840 /settings/account 500 10021ms 0cpu_ms 0kb Mozilla/ 5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.36 Safari/534.7,gzip(gfe),gzip(gfe) W 10-13 03:01PM 54.861 Request was aborted after waiting too long to attempt to service your request. This may happen sporadically when the App Engine serving cluster is My App ID is lexmatter. Thanks for any help! Shaun -- You 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: Site not working after update
Tim Regarding The import error will be because you have a broken instance (failed on startup with DeadlineExceeded and can't run now due to the failed imports) or you haven't got a signals.py somewhere ;-) I am getting lots of ImportError and DeadlineExceedError now on my application (nilgiriapp). In fact from yesterday evening that's the only thing I am getting on my application. So my question is if how do we come out from this situation? I have tried switching version and that did not help. Thanks for your help. Thanks, Anand. On Oct 12, 11:49 am, Andrius A andriu...@gmail.com wrote: Thanks for your help guys! Site deployment finally worked! Jamie, is it working for you as well? Would be nice to get response from google, since dont know if site deployment fixed automagically or someone from google did something. Code bugs should not block the site deployment process. On 12 October 2010 08:45, Andrius A andriu...@gmail.com wrote: Thanks Tim, you are right, i made changes by wrapping model with timezones which is returning starttime as null. Its easy to fix, but deployment doesnt work anymore! Its stuck for waiting when new deployed site will become available.. On 12 Oct 2010 07:55, Tim Hoffman zutes...@gmail.com wrote: Hi For this error BadValueError: Property starttime is required it looks like you have changed your model to make starttime required and your trying to retrieve and entity that doesn't have a value for starttime. You will need to fix your entities if you want that property required. The import error will be because you have a broken instance (failed on startup with DeadlineExceeded and can't run now due to the failed imports) or you haven't got a signals.py somewhere ;-) T On Oct 12, 9:21 am, Andrew andriu...@gmail.com wrote: Hello, could someone from google have a look at site: bidshapeauction Site stopped working after update, the same code works fine on other app ids. We are getting different errors: type 'exceptions.ImportError': cannot import name signals or BadValueError: Property starttime is required Site is really slow to load. On google app engine I see anomaly with Memcache, anyone having issues? -- You 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] Google App Engine User Service redirection problem with IE
(THE FOLLOWING WAS ORIGINALLY POSTED IN THE GOOGLE GADGETS SUPPORT FORUM) Steps to reproduce issue: 1. Create a GAE Application that requires userservice.isUserLoggedIn() to return true. If not redirect to userservice.createLoginURL(your- app-url) 2. Add an iFrame or similar gadget to a Google Sites page. Set your GAE app as the content URL. The site should be on a Google Apps domain so that a Google Apps user must be logged in to access the site. 3. Access the page with Internet Explorer (I've been testing with version 8) Expected output: The hopeful expected output would be that the GAE app would immediately recognize that the user is logged in, and show its content. However, the workflow that seems to occur with Firefox and Chrome is as follows (and good enough for my purpose): 1. The user logs in to Google Apps before accessing the site. 2. The Sites page loads. 3. The gadget loads, and subsequently loads the GAE app. 4. The GAE app determines that the user is NOT logged in, and redirects the user to the generated login URL. 5. The resulting login URL pages recognizes that the user is already logged in, and redirects back to the GAE app 6. The GAE app now recognizes the user, and displays its content in the gadget's iframe. Actual results: With IE, the above workflow all seems to function the same with 2 exceptions: 1. The redirection to the login page and back seem to be slower, so that the login page is actually displayed in the gadget iframe for a brief moment. 2. Upon redirecting back to the GAE app, the app breaks out of the iframe filling the entire browser window. Any advice on how to prevent number 2 would be very helpful. Also, if anyone can advise on a way to have a GAE app's Userservice immediately recognize that the user is logged in without needing to do the login url loop would be even more helpful. RESPONSE IN GOOGLE GADGETS FORUM: The IE-specific issues are going to be related to App Engine and not gadgets, so I'd suggest asking this question in the App Engine forum. There are most likely headers being sent during App Engine authentication that direct some browsers (notably IE) to break out of frames. The App Engine team would know better than I if there are ways to mitigate this in certain contexts. -- You 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: Prerelease SDK 1.3.8 is out!
+1 On Oct 6, 7:04 am, tcg tomgu...@gmail.com wrote: +1 On Oct 6, 5:48 am, Greg g.fawc...@gmail.com wrote: On Oct 6, 1:28 pm, Ikai Lan (Google) ikai.l+gro...@google.com wrote: - The developer who uploaded an app version can download that version's code using the appcfg.py download_app command. I'm not at all happy about this. I know how frequent plaintive I lost my code how can I get it back? messages are in this group, but the write-only nature of appengine gave me a lot of confidence that our source code is safe. Now a single password is all that stands between our competitors and our IP. Why expose ALL users to risk (and open Google to lawsuits) for the sake of a few inexperienced developers? Star this post if you agree. I guess one solution would be to make downloading optional. A setting to disable source downloading in app.yaml would be safe, because uploading a new version would destroy the existing code. Greg. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-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: Cannot fetch dynamic content from the same app (URL Fetch API)
This can be worked around http://www.ozdroid.com/#!BLOG/2010/10/12/How_to_Make_Google_AppEngine_Applications_Ajax_Crawlable However, we have a new issue http://code.google.com/p/googleappengine/issues/detail?id=3867 Geoff. -- You 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] Quota numbers seem wrong
My quota page seems to be over-reporting a couple of numbers quite a bit: CPU Time0.17 Requests 1,800 Secure Requests 1,800 -- (but I know I have some non-secure requests, so how are they the same?) Datastore API Calls 1,000 Datastore Queries 2,073,600 -- ! Datastore CPU Time 2.49 -- (maybe. seems high.) Number of Indexes 8 -- (I only really have 2, which is reported correctly in the other page) App: 2dumo Thanks, Richard -- You 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] Google App Engine User Service redirection problem with IE
It seems to me like this is working as intended. Putting a login screen inside an iframe completely defeats the purpose of having an HTTPS based login. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger: http://googleappengine.blogspot.com Reddit: http://www.reddit.com/r/appengine Twitter: http://twitter.com/app_engine On Thu, Oct 14, 2010 at 8:11 AM, Cain Wong cw...@cloudsherpas.com wrote: (THE FOLLOWING WAS ORIGINALLY POSTED IN THE GOOGLE GADGETS SUPPORT FORUM) Steps to reproduce issue: 1. Create a GAE Application that requires userservice.isUserLoggedIn() to return true. If not redirect to userservice.createLoginURL(your- app-url) 2. Add an iFrame or similar gadget to a Google Sites page. Set your GAE app as the content URL. The site should be on a Google Apps domain so that a Google Apps user must be logged in to access the site. 3. Access the page with Internet Explorer (I've been testing with version 8) Expected output: The hopeful expected output would be that the GAE app would immediately recognize that the user is logged in, and show its content. However, the workflow that seems to occur with Firefox and Chrome is as follows (and good enough for my purpose): 1. The user logs in to Google Apps before accessing the site. 2. The Sites page loads. 3. The gadget loads, and subsequently loads the GAE app. 4. The GAE app determines that the user is NOT logged in, and redirects the user to the generated login URL. 5. The resulting login URL pages recognizes that the user is already logged in, and redirects back to the GAE app 6. The GAE app now recognizes the user, and displays its content in the gadget's iframe. Actual results: With IE, the above workflow all seems to function the same with 2 exceptions: 1. The redirection to the login page and back seem to be slower, so that the login page is actually displayed in the gadget iframe for a brief moment. 2. Upon redirecting back to the GAE app, the app breaks out of the iframe filling the entire browser window. Any advice on how to prevent number 2 would be very helpful. Also, if anyone can advise on a way to have a GAE app's Userservice immediately recognize that the user is logged in without needing to do the login url loop would be even more helpful. RESPONSE IN GOOGLE GADGETS FORUM: The IE-specific issues are going to be related to App Engine and not gadgets, so I'd suggest asking this question in the App Engine forum. There are most likely headers being sent during App Engine authentication that direct some browsers (notably IE) to break out of frames. The App Engine team would know better than I if there are ways to mitigate this in certain contexts. -- You 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] Google App Engine User Service redirection problem with IE
Or ... am I misunderstanding what is happening here? -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger: http://googleappengine.blogspot.com Reddit: http://www.reddit.com/r/appengine Twitter: http://twitter.com/app_engine On Thu, Oct 14, 2010 at 12:23 PM, Ikai Lan (Google) ikai.l+gro...@google.com ikai.l%2bgro...@google.com wrote: It seems to me like this is working as intended. Putting a login screen inside an iframe completely defeats the purpose of having an HTTPS based login. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger: http://googleappengine.blogspot.com Reddit: http://www.reddit.com/r/appengine Twitter: http://twitter.com/app_engine On Thu, Oct 14, 2010 at 8:11 AM, Cain Wong cw...@cloudsherpas.com wrote: (THE FOLLOWING WAS ORIGINALLY POSTED IN THE GOOGLE GADGETS SUPPORT FORUM) Steps to reproduce issue: 1. Create a GAE Application that requires userservice.isUserLoggedIn() to return true. If not redirect to userservice.createLoginURL(your- app-url) 2. Add an iFrame or similar gadget to a Google Sites page. Set your GAE app as the content URL. The site should be on a Google Apps domain so that a Google Apps user must be logged in to access the site. 3. Access the page with Internet Explorer (I've been testing with version 8) Expected output: The hopeful expected output would be that the GAE app would immediately recognize that the user is logged in, and show its content. However, the workflow that seems to occur with Firefox and Chrome is as follows (and good enough for my purpose): 1. The user logs in to Google Apps before accessing the site. 2. The Sites page loads. 3. The gadget loads, and subsequently loads the GAE app. 4. The GAE app determines that the user is NOT logged in, and redirects the user to the generated login URL. 5. The resulting login URL pages recognizes that the user is already logged in, and redirects back to the GAE app 6. The GAE app now recognizes the user, and displays its content in the gadget's iframe. Actual results: With IE, the above workflow all seems to function the same with 2 exceptions: 1. The redirection to the login page and back seem to be slower, so that the login page is actually displayed in the gadget iframe for a brief moment. 2. Upon redirecting back to the GAE app, the app breaks out of the iframe filling the entire browser window. Any advice on how to prevent number 2 would be very helpful. Also, if anyone can advise on a way to have a GAE app's Userservice immediately recognize that the user is logged in without needing to do the login url loop would be even more helpful. RESPONSE IN GOOGLE GADGETS FORUM: The IE-specific issues are going to be related to App Engine and not gadgets, so I'd suggest asking this question in the App Engine forum. There are most likely headers being sent during App Engine authentication that direct some browsers (notably IE) to break out of frames. The App Engine team would know better than I if there are ways to mitigate this in certain contexts. -- You 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: Google App Engine User Service redirection problem with IE
My problem with the behavior is that the user has already logged in to Google Apps BEFORE being presented the iFrame. Our GAE application in embedded in an iFrame to provide additional functionality to a Google Site. (The Site is not public, so requires a GApps login.) After performing the GApps log-in, I would think that I could access a Sites page with a GAE page embedded in an iFrame and have that work without needing to do a subsequent login. But if an additional log-in is required by the iFrame because of the sandbox-nature of an iFrame, then the resulting log-in redirection should occur within that context. Having it break out of the iFrame (which only occurs in Internet Explorer) makes no sense because in the context of the top- level browser window, the user is already logged in. On Oct 14, 3:27 pm, Ikai Lan (Google) ikai.l+gro...@google.com wrote: Or ... am I misunderstanding what is happening here? -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter:http://twitter.com/app_engine On Thu, Oct 14, 2010 at 12:23 PM, Ikai Lan (Google) ikai.l+gro...@google.com ikai.l%2bgro...@google.com wrote: It seems to me like this is working as intended. Putting a login screen inside an iframe completely defeats the purpose of having an HTTPS based login. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter:http://twitter.com/app_engine On Thu, Oct 14, 2010 at 8:11 AM, Cain Wong cw...@cloudsherpas.com wrote: (THE FOLLOWING WAS ORIGINALLY POSTED IN THE GOOGLE GADGETS SUPPORT FORUM) Steps to reproduce issue: 1. Create a GAE Application that requires userservice.isUserLoggedIn() to return true. If not redirect to userservice.createLoginURL(your- app-url) 2. Add an iFrame or similar gadget to a Google Sites page. Set your GAE app as the content URL. The site should be on a Google Apps domain so that a Google Apps user must be logged in to access the site. 3. Access the page with Internet Explorer (I've been testing with version 8) Expected output: The hopeful expected output would be that the GAE app would immediately recognize that the user is logged in, and show its content. However, the workflow that seems to occur with Firefox and Chrome is as follows (and good enough for my purpose): 1. The user logs in to Google Apps before accessing the site. 2. The Sites page loads. 3. The gadget loads, and subsequently loads the GAE app. 4. The GAE app determines that the user is NOT logged in, and redirects the user to the generated login URL. 5. The resulting login URL pages recognizes that the user is already logged in, and redirects back to the GAE app 6. The GAE app now recognizes the user, and displays its content in the gadget's iframe. Actual results: With IE, the above workflow all seems to function the same with 2 exceptions: 1. The redirection to the login page and back seem to be slower, so that the login page is actually displayed in the gadget iframe for a brief moment. 2. Upon redirecting back to the GAE app, the app breaks out of the iframe filling the entire browser window. Any advice on how to prevent number 2 would be very helpful. Also, if anyone can advise on a way to have a GAE app's Userservice immediately recognize that the user is logged in without needing to do the login url loop would be even more helpful. RESPONSE IN GOOGLE GADGETS FORUM: The IE-specific issues are going to be related to App Engine and not gadgets, so I'd suggest asking this question in the App Engine forum. There are most likely headers being sent during App Engine authentication that direct some browsers (notably IE) to break out of frames. The App Engine team would know better than I if there are ways to mitigate this in certain contexts. -- You 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: Large datastore queries much slower with Python than Java?
people say doing Batch Get and Puts does improve the performance batch get = db.get(list of model isntances) batch put = db.put(list of model instances) hope this helps -- You 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] Which is Faster ? google.appengine.api.datastore OR google.appengine.ext.db ?
Which is Faster ? google.appengine.api.datastore OR google.appengine.ext.db ? Which one is faster for doing frequent datastore operations and costs less CPU cycles as well ? Using google.appengine.api.datastore OR google.appengine.ext.db Please provide your expert views on this ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-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: Quota numbers seem wrong
I have noticed the datstore query quota being inaccurate before. 2 million seems to be it's bottom range. On Oct 14, 1:15 pm, Richard Watson richard.wat...@gmail.com wrote: My quota page seems to be over-reporting a couple of numbers quite a bit: CPU Time 0.17 Requests 1,800 Secure Requests 1,800 -- (but I know I have some non-secure requests, so how are they the same?) Datastore API Calls 1,000 Datastore Queries 2,073,600 -- ! Datastore CPU Time 2.49 -- (maybe. seems high.) Number of Indexes 8 -- (I only really have 2, which is reported correctly in the other page) App: 2dumo Thanks, Richard -- You 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] I can see the number of instances!
Yayy... I can now see the number of instances my app is taking in the admin console. But, what do those columns mean and what should the optimum values be for each column? -- You 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: Upcoming changes to Task Queues
100,000 is just the max for the Free Default Quota.. Billing Enabled gets you Max 20,000,000 Task API Calls. http://code.google.com/appengine/docs/quotas.html#Task_Queue http://code.google.com/appengine/docs/quotas.html#Task_QueueSo, if you use a lot of tasks, you can enable billing with a low daily max (on what you can be billed) and get the 20,000,000 Task API Call limit. On Thu, Oct 14, 2010 at 9:29 PM, vtscout vlad.troyan...@gmail.com wrote: Since we are on this topic. Task Quota has 3 items: Task API Calls: 100,000 Task Stored Task Count: 1,000,000 Task Stored Task Bytes: 104M // This one is understood Since it does not appear possible to enqueue a new task without invoking a Task Queue API, it seems like API Call Count is the choking point. In other words 100K of API calls is not enough to hit Stored task Count of 1M ever. The only situation in my mind Stored Task Count can come into play is if Tasks remain pending from before Quotas were refilled. Could you please explain? Thanks On Oct 14, 10:49 am, Ikai Lan (Google) ikai.l+gro...@google.comikai.l%2bgro...@google.com wrote: I believe this are garbage collected. This'll be a gating issue for us before we release - it would be pretty bad if this caused quota denials. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter:http://twitter.com/app_engine On Wed, Oct 13, 2010 at 8:51 PM, Eli Jones eli.jo...@gmail.com wrote: Ikai, On occasion I execute thousands of tasks. Works great too. But, it seems like Task Queue Stored Task Bytes does not reset very quickly. Currently my Task Queue shows (and I have 0 Tasks in any Queues.. and haven't for over 10 minutes): Task Queue Stored Task Count136,603 of 200,000,000 Task Queue Stored Task Bytes124,768,866 of 104,857,600 Recently I just ran under 1,000 tasks, and a few hours ago I was running many other tasks.. but they all run and finish within 3 minutes.. so it seems strange that the Stored Task values keep increasing.. How often are these values reset? Are they not really reset as soon as the Tasks in a queue are finished or purged? Thanks for any information. Eli On Wed, Oct 13, 2010 at 5:42 PM, Ikai Lan (Google) ikai.l+gro...@google.com ikai.l%2bgro...@google.com ikai.l%2bgro...@google.com ikai.l%252bgro...@google.com wrote: Hey everyone, We're working on moving Task Queues out of labs/experimental for an upcoming release slated for November. One of the requirements for doing so is to better enforce the Task Queues storage quota. The documentation describes this quota as storage for data for tasks that have not yet executed: http://code.google.com/appengine/docs/quotas.html#Task_Queue Currently, this quota is not enforced, and it is possible for applications with backed up task queues to exceed this quota without running into quota denials. Check your admin console's quota page for your application to see if you are reaching or exceeding this quota. If so, you'll have the following options: 1. Allocate more storage quota to taskqueue storage by updating: - total_storage_limit in queue.yaml for Python applications - TotalStorageLimit in queue.xml for Java applications. Note: you may need to buy more disk quota if there's not enough quota for datastore, blobstore and taskqueue storage altogether. 2. Fix backed up queues using one of the options below. You will recognize these as queues with high numbers of tasks (typically 2000). - Purge backed up queues (an easy button click in admin console's Queue Details page for the queue). - Increase the execution rate and let your app work through the backlog. To do this, edit queue.yaml (or queue.xml for Java apps) and alter the rates on the queues. You can set a higher bucket size than the default (currently 5) to maximize throughput. - Reduce the rate at which new tasks are added to queues. This will involve some editing of app code. It can take a few hours to update the admin console after the quotas have been updated. We'll post a reminders to the App Engine blog as well as to this thread as the release nears. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter: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.comgoogle-appengine%2bunsubscr...@googlegroups.com
[google-appengine] Re: I can see the number of instances!
Google App Engine/1.3.8 is out... On Oct 14, 8:32 pm, nischalshetty nischalshett...@gmail.com wrote: Yayy... I can now see the number of instances my app is taking in the admin console. But, what do those columns mean and what should the optimum values be for each column? -- You 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: Upcoming changes to Task Queues
Also you can add tasks in bulk, I believe 100.. so with 1 api call you could add 100 tasks. On Oct 14, 8:29 pm, vtscout vlad.troyan...@gmail.com wrote: Since we are on this topic. Task Quota has 3 items: Task API Calls: 100,000 Task Stored Task Count: 1,000,000 Task Stored Task Bytes: 104M // This one is understood Since it does not appear possible to enqueue a new task without invoking a Task Queue API, it seems like API Call Count is the choking point. In other words 100K of API calls is not enough to hit Stored task Count of 1M ever. The only situation in my mind Stored Task Count can come into play is if Tasks remain pending from before Quotas were refilled. Could you please explain? Thanks On Oct 14, 10:49 am, Ikai Lan (Google) ikai.l+gro...@google.com wrote: I believe this are garbage collected. This'll be a gating issue for us before we release - it would be pretty bad if this caused quota denials. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter:http://twitter.com/app_engine On Wed, Oct 13, 2010 at 8:51 PM, Eli Jones eli.jo...@gmail.com wrote: Ikai, On occasion I execute thousands of tasks. Works great too. But, it seems like Task Queue Stored Task Bytes does not reset very quickly. Currently my Task Queue shows (and I have 0 Tasks in any Queues.. and haven't for over 10 minutes): Task Queue Stored Task Count 136,603 of 200,000,000 Task Queue Stored Task Bytes 124,768,866 of 104,857,600 Recently I just ran under 1,000 tasks, and a few hours ago I was running many other tasks.. but they all run and finish within 3 minutes.. so it seems strange that the Stored Task values keep increasing.. How often are these values reset? Are they not really reset as soon as the Tasks in a queue are finished or purged? Thanks for any information. Eli On Wed, Oct 13, 2010 at 5:42 PM, Ikai Lan (Google) ikai.l+gro...@google.com ikai.l%2bgro...@google.com wrote: Hey everyone, We're working on moving Task Queues out of labs/experimental for an upcoming release slated for November. One of the requirements for doing so is to better enforce the Task Queues storage quota. The documentation describes this quota as storage for data for tasks that have not yet executed: http://code.google.com/appengine/docs/quotas.html#Task_Queue Currently, this quota is not enforced, and it is possible for applications with backed up task queues to exceed this quota without running into quota denials. Check your admin console's quota page for your application to see if you are reaching or exceeding this quota. If so, you'll have the following options: 1. Allocate more storage quota to taskqueue storage by updating: - total_storage_limit in queue.yaml for Python applications - TotalStorageLimit in queue.xml for Java applications. Note: you may need to buy more disk quota if there's not enough quota for datastore, blobstore and taskqueue storage altogether. 2. Fix backed up queues using one of the options below. You will recognize these as queues with high numbers of tasks (typically 2000). - Purge backed up queues (an easy button click in admin console's Queue Details page for the queue). - Increase the execution rate and let your app work through the backlog. To do this, edit queue.yaml (or queue.xml for Java apps) and alter the rates on the queues. You can set a higher bucket size than the default (currently 5) to maximize throughput. - Reduce the rate at which new tasks are added to queues. This will involve some editing of app code. It can take a few hours to update the admin console after the quotas have been updated. We'll post a reminders to the App Engine blog as well as to this thread as the release nears. -- Ikai Lan Developer Programs Engineer, Google App Engine Blogger:http://googleappengine.blogspot.com Reddit:http://www.reddit.com/r/appengine Twitter: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.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
Re: [google-appengine] Which is Faster ? google.appengine.api.datastore OR google.appengine.ext.db ?
I want to kill BigTable. 2010/10/15 sodso sodhisoluti...@gmail.com Which is Faster ? google.appengine.api.datastore OR google.appengine.ext.db ? Which one is faster for doing frequent datastore operations and costs less CPU cycles as well ? Using google.appengine.api.datastore OR google.appengine.ext.db Please provide your expert views on this ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-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] Which is Faster ? google.appengine.api.datastore OR google.appengine.ext.db ?
Bill, is that you? On Thu, Oct 14, 2010 at 23:08, YF CAO caoyongfeng0...@gmail.com wrote: I want to kill BigTable. 2010/10/15 sodso sodhisoluti...@gmail.com Which is Faster ? google.appengine.api.datastore OR google.appengine.ext.db ? Which one is faster for doing frequent datastore operations and costs less CPU cycles as well ? Using google.appengine.api.datastore OR google.appengine.ext.db Please provide your expert views on this ? -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-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. -- You 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. -- You 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] Need more memcache space
Check your code. You may created more than one instance of memcache. 2010/10/15 Sahid Orentino Ferdjaoui sahid.ferdja...@gmail.com Hello, I need more memcache space, actually i have 2G and that is too less. Why i need more? I generate a userlist of 100onlines by a cron every 10minutes but i have see, my userlist is deleted when my website is on hightraffics. so to correct it i have updated my cron to generate a userlist every 1minute but that consume more ressources. APPID: devel-inchallah Cordially, Sahid -- You 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] 1.3.8 and merge-join index requirements
After hearing that 1.3.8 removed some index requirements, along with watching the exciting google IO video on next gen queries, I have been preparing for this release... However, the change to index requirements does not seem to be live yet... am I correct ? -- You 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] SDK 1.3.8 released!
Hello App Engine Developers! We're very happy to announce that SDK 1.3.8 is released today. There are many new cool features, so please download the new SDK and enjoy it! You can download the new SDK from: http://code.google.com/appengine/downloads.html Our blog post includes some screenshots of new features in admin console: http://googleappengine.blogspot.com/2010/10/new-app-engine-sdk-138-includes-new.html Here are release notes: Java --- Version 1.3.8 = - You can run task queue tasks immediately from the admin console. - Added an OutputSettings class to the Images API to specify the JPEG encoding quality when running in production. - Support for login of multiple Google accounts within an app, and longer login sessions. For more information see: http://www.google.com/support/accounts/bin/answer.py?answer=181599 - In queue.xml, the maximum allowed bucket size is now 100. - Removed limits on zigzag merge-join queries. Therefore the error The built-in indices are not efficient enough for this query and your data. Please add a composite index for this query. will no longer be thrown in most cases, enabling more types of queries without indexes. - The whitelist has been updated to include java.net.InetAddress and some interfaces and abstract classes in javax.xml.soap, including javax.xml.soap.SOAPMessage. - Fixed an issue reserving App Ids by owners of emails containing periods, multiple cases, and googlemail.com address. http://code.google.com/p/googleappengine/issues/detail?id=1196 - Fixed an issue where TaskOptions had no public getters, making testing impossible. http://code.google.com/p/googleappengine/issues/detail?id=3243 - Fixed an issue on the development server where PNGs were being returned as JPEGs. http://code.google.com/p/googleappengine/issues/detail?id=3661 Python - Version 1.3.8 == - Builtin app.yaml handlers are available for common application functions, such as appstats. http://code.google.com/appengine/docs/python/config/appconfig.html#Builtin_Handlers - The Admin Console now provides an experimental tool to delete all entities in the datastore or all entities of a given type. This is available only if enabled using the datastore_admin builtin. Deleting entities will count against application quota. http://code.google.com/appengine/docs/python/datastore/creatinggettinganddeletingdata.html#Deleting_Entities_in_Bulk - You can run task queue tasks immediately from the Admin Console. - You can now specify the quality of JPEG images via the Image API's execute_transforms function. Available in production only. - Support for login of multiple Google accounts within an app, and longer login sessions. For more information see: http://www.google.com/support/accounts/bin/answer.py?answer=181599 - In queue.yaml, the maximum allowed bucket size is now 100. - Precompilation is now enabled by default. To disable, use the --no_precompilation flag when updating your app. - BlobInfo now has an open() method that returns a BlobReader. - BlobReader now accepts a BlobInfo. - Removed limits on zigzag merge-join queries. Therefore the error The built-in indices are not efficient enough for this query and your data. Please add a composite index for this query. will no longer be thrown in most cases, enabling more types of queries without indexes. - Fixed an issue with task queue tasks not running on the dev_appserver when using Python 2.6. - Fixed an issue on the dev_appserver where auto task running wasn't working for BulkAdd. - Fixed an issue reserving App Ids by owners of similarly-named mails accounts containing periods, multiple cases, and googlemail.com address. http://code.google.com/p/googleappengine/issues/detail?id=1196 - Fixed an issue on the development server where PNGs were being returned as JPEGs. http://code.google.com/p/googleappengine/issues/detail?id=3661 -- Takashi Matsuo Developer Relations Developer Advocate for Google App Engine/iGoogle Google Japan, Inc. -- You 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] How to run the java SDK with SSL?
Is it possible to configure the embedded jetty server to run with ssl support? Many thanks, Chris -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-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: I can see the number of instances!
+1 What is considered good or bad? I see a bunch of instances with an average of 0.729 QPS (which seems really low) and an average memory footprint of 63MB (also seems low). Maybe I've been brainwashed by the EC2 specs, but would love some guidance on these numbers... On Oct 14, 9:32 pm, nischalshetty nischalshett...@gmail.com wrote: Yayy... I can now see the number ofinstancesmy app is taking in the admin console. But, what do those columns mean and what should the optimum values be for each column? -- You 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] SDK 1.3.8 released!
can the plugin of Netbeans auto upgrade ? 2010/10/15 Takashi Matsuo tmat...@google.com Hello App Engine Developers! We're very happy to announce that SDK 1.3.8 is released today. There are many new cool features, so please download the new SDK and enjoy it! You can download the new SDK from: http://code.google.com/appengine/downloads.html Our blog post includes some screenshots of new features in admin console: http://googleappengine.blogspot.com/2010/10/new-app-engine-sdk-138-includes-new.html Here are release notes: Java --- Version 1.3.8 = - You can run task queue tasks immediately from the admin console. - Added an OutputSettings class to the Images API to specify the JPEG encoding quality when running in production. - Support for login of multiple Google accounts within an app, and longer login sessions. For more information see: http://www.google.com/support/accounts/bin/answer.py?answer=181599 - In queue.xml, the maximum allowed bucket size is now 100. - Removed limits on zigzag merge-join queries. Therefore the error The built-in indices are not efficient enough for this query and your data. Please add a composite index for this query. will no longer be thrown in most cases, enabling more types of queries without indexes. - The whitelist has been updated to include java.net.InetAddress and some interfaces and abstract classes in javax.xml.soap, including javax.xml.soap.SOAPMessage. - Fixed an issue reserving App Ids by owners of emails containing periods, multiple cases, and googlemail.com address. http://code.google.com/p/googleappengine/issues/detail?id=1196 - Fixed an issue where TaskOptions had no public getters, making testing impossible. http://code.google.com/p/googleappengine/issues/detail?id=3243 - Fixed an issue on the development server where PNGs were being returned as JPEGs. http://code.google.com/p/googleappengine/issues/detail?id=3661 Python - Version 1.3.8 == - Builtin app.yaml handlers are available for common application functions, such as appstats. http://code.google.com/appengine/docs/python/config/appconfig.html#Builtin_Handlers - The Admin Console now provides an experimental tool to delete all entities in the datastore or all entities of a given type. This is available only if enabled using the datastore_admin builtin. Deleting entities will count against application quota. http://code.google.com/appengine/docs/python/datastore/creatinggettinganddeletingdata.html#Deleting_Entities_in_Bulk - You can run task queue tasks immediately from the Admin Console. - You can now specify the quality of JPEG images via the Image API's execute_transforms function. Available in production only. - Support for login of multiple Google accounts within an app, and longer login sessions. For more information see: http://www.google.com/support/accounts/bin/answer.py?answer=181599 - In queue.yaml, the maximum allowed bucket size is now 100. - Precompilation is now enabled by default. To disable, use the --no_precompilation flag when updating your app. - BlobInfo now has an open() method that returns a BlobReader. - BlobReader now accepts a BlobInfo. - Removed limits on zigzag merge-join queries. Therefore the error The built-in indices are not efficient enough for this query and your data. Please add a composite index for this query. will no longer be thrown in most cases, enabling more types of queries without indexes. - Fixed an issue with task queue tasks not running on the dev_appserver when using Python 2.6. - Fixed an issue on the dev_appserver where auto task running wasn't working for BulkAdd. - Fixed an issue reserving App Ids by owners of similarly-named mails accounts containing periods, multiple cases, and googlemail.com address. http://code.google.com/p/googleappengine/issues/detail?id=1196 - Fixed an issue on the development server where PNGs were being returned as JPEGs. http://code.google.com/p/googleappengine/issues/detail?id=3661 -- Takashi Matsuo Developer Relations Developer Advocate for Google App Engine/iGoogle Google Japan, Inc. -- You 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
[google-appengine] Re: can i use channel api now?
We need channel api, too. Please release this feature. Thanks. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.