[appengine-java] Re: Local Persistance of Data
Hello Prateek, Take a look at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.html#The_Development_Console I seem to remember that one can delete persistence entities using this tool, but my memory could be at fault. Regards, Ian -- 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] JDO - simple update example
Datastore Group: I am spending way too much time trying to figure out how to perform a 'simple' update. I'm following the docs but nothing is working. When I get a no-record-found error I have to restart the appserver just to continue viewing the data using '_ah/admin'--which is _very_ disappointing. First of all, why is fist class error thrown when a query doesn't return a record? Second, why does a 'no-record-found- error' hang the entire server forcing a restart. Third, and most importantly, why is it not obvious how to perform a simple update of a single record? I'm using system generated keys, I can see the key value in the '_ah/admin' viewer, but I run into problems when I try to query the object/record using the system generated key value. I'm trying to use getObjectById(class-name.class, key-value); is this not the sanctioned method? It would be extremely appreciated if the documentation included a simple insert, update, select, delete example that everyone could copy and paste for immediate satisfaction instead of the deeper theoretical (and somewhat roundabout) form taken. I understand the documentation follows Datanucleus OEM product, but seriously, the appEngine docs should speak to this issue with greater brevity. I'm willing to do a write-up and post back to the list if someone can help me get started with basic CRUD. I feel it is a reasonable expectation that simple CRUD operations should CLEARLY be spelled out in the documentation available for 'quick' copy and paste.instant satisfaction. Also, a no-record-found error should not be an error, and it surely should not force a restart. I must be doing something wrong, I hope so, because I cannot imagine anyone working this way. Can somebody please steer me in the right directionany help would be greatly appreciated. - ed -- 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] BD in Appgoogle
I think you need http://localhost:/_ah/admin On Wed, Jun 23, 2010 at 1:10 AM, lisandrodc lisandr...@gmail.com wrote: I have a doubt for use the bd. Some way exists for view the local_db(without dates binaries). Regards Lisandro -- 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. -- Pieter Coucke Onthoo BVBA http://www.onthoo.com http://www.koopjeszoeker.be -- 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: HttpClient is not supported?
Hi I'm using HttpClient on AppEngine using a simple hack found here: http://esxx.blogspot.com/2009/06/using-apaches-httpclient-on-google-app.html It's basically a connection provider to HttpClient using Google's URLFetch service. This way you can still use the beloved HttpClient and (almost) all its power Sérgio http://www.caelum.com.br On 22 jun, 13:36, Lu chenglu.annal...@gmail.com wrote: Hi, I am trying to use HttpClient to extract the urls. It works in normal java application but not under the context of web application. HttpClient client = new HttpClient(); GetMethod method = new GetMethod(url); I will get error says 'java.lang.NoClassDefFoundError: java.net.Socket is a restricted class. Please see the Google App Engine developer's guide for more details' Does that mean it conflicts with google app engine? Thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] JDO - simple update example
Hi ed, Hope you have taken care of txn management mentioned in the docs as well. If u can send dto and the code used to insert or get, that would be great. Atleast for a beginers perspective, I found the documentation in gae sufficient for my needs. ~hari On Jun 23, 2010 12:17 PM, Ed edwilson...@gmail.com wrote: Datastore Group: I am spending way too much time trying to figure out how to perform a 'simple' update. I'm following the docs but nothing is working. When I get a no-record-found error I have to restart the appserver just to continue viewing the data using '_ah/admin'--which is _very_ disappointing. First of all, why is fist class error thrown when a query doesn't return a record? Second, why does a 'no-record-found- error' hang the entire server forcing a restart. Third, and most importantly, why is it not obvious how to perform a simple update of a single record? I'm using system generated keys, I can see the key value in the '_ah/admin' viewer, but I run into problems when I try to query the object/record using the system generated key value. I'm trying to use getObjectById(class-name.class, key-value); is this not the sanctioned method? It would be extremely appreciated if the documentation included a simple insert, update, select, delete example that everyone could copy and paste for immediate satisfaction instead of the deeper theoretical (and somewhat roundabout) form taken. I understand the documentation follows Datanucleus OEM product, but seriously, the appEngine docs should speak to this issue with greater brevity. I'm willing to do a write-up and post back to the list if someone can help me get started with basic CRUD. I feel it is a reasonable expectation that simple CRUD operations should CLEARLY be spelled out in the documentation available for 'quick' copy and paste.instant satisfaction. Also, a no-record-found error should not be an error, and it surely should not force a restart. I must be doing something wrong, I hope so, because I cannot imagine anyone working this way. Can somebody please steer me in the right directionany help would be greatly appreciated. - ed -- 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: Administration Console Custom Pages
I think you're missing the security constraint on the page in web.xml security-constraint web-resource-collection url-pattern/adminboard/url-pattern /web-resource-collection auth-constraint role-nameadmin/role-name /auth-constraint /security-constraint Custom console pages are, for what I understand, nothing more than a handy way to access your administrator-only pages from the admin console, instead of manually browsing to them. Regards Lorenzo On Jun 22, 4:05 pm, WillNa kan...@chez.com wrote: Hello, I'm trying to add an admin page to the admin console, followinghttp://code.google.com/appengine/docs/java/config/appconfig.html#Admi... Unfortunatly, whatever I try, nothing more is visible on /_ah/admin This is what I added to my appengine-web admin-console page name=Create a board url=/adminboard / /admin-console and what I added to web.xml servlet servlet-nameadminboard/servlet-name jsp-file/admin_board.jsp/jsp-file /servlet servlet-mapping servlet-nameadminboard/servlet-name url-pattern/adminboard/url-pattern /servlet-mapping Am I missing something ?! Thanks for any hint William -- 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] junit and local_db.bin
Hi Rommel with the method listAllDomain I can see the data, there should be a problem with http://127.0.0.1:/_ah/admin/datastore perhaps a user roll or something similar (in JUNIT or loggin with http://127.0.0.1:/_ah/admin/datastore ? Thanks. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Yup, for sure. Let's suppose you have an entity called domain which has the following attributes: 1. Key 2. Name public void listAllDomain(){ List Domain results; Query query=factory.newQuery(Domain.class); try{ results=(ListDomain) query.execute(); if(results.iterator().hasNext()){ for(int k=0;kresults.size();k++){ Domain dumb=results.get(k); System.out.println(Key: \t+String.valueOf(dumb.getKey()).toString()); System.out.println(Domain Name:\t+dumb.getDomainName()); } } else System.out.println(no results exist); } finally{query.closeAll();} } Where Domain.clas is the class type for your entity called Domain. besides, in the query object you can set filters for your query. this method will show the data in your data Store. As I can see, if the local_db.bin is getting bigger each time JUnit is ran, then the data must be there, so with this method you should be able to see all the data stored in your Data Store. you have just replace all Domain references for your Entity's. Hope this is was helpful. Rgds. R 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com No, perhaps have yout got an example? 2010/6/22 Ronmell Fuentes ringe...@gmail.com have you tried to retrieve the data from your app, I mean, not using the http/_ah/admin console but using your own application, a class written in java to show the data, does it work?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com I think so, When I executed all is right, however I don't execute teardown method because If I executed this the data are deleted. Alsoeverytime I executed JUNIT the local_db.bin file is bigger than the last time so It has the data. 2010/6/22 Ronmell Fuentes ringe...@gmail.com is your JUnit well configured?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com But I can see the data created with the servlets with http://localhost:/_ah/admin, but not when I the data are created with junit. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Hi Acerezo remember the Data stored in dataStore is schemaless so, as far as I know, only GAE knows how to deal with it. When I want to see the data from the dataStore I use the classes written in java in order to manage the data in Data Store. in the other hand, you can use Restlets running on your app in order to manage your data when deployed in GAE. Rgds. Ronmell 2010/6/22 Acerezo acerezoguil...@gmail.com Hello all, I have been running my server locally with JUNIT all is ok but when I want to see the data of the local_db.bin file from localhost: I don´t see the data (entities, etc) Anyone can help me, please? Thanks. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- ausencia de evidencia ≠ evidencia de ausencia http://culturainteractiva.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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- ausencia de evidencia ≠ evidencia de ausencia http://culturainteractiva.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
[appengine-java] Re: Local Persistance of Data
Thanks Ian. I guess that should solve my problem. Regards Prateek On Jun 23, 11:30 am, Ian Marshall ianmarshall...@gmail.com wrote: Hello Prateek, Take a look at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.ht... I seem to remember that one can delete persistence entities using this tool, but my memory could be at fault. Regards, Ian -- 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: Local Persistance of Data
You're welcome. Of course, if you do not want to view your locally-persisted entities and just want to delete them all, just follow the instructions give at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.html#Using_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] Servlet filter does not work POST
HI, is there any reason (or known issue) that a configured servlet filter is only called for GET requests? With the filters something was fixed for 1.3.3.1 release, but I am using 1.3.4. It still does not seem to work (used the local dev server). -- 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: Administration Console Custom Pages
On Jun 23, 10:34 am, l.denardo lorenzo.dena...@gmail.com wrote: I think you're missing the security constraint on the page in web.xml security-constraint web-resource-collection url-pattern/adminboard/url-pattern /web-resource-collection auth-constraint role-nameadmin/role-name /auth-constraint /security-constraint sorry, I forgot to tell you I already add these lines on web.xml still not working Custom console pages are, for what I understand, nothing more than a handy way to access your administrator-only pages from the admin console, instead of manually browsing to them. it's exactly what I want. it's a nonsense to have 2 admin page : gae one and mine but whatever I do, http://localhost:/_ah/admin/ always shows the 4 standard admin pages perhaps it only doesn't work on local ? Thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: memcache best practice or framework
SimpleDS does also include a two-level Cache implementation. We are using the same approach of Hibernate: the first-level cache is bound to the current thread and will be discarded after the response is committed, and the second-level cache is relying on Memcache. The tricky part was dealing with partial cache results when invoking a multiple get(). Feel free to inspect the code to get your own ideas: http://code.google.com/p/simpleds/source/browse/#svn/trunk/src/main/java/org/simpleds/cache On Jun 18, 10:08 am, Toby toby.ro...@gmail.com wrote: Hello Ikai, Sorry but I might have worded my post incorrectly. I do not doubt memcache, in fact I use it very heavily and it is great. On Google I/O I learned that memcache is actually hosted on another machine and that for each request a significant network overhead is involved. In appstats I see about 20ms for a single request. Simple data-store requests are also between 20-50ms. So in fact memcache is good as second level cache but shows to be a bottleneck for data that I heavily use over and over again (plus it costs valuable API time). So the idea was to have some first level in-memory cache living on the same machine that is holding heavily used data to prevent the server round trip to the cache machine. Now you might tell me that my application is designed wrong. And indeed I could just put this in by myself. But as you also pointed out there are tricky parts like memory boundaries and other things to take care of. This is why I started this thread to see if someone has come up with a good solution. I think multiple cache layers are kind of a standard approach that has shown its usefulness in many places. It would be good to have that as part of GAE. Of course this is not the most urgent issue. Cheers, Toby On Jun 17, 6:46 pm, Ikai L (Google) ika...@google.com wrote: What aspect of Memcache is too slow? Have you run AppStats yet? The overhead of Memcache is low enough for many of the top sites on the internet to use. Some sites are listed on the main page here: http://memcached.org/ As you move closer and closer to local memory, the volatility of your cache will increase, so the only items I would store in local memory are items that are okay to lose. If you want, you can probably layer your application to fetch from memcache - fetch from authoritative source and place into local memory on a cache miss. Just be aware that there are process memory limits, and exceeding these will force a restart. On Thu, Jun 17, 2010 at 2:30 AM, Toby toby.ro...@gmail.com wrote: Hello, I wonder if there is a framework (such as Objectify) also for memcache. As memcache is not on the local machine it is rather slow, especially for reoccurring requests. So on Google I/O they suggested to build your own in-memory layer around that. I know that is an easy task, still I wonder if there might already be a framework for that :-) Also I wonder if someone can give me some ideas about how to build an in-memory cache. I guess it is just a static hashmap. But will it survive multiple requests? How much can I put in there? As the problem of memcache is apparently the high latency for the network traffic to the server I had the idea to store the in-memory cache in the memcache, de-serialize it and then use it? Do you have other ideas how to speed up caching? Thank you for your advice, Toby -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine Blog:http://googleappengine.blogspot.com Twitter:http://twitter.com/app_engine Reddit:http://www.reddit.com/r/appengine -- 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: junit and local_db.bin
I know that someone will arrive with a better implementation, but here goes own little code snippet used to populate our test database. It has survived five or six GAE upgrades, so glitches are expected :) You must have two things in consideration: the appid and version must match, and you should enable datastore writes. File dbContents = new File(war/WEB-INF/appengine-generated/ local_db.bin); LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig() .setBackingStoreLocation(dbContents.getAbsolutePath()) .setStoreDelayMs(4000) .setNoStorage(false) ) { @Override protected Environment newEnvironment() { return createEnvironment(); } }; helper.setUp(); // ... now you can start writing your own data, and they will appear in the console public static Environment createEnvironment() { try { // retrieve application id and version from appengine-web.xml String contents = FileUtils.readFileToString(new File(war/WEB-INF/ appengine-web.xml)); final String application = StringUtils.substringBetween(contents, application, /application); final String version = StringUtils.substringBetween(contents, version, /version); // initialize GAE return new TestEnvironment() { @Override public String getAppId() { return application; } @Override public String getVersionId() { return version; } @Override public String getRequestNamespace() { return ; } }; } catch (IOException e) { throw new RuntimeException(e); } } On Jun 23, 11:05 am, Andrés Cerezo acerezoguil...@gmail.com wrote: Hi Rommel with the method listAllDomain I can see the data, there should be a problem withhttp://127.0.0.1:/_ah/admin/datastoreperhaps a user roll or something similar (in JUNIT or loggin withhttp://127.0.0.1:/_ah/admin/datastore? Thanks. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Yup, for sure. Let's suppose you have an entity called domain which has the following attributes: 1. Key 2. Name public void listAllDomain(){ List Domain results; Query query=factory.newQuery(Domain.class); try{ results=(ListDomain) query.execute(); if(results.iterator().hasNext()){ for(int k=0;kresults.size();k++){ Domain dumb=results.get(k); System.out.println(Key: \t+String.valueOf(dumb.getKey()).toString()); System.out.println(Domain Name:\t+dumb.getDomainName()); } } else System.out.println(no results exist); } finally{query.closeAll();} } Where Domain.clas is the class type for your entity called Domain. besides, in the query object you can set filters for your query. this method will show the data in your data Store. As I can see, if the local_db.bin is getting bigger each time JUnit is ran, then the data must be there, so with this method you should be able to see all the data stored in your Data Store. you have just replace all Domain references for your Entity's. Hope this is was helpful. Rgds. R 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com No, perhaps have yout got an example? 2010/6/22 Ronmell Fuentes ringe...@gmail.com have you tried to retrieve the data from your app, I mean, not using the http/_ah/admin console but using your own application, a class written in java to show the data, does it work?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com I think so, When I executed all is right, however I don't execute teardown method because If I executed this the data are deleted. Alsoeverytime I executed JUNIT the local_db.bin file is bigger than the last time so It has the data. 2010/6/22 Ronmell Fuentes ringe...@gmail.com is your JUnit well configured?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com But I can see the data created with the servlets with http://localhost:/_ah/admin, but not when I the data are created with junit.
[appengine-java] Re: Administration Console Custom Pages
Sorry, I didn't get you were working locally... They don't appear in the development server, but they should appear correctly in production. In the dev server you must access them directly with their URL (admin access restriction instead is correctly emulated). regards Lorenzo On Jun 23, 4:47 pm, WillNa kan...@chez.com wrote: On Jun 23, 10:34 am, l.denardo lorenzo.dena...@gmail.com wrote: I think you're missing the security constraint on the page in web.xml security-constraint web-resource-collection url-pattern/adminboard/url-pattern /web-resource-collection auth-constraint role-nameadmin/role-name /auth-constraint /security-constraint sorry, I forgot to tell you I already add these lines on web.xml still not working Custom console pages are, for what I understand, nothing more than a handy way to access your administrator-only pages from the admin console, instead of manually browsing to them. it's exactly what I want. it's a nonsense to have 2 admin page : gae one and mine but whatever I do,http://localhost:/_ah/admin/always shows the 4 standard admin pages perhaps it only doesn't work on local ? Thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] junit and local_db.bin
mm I don't really know. but should you necessary use JUnit?? I mean, you can use your own classes to manage your data. 2010/6/23 Andrés Cerezo acerezoguil...@gmail.com Hi Rommel with the method listAllDomain I can see the data, there should be a problem with http://127.0.0.1:/_ah/admin/datastore perhaps a user roll or something similar (in JUNIT or loggin with http://127.0.0.1:/_ah/admin/datastore ? Thanks. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Yup, for sure. Let's suppose you have an entity called domain which has the following attributes: 1. Key 2. Name public void listAllDomain(){ List Domain results; Query query=factory.newQuery(Domain.class); try{ results=(ListDomain) query.execute(); if(results.iterator().hasNext()){ for(int k=0;kresults.size();k++){ Domain dumb=results.get(k); System.out.println(Key: \t+String.valueOf(dumb.getKey()).toString()); System.out.println(Domain Name:\t+dumb.getDomainName()); } } else System.out.println(no results exist); } finally{query.closeAll();} } Where Domain.clas is the class type for your entity called Domain. besides, in the query object you can set filters for your query. this method will show the data in your data Store. As I can see, if the local_db.bin is getting bigger each time JUnit is ran, then the data must be there, so with this method you should be able to see all the data stored in your Data Store. you have just replace all Domain references for your Entity's. Hope this is was helpful. Rgds. R 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com No, perhaps have yout got an example? 2010/6/22 Ronmell Fuentes ringe...@gmail.com have you tried to retrieve the data from your app, I mean, not using the http/_ah/admin console but using your own application, a class written in java to show the data, does it work?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com I think so, When I executed all is right, however I don't execute teardown method because If I executed this the data are deleted. Alsoeverytime I executed JUNIT the local_db.bin file is bigger than the last time so It has the data. 2010/6/22 Ronmell Fuentes ringe...@gmail.com is your JUnit well configured?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com But I can see the data created with the servlets with http://localhost:/_ah/admin, but not when I the data are created with junit. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Hi Acerezo remember the Data stored in dataStore is schemaless so, as far as I know, only GAE knows how to deal with it. When I want to see the data from the dataStore I use the classes written in java in order to manage the data in Data Store. in the other hand, you can use Restlets running on your app in order to manage your data when deployed in GAE. Rgds. Ronmell 2010/6/22 Acerezo acerezoguil...@gmail.com Hello all, I have been running my server locally with JUNIT all is ok but when I want to see the data of the local_db.bin file from localhost: I don´t see the data (entities, etc) Anyone can help me, please? Thanks. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- ausencia de evidencia ≠ evidencia de ausencia http://culturainteractiva.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.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- ausencia de evidencia ≠ evidencia de ausencia http://culturainteractiva.blogspot.com/ -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to
Re: [appengine-java] Re: junit and local_db.bin
Hi!! Have you got a .java complete? I'm starting to have a lot of errors (import, etc.) 2010/6/23 Nacho Coloma icol...@gmail.com I know that someone will arrive with a better implementation, but here goes own little code snippet used to populate our test database. It has survived five or six GAE upgrades, so glitches are expected :) You must have two things in consideration: the appid and version must match, and you should enable datastore writes. File dbContents = new File(war/WEB-INF/appengine-generated/ local_db.bin); LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig() .setBackingStoreLocation(dbContents.getAbsolutePath()) .setStoreDelayMs(4000) .setNoStorage(false) ) { @Override protected Environment newEnvironment() { return createEnvironment(); } }; helper.setUp(); // ... now you can start writing your own data, and they will appear in the console public static Environment createEnvironment() { try { // retrieve application id and version from appengine-web.xml String contents = FileUtils.readFileToString(new File(war/WEB-INF/ appengine-web.xml)); final String application = StringUtils.substringBetween(contents, application, /application); final String version = StringUtils.substringBetween(contents, version, /version); // initialize GAE return new TestEnvironment() { @Override public String getAppId() { return application; } @Override public String getVersionId() { return version; } @Override public String getRequestNamespace() { return ; } }; } catch (IOException e) { throw new RuntimeException(e); } } On Jun 23, 11:05 am, Andrés Cerezo acerezoguil...@gmail.com wrote: Hi Rommel with the method listAllDomain I can see the data, there should be a problem withhttp://127.0.0.1:/_ah/admin/datastoreperhaps a user roll or something similar (in JUNIT or loggin withhttp:// 127.0.0.1:/_ah/admin/datastore? Thanks. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Yup, for sure. Let's suppose you have an entity called domain which has the following attributes: 1. Key 2. Name public void listAllDomain(){ List Domain results; Query query=factory.newQuery(Domain.class); try{ results=(ListDomain) query.execute(); if(results.iterator().hasNext()){ for(int k=0;kresults.size();k++){ Domain dumb=results.get(k); System.out.println(Key: \t+String.valueOf(dumb.getKey()).toString()); System.out.println(Domain Name:\t+dumb.getDomainName()); } } else System.out.println(no results exist); } finally{query.closeAll();} } Where Domain.clas is the class type for your entity called Domain. besides, in the query object you can set filters for your query. this method will show the data in your data Store. As I can see, if the local_db.bin is getting bigger each time JUnit is ran, then the data must be there, so with this method you should be able to see all the data stored in your Data Store. you have just replace all Domain references for your Entity's. Hope this is was helpful. Rgds. R 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com No, perhaps have yout got an example? 2010/6/22 Ronmell Fuentes ringe...@gmail.com have you tried to retrieve the data from your app, I mean, not using the http/_ah/admin console but using your own application, a class written in java to show the data, does it work?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com I think so, When I executed all is right, however I don't execute teardown method because If I executed this the data are deleted. Alsoeverytime I executed JUNIT the local_db.bin file is bigger than the last time so It has the data. 2010/6/22 Ronmell Fuentes ringe...@gmail.com is your JUnit well configured??
Re: [appengine-java] Re: junit and local_db.bin
Thank you very much!!! At last I've solved it. Where have you found documentation about it? I was going crazy!!! 2010/6/23 Andrés Cerezo acerezoguil...@gmail.com Hi!! Have you got a .java complete? I'm starting to have a lot of errors (import, etc.) 2010/6/23 Nacho Coloma icol...@gmail.com I know that someone will arrive with a better implementation, but here goes own little code snippet used to populate our test database. It has survived five or six GAE upgrades, so glitches are expected :) You must have two things in consideration: the appid and version must match, and you should enable datastore writes. File dbContents = new File(war/WEB-INF/appengine-generated/ local_db.bin); LocalServiceTestHelper helper = new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig() .setBackingStoreLocation(dbContents.getAbsolutePath()) .setStoreDelayMs(4000) .setNoStorage(false) ) { @Override protected Environment newEnvironment() { return createEnvironment(); } }; helper.setUp(); // ... now you can start writing your own data, and they will appear in the console public static Environment createEnvironment() { try { // retrieve application id and version from appengine-web.xml String contents = FileUtils.readFileToString(new File(war/WEB-INF/ appengine-web.xml)); final String application = StringUtils.substringBetween(contents, application, /application); final String version = StringUtils.substringBetween(contents, version, /version); // initialize GAE return new TestEnvironment() { @Override public String getAppId() { return application; } @Override public String getVersionId() { return version; } @Override public String getRequestNamespace() { return ; } }; } catch (IOException e) { throw new RuntimeException(e); } } On Jun 23, 11:05 am, Andrés Cerezo acerezoguil...@gmail.com wrote: Hi Rommel with the method listAllDomain I can see the data, there should be a problem withhttp://127.0.0.1:/_ah/admin/datastoreperhaps a user roll or something similar (in JUNIT or loggin withhttp:// 127.0.0.1:/_ah/admin/datastore? Thanks. 2010/6/22 Ronmell Fuentes ringe...@gmail.com Yup, for sure. Let's suppose you have an entity called domain which has the following attributes: 1. Key 2. Name public void listAllDomain(){ List Domain results; Query query=factory.newQuery(Domain.class); try{ results=(ListDomain) query.execute(); if(results.iterator().hasNext()){ for(int k=0;kresults.size();k++){ Domain dumb=results.get(k); System.out.println(Key: \t+String.valueOf(dumb.getKey()).toString()); System.out.println(Domain Name:\t+dumb.getDomainName()); } } else System.out.println(no results exist); } finally{query.closeAll();} } Where Domain.clas is the class type for your entity called Domain. besides, in the query object you can set filters for your query. this method will show the data in your data Store. As I can see, if the local_db.bin is getting bigger each time JUnit is ran, then the data must be there, so with this method you should be able to see all the data stored in your Data Store. you have just replace all Domain references for your Entity's. Hope this is was helpful. Rgds. R 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com No, perhaps have yout got an example? 2010/6/22 Ronmell Fuentes ringe...@gmail.com have you tried to retrieve the data from your app, I mean, not using the http/_ah/admin console but using your own application, a class written in java to show the data, does it work?? 2010/6/22 Andrés Cerezo acerezoguil...@gmail.com I think so, When I executed all is right, however I don't execute teardown method because If I executed this the data are deleted. Alsoeverytime I executed JUNIT
[appengine-java] Thought Site
Hi all, i've been trying to install thought site, but I'm kind of lost, has any one done it, do tyou have any suggestion? thanks -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] OneToMany mapping with JDO
If its an owned relationship, then if I'm not mistaken both classes (parent and child) must have a Key class id, and cannot have a Long id, see this excerpt from docshttp://code.google.com/appengine/docs/java/datastore/relationships.html : The child class must have a key field whose type can contain the parent key information: either a Key, or a Key value encoded as a string. See Creating Data: Keyshttp://code.google.com/appengine/docs/java/datastore/creatinggettinganddeletingdata.html#Keys for information on key field types. Hope this helps, Yaniv Kessler On Tue, Jun 22, 2010 at 7:30 AM, Moretto mala...@gmail.com wrote: Hi, I want to create a relationship one to many with jdo on my entity. Actually, the following code throws an exception. As you can see i had to comment the code that throws a runtime exception. package com.appspot.malacma.entity; import java.util.ArrayList; import java.util.Date; import java.util.List; import javax.jdo.annotations.*; @PersistenceCapable(identityType = IdentityType.APPLICATION) public class Context { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.SEQUENCE) private Long id; @Persistent private String domain; @Persistent private String description; @Persistent private Date createdAt; @Persistent private String url; @Persistent private String contextName; @Persistent private String waveID; @Persistent private String creator; @Persistent private String language; @Persistent private Visibility visibility = Visibility.PRIVATE; @Persistent private Status status = Status.DEFAULT; //@Element(dependent = true) //@Persistent(mappedBy = context) //private ListRequirementModule requirementsModule; //@Element(dependent = true) //@Persistent(mappedBy = context) //private ListRepository repositoryList; //@Element(dependent = true) //@Persistent(mappedBy = context) //private ListTag tag; public Context() { //this.repositoryList = new ArrayListRepository(); //this.requirementsModule = new ArrayListRequirementModule(); //this.tag = new ArrayListTag(); this.visibility = Visibility.PRIVATE; this.status = Status.DEFAULT; } public String getCreator() { return creator; } public void setCreator(String creator) { this.creator = creator; } public String getContextName() { return contextName; } public void setContextName(String contextName) { this.contextName = contextName; } public Date getCreatedAt() { return createdAt; } public void setCreatedAt(Date createdAt) { this.createdAt = createdAt; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public String getDomain() { return domain; } public void setDomain(String domain) { this.domain = domain; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public String getWaveID() { return waveID; } public void setWaveID(String waveID) { this.waveID = waveID; } public String getLanguage() { return language; } public void setLanguage(String language) { this.language = language; } public Status getStatus() { return status; } public void setStatus(Status status) { this.status = status; } public Visibility getVisibility() { return visibility; } public void setVisibility(Visibility visibility) { this.visibility = visibility; } @Override public boolean equals(Object obj) { if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Context other = (Context) obj; if (this.id != other.id (this.id == null || ! this.id.equals(other.id))) { return false; } if ((this.domain == null) ? (other.domain != null) : ! this.domain.equals(other.domain)) { return false; } if ((this.url == null) ? (other.url != null) : ! this.url.equals(other.url)) { return false; } if ((this.waveID == null) ? (other.waveID != null) : ! this.waveID.equals(other.waveID)) { return false; } return true; } @Override public int hashCode() { int hash = 7; hash = 13 * hash + (this.id != null ? this.id.hashCode() : 0); hash = 13 * hash + (this.domain != null ? this.domain.hashCode() : 0); hash = 13 * hash + (this.url != null ?
[appengine-java] Re: Local Persistance of Data
Hello Ian, I did try the URL but couldnt get the VIEW. I have configured my apps with struts2 and tiles2. do i have to included any thing else in my Mapping. I m getting an ERROR as HTTP ERROR 404 Problem accessing /_ah/admin. Reason: There is no Action mapped for namespace / and action name admin. Powered by Jetty:// can you guide me to as how to resolve it. Thanks and Regards Prateek On Jun 23, 6:37 am, Ian Marshall ianmarshall...@gmail.com wrote: You're welcome. Of course, if you do not want to view your locally-persisted entities and just want to delete them all, just follow the instructions give at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.ht... -- 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: Local Persistance of Data
Hello Prateek, Are you trying to access the development web server console web application? If so, is the full URL you tried http://localhost:8080/_ah/admin (or whatever port number you use locally to test your URLs using the dev app server)? Cheers, Ian On Jun 23, 6:37 pm, Prateek bittooagar...@gmail.com wrote: Hello Ian, I did try the URL but couldnt get the VIEW. I have configured my apps with struts2 and tiles2. do i have to included any thing else in my Mapping. I m getting an ERROR as HTTP ERROR 404 Problem accessing /_ah/admin. Reason: There is no Action mapped for namespace / and action name admin. Powered by Jetty:// can you guide me to as how to resolve it. Thanks and Regards Prateek On Jun 23, 6:37 am, Ian Marshall ianmarshall...@gmail.com wrote: You're welcome. Of course, if you do not want to view your locally-persisted entities and just want to delete them all, just follow the instructions give at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.ht... -- 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] Google Plugin for Eclipse 3.6 is now available
Hey folks, Google Plugin for Eclipse 1.3.3 is out with support for Eclipse 3.6. Install it with Eclipse 3.6's new Eclipse Marketplace feature by going to Help Eclipse Marketplace, and search for Google Plugin for Eclipse. Alternatively, here are the update sites: - Eclipse Helios (3.6): http://dl.google.com/eclipse/plugin/3.6 - Eclipse Galileo (3.5): http://dl.google.com/eclipse/plugin/3.5 - Eclipse Ganymede (3.4): http://dl.google.com/eclipse/plugin/3.4 - Eclipse Europa (3.3): http://dl.google.com/eclipse/plugin/3.3 Need detailed instructions? Check out the quick start guide: http://code.google.com/eclipse/docs/getting_started.html Enjoy! -- 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] Almacén de datos AppEngine
Hola, quería saber como usar de manera local, sin subir la aplicación a la web el tema del almacén de datos local_db.bin, si puedo visualizar la base de datos de manera local en mi equipo de alguna manera. Gracias Lisandro -- 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] Almacén de datos AppEngine
por lo que leo aca [1] por lo menos tenes que tener corriendo el devserver. por otro lado te recomiendo que reformules la pregunta en ingles probablemente obtengas mas respuestas. Saludos [1] http://code.google.com/appengine/docs/java/tools/devserver.html#The_Development_Console On Wed, Jun 23, 2010 at 7:58 PM, lisandrodc lisandr...@gmail.com wrote: Hola, quería saber como usar de manera local, sin subir la aplicación a la web el tema del almacén de datos local_db.bin, si puedo visualizar la base de datos de manera local en mi equipo de alguna manera. Gracias Lisandro -- 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. -- Gabriel Sosa Si buscas resultados distintos, no hagas siempre lo mismo. - Einstein -- 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: Local Persistance of Data
Hi! I have a same problem that Prateek. I use Struts 2. I try to access the development web server console web application. http://localhost:8080, run, but at run http://localhost:8080/_ah/admin or: http://localhost:8080/_ah/login But for both, says the page: Struts Problem Report Struts has detected an unhandled exception: # Messages: There is no Action mapped for action name login. On 23 jun, 16:50, Ian Marshall ianmarshall...@gmail.com wrote: Hello Prateek, Are you trying to access the development web server console web application? If so, is the full URL you tried http://localhost:8080/_ah/admin (or whatever port number you use locally to test your URLs using the dev app server)? Cheers, Ian On Jun 23, 6:37 pm, Prateek bittooagar...@gmail.com wrote: Hello Ian, I did try the URL but couldnt get the VIEW. I have configured my apps with struts2 and tiles2. do i have to included any thing else in my Mapping. I m getting an ERROR as HTTP ERROR 404 Problem accessing /_ah/admin. Reason: There is no Action mapped for namespace / and action name admin. Powered by Jetty:// can you guide me to as how to resolve it. Thanks and Regards Prateek On Jun 23, 6:37 am, Ian Marshall ianmarshall...@gmail.com wrote: You're welcome. Of course, if you do not want to view your locally-persisted entities and just want to delete them all, just follow the instructions give at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.ht... -- 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: How to make Eclipse AppEngine+GWT plugin use proxy for update check.
Thanks Rajeev. I've raised http://code.google.com/p/googleappengine/issues/detail?id=3389 Setting the proxy properties did work. I hadn't tried that because i had presumed it used the network access mechanism specified in com.google.appengine.api.urlfetch.dev.LocalURLFetchService, which doesn't pay attention to proxy properties. It would be great if that could be fixed to. I have a patch for it attached to the issue: http://code.google.com/p/googleappengine/issues/detail?id=544, and applying it would make upgrading much easier. (Yes, being behind a proxy is annoying) On Jun 23, 12:24 am, Rajeev Dayal rda...@google.com wrote: Can you file an issue for this (passing DevAppServer arguments when running with GWT)? As for a workaround, can you try adding the following JVM arguments to your launch configuration: -Dhttp.proxyHost=http proxy hostname -Dhttp.proxyPort=http proxy port -Dhttps.proxyHost=https proxy hostname -Dhttps.proxyPort=https proxy hostname On Wed, Jun 16, 2010 at 1:07 AM, Nick Lothian nick.loth...@gmail.comwrote: -- 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] Almacén de datos AppEngine
Go to localhost:/_ah/admin/ On 24 Jun 2010, at 05:58, lisandrodc wrote: Hola, quería saber como usar de manera local, sin subir la aplicación a la web el tema del almacén de datos local_db.bin, si puedo visualizar la base de datos de manera local en mi equipo de alguna manera. Gracias Lisandro -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com . To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en . -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [appengine-java] Re: Local Persistance of Data
You probably have struts configured to handle all requests. Wicket uses a filter rather than a servlet so it can pass unhandled URL's down the chain. Can you configure Struts like this? On 24 Jun 2010, at 06:36, lisandrodc wrote: Hi! I have a same problem that Prateek. I use Struts 2. I try to access the development web server console web application. http://localhost:8080, run, but at run http://localhost:8080/_ah/admin or: http://localhost:8080/_ah/login But for both, says the page: Struts Problem Report Struts has detected an unhandled exception: # Messages: There is no Action mapped for action name login. On 23 jun, 16:50, Ian Marshall ianmarshall...@gmail.com wrote: Hello Prateek, Are you trying to access the development web server console web application? If so, is the full URL you tried http://localhost:8080/_ah/admin (or whatever port number you use locally to test your URLs using the dev app server)? Cheers, Ian On Jun 23, 6:37 pm, Prateek bittooagar...@gmail.com wrote: Hello Ian, I did try the URL but couldnt get the VIEW. I have configured my apps with struts2 and tiles2. do i have to included any thing else in my Mapping. I m getting an ERROR as HTTP ERROR 404 Problem accessing /_ah/admin. Reason: There is no Action mapped for namespace / and action name admin. Powered by Jetty:// can you guide me to as how to resolve it. Thanks and Regards Prateek On Jun 23, 6:37 am, Ian Marshall ianmarshall...@gmail.com wrote: You're welcome. Of course, if you do not want to view your locally-persisted entities and just want to delete them all, just follow the instructions give at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.ht ... -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com . To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en . -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: Local Persistance of Data
Hello Ian , Hello John, Thanks for the response. @Ian : Yes, i m using the same URL but with my own port config ie http://localhost:/_ah/admin. I even tried http://localhost:/_ah/login but no output. I can see the local_db.bin file in my WEB-INF/appengine- generated/ directory. @ John, yep you are correct, all my request are mapped to be handle by struts. its by default '/' mapping. But that is required for my apps. if i config my struts to handle /_ah/admin as well where would i redirect him. Thanks and Regards Prateek So you On Jun 24, 10:19 am, John Patterson jdpatter...@gmail.com wrote: You probably have struts configured to handle all requests. Wicket uses a filter rather than a servlet so it can pass unhandled URL's down the chain. Can you configure Struts like this? On 24 Jun 2010, at 06:36, lisandrodc wrote: Hi! I have a same problem that Prateek. I use Struts 2. I try to access the development web server console web application.http://localhost:8080, run, but at run http://localhost:8080/_ah/admin or: http://localhost:8080/_ah/login But for both, says the page: Struts Problem Report Struts has detected an unhandled exception: # Messages: There is no Action mapped for action name login. On 23 jun, 16:50, Ian Marshall ianmarshall...@gmail.com wrote: Hello Prateek, Are you trying to access the development web server console web application? If so, is the full URL you tried http://localhost:8080/_ah/admin (or whatever port number you use locally to test your URLs using the dev app server)? Cheers, Ian On Jun 23, 6:37 pm, Prateek bittooagar...@gmail.com wrote: Hello Ian, I did try the URL but couldnt get the VIEW. I have configured my apps with struts2 and tiles2. do i have to included any thing else in my Mapping. I m getting an ERROR as HTTP ERROR 404 Problem accessing /_ah/admin. Reason: There is no Action mapped for namespace / and action name admin. Powered by Jetty:// can you guide me to as how to resolve it. Thanks and Regards Prateek On Jun 23, 6:37 am, Ian Marshall ianmarshall...@gmail.com wrote: You're welcome. Of course, if you do not want to view your locally-persisted entities and just want to delete them all, just follow the instructions give at: http://code.google.com/intl/en/appengine/docs/java/tools/devserver.ht ... -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com . To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com . For more options, visit this group athttp://groups.google.com/group/google-appengine-java?hl=en . -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
Re: [google-appengine] Re: Is there any way to get around the Urlfetch 10 second deadline limit?
if it takes that much time for your server to respond your likely to fall under the 30seconds limit. if its a data that you need to receive back i suggest you alter the 2nd servers code to call a url on the app engine once its complete with a dump of the data. push and not pull. - Cheers, public static function AlonCarmel() { //Contact me var email = 'a...@aloncarmel.me'; var twitter = '@aloncarmel'; var web = 'http://aloncarmel.me'; var phone = '+972-54-4860380'; } * If you received an unsolicited email from by mistake that wasn't of your matter please delete immediately. All E-mail sent from Alon Carmel is copyrighted to Alon Carmel 2008. Any details revealed in e-mails sent by Alon Carmel are owned by the Author only. Any attempt to duplicate or imitate any of the Content is prohibited under copyright law 2008. On Wed, Jun 23, 2010 at 4:33 AM, rpalmer68 rich...@thepalmers.com.auwrote: Thanks for the replies. I'm new to all of this, but doesn't the async method still have a deadline of 10 seconds from when the urlfetch.make_fetch_call is made? Now since the call goes to my server and then my server could take 15 seconds to run it's task and retuen a simple Data Added OK or Data Removed OK response I can't see how using async will help at all. As I say, I'm very green so I may be missing the point completely, so sorry if I am. 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.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] Re: Extremely long deployment wait
+1 the same here On Wed, Jun 23, 2010 at 6:44 AM, Eric Ka Ka Ng ngk...@gmail.com wrote: me 2. I experienced these problems in recent few days. Each time, the problem lasts for a hour or two. This annoys us very much as we can't do any deployment and developmenti'm not sure if this problem happens just for some applications, or all applications. could anyone from google team tell us whats going on and when these problems would be fixed? Regards, Eric Ng Ka Ka On 23 June 2010 12:27, tav t...@espians.com wrote: Sadly, yes. On Jun 23, 5:24 am, renderpaz kev...@gmail.com wrote: Anyone else seeing 5+ min wait deploying python apps? Kevin -- You 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. -- Siegfried Hirsch Neue Anschrift: hhS - Lipowskystr. 16 - 81373 München - (089) 5484 3564 - skype:shirsch Fax +49 - (0)89 - 943 992 698 - http://www.rss-blogger.de Bei Google Buzz? Hier gibts die http://www.buzz-charts.com -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: What is a pattern for keeping track of current users in google app engine?
I'm just giving a not-well-thought suggestion, but I'd rather use memcache for this. I guess something like using a time-dependent code as the key (i.e. a counter which increments every 30 seconds) and a list of user ids as the value, and simply doing a get() on the cache for the current counter value would work. I don't know how this could scale, due to concurrent updates, but I definitely think Memcache is the way to go, not datastore. Regards Lorenzo On Jun 23, 5:45 am, Ryan ryeterr...@gmail.com wrote: Each of my users is polling the server every few seconds. I need to keep a list of the users that have polled in the last 30 seconds handy for a task I have queued to run every few seconds. The obvious way I see to do it is to update a datastore entry every time the user polls, and query the entries that have a timestamp within the last N seconds within my task queue. I can't imagine this scaling well. Any recommendations? 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] Image Handler in Python
Dear All, I'm trying to handle pictures in my app. I'm trying to do it with the blobstore but I can't understand how it works. I just need to have a sidebar on the app where people can upload immagine and the app just shows thumbnails of these and clicking on it just links to the imagine page (old style, just a link to the imagine). Is there other solutions for this problem? Can I store the thumbs and the pics in a Expando DB? I can't understand if the blobs in the datastore are only long strings or picture too. But I suppose the the blobstore can store a lot more than a Expando DB. So I need just an handler to upload the picture (I can do this with the blobsotre, but I can't store) and a Handler to show them. Could someone show me the way? Please note, I'm not a programmer or a IT, this is just an hobby and I have no expertise in this matter. Regards Max -- My email: massimiliano.pietr...@gmail.com My Google Wave: massimiliano.pietr...@googlewave.com -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: What is a pattern for keeping track of current users in google app engine?
I wouldnt suggest Memcache for this purpose as memcache doesnt guarntee that what you put in it will be available after 30 seconds. Memcach can be flushed because of number of reasons. And memcache defnitely will not be scalable, if your number of ysers goes high then least used entries will be deleted automatically even if that entry comes under criteria of last 30 seconds. I think your first thought about using datastore is good enough. Why do you think Datastore will not be scalable? May be you can explain your problem statement bit more. On Jun 23, 9:11 am, l.denardo lorenzo.dena...@gmail.com wrote: I'm just giving a not-well-thought suggestion, but I'd rather use memcache for this. I guess something like using a time-dependent code as the key (i.e. a counter which increments every 30 seconds) and a list of user ids as the value, and simply doing a get() on the cache for the current counter value would work. I don't know how this could scale, due to concurrent updates, but I definitely think Memcache is the way to go, not datastore. Regards Lorenzo On Jun 23, 5:45 am, Ryan ryeterr...@gmail.com wrote: Each of my users is polling the server every few seconds. I need to keep a list of the users that have polled in the last 30 seconds handy for a task I have queued to run every few seconds. The obvious way I see to do it is to update a datastore entry every time the user polls, and query the entries that have a timestamp within the last N seconds within my task queue. I can't imagine this scaling well. Any recommendations? Thanks.- Hide quoted text - - Show quoted text - -- You 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: Maximum number of versions
You didn't properly read his question. He said he had less than 10 versions so the limitation shouldn't apply here. Anyways, I had the same problem, I currently have 7 versions (after deleting two) and I still get that error. On May 27, 3:26 pm, Aurelian aurelian.vacar...@googlemail.com wrote: it's quite normal, because the maximum number of applications is 10.. i keep only 8 versions, and always delete the oldest. ciao.. On May 27, 6:42 pm, Jairo Vasquez jairo.vasq...@gmail.com wrote: Hi, This error is very common. Error 403: --- begin server output --- Too Many Versions (403) The application already has the maximum number of versions. --- end server output --- And I only have 9 versions right now. Usually I have less versions than that and sometimes the error appear. [image: icon.gif] Jairo Vasquez * Paymentez Lead Developer* O +1.786.975.2339 x 213 M +57.311.303.8417 Medellín, Colombia icon.gif 1KViewDownload -- You 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: Extremely long deployment wait
too bad it even starts raising the following error: Error 403: --- begin server output --- Too Many Versions (403) The application already has the maximum number of versions. --- end server output --- could someone from google help? On 23 June 2010 15:45, Siegfried Hirsch siegfried.hir...@gmail.com wrote: +1 the same here On Wed, Jun 23, 2010 at 6:44 AM, Eric Ka Ka Ng ngk...@gmail.com wrote: me 2. I experienced these problems in recent few days. Each time, the problem lasts for a hour or two. This annoys us very much as we can't do any deployment and developmenti'm not sure if this problem happens just for some applications, or all applications. could anyone from google team tell us whats going on and when these problems would be fixed? Regards, Eric Ng Ka Ka On 23 June 2010 12:27, tav t...@espians.com wrote: Sadly, yes. On Jun 23, 5:24 am, renderpaz kev...@gmail.com wrote: Anyone else seeing 5+ min wait deploying python apps? Kevin -- You 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. -- Siegfried Hirsch Neue Anschrift: hhS - Lipowskystr. 16 - 81373 München - (089) 5484 3564 - skype:shirsch Fax +49 - (0)89 - 943 992 698 - http://www.rss-blogger.de Bei Google Buzz? Hier gibts die http://www.buzz-charts.com -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You 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] Java POJO Mapper
A few months ago I went ahead and wrote a POJO mapper for AppEngine and I just now got around to putting it up on Google Code. If anybody wants to try it out here it is. I hope somebody can find it useful. http://code.google.com/p/appengine-catfish/ It's similar to Objectify and Twig. Let me know what y'all think. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: What is a pattern for keeping track of current users in google app engine?
On Jun 23, 2010, at 4:11 PM, l.denardo wrote: I'm just giving a not-well-thought suggestion, but I'd rather use memcache for this. I guess something like using a time-dependent code as the key (i.e. a counter which increments every 30 seconds) and a list of user ids as the value, and simply doing a get() on the cache for the current counter value would work. Alternatively, if you only want to see whether the user has polled, you could use the key 'user_%s_polled', substituting %s for the user's id, and place it in memcache with an expiration time of 30s. Every time you update the key, you can reset the expiration time. In Python, this would look like: memcache.set(user_%s_polled % user, True, time=30) Simply getting the key would tell you whether or not the user has polled in the last 30s. Memcache would then handle expiration; after 30s, the key is removed for you. Jan Michael Ibanez jmiba...@gmail.com -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Login page for mobile?
*** I don't know if this violates Google's terms of service, so use this method at your own risk. *** You can POST some parameters to, I don't know what they are off hand. https://www.google.com/accounts/ServiceLoginAuth And then store the cookies. If you're on iPhone you can pass a cookie storage to NSURLConnection which will automatically persist the cookies for subsequent requests. Entering the wrong password too many times will lock out the user's account and you'll have to direct the user to some page with a CAPTCHA to unlock it. I'm pretty sure the bulkloader.py script uses this method to authenticate users. This post may help. Just translate the CURL/PHP to the equivalent mobile code. http://curl.haxx.se/mail/curlphp-2006-01/0014.html Cheers. On Mon, Jun 21, 2010 at 12:05 PM, Harshal p.hars...@gmail.com wrote: Hi, The app relies on google accounts ( http://code.google.com/appengine/docs/python/users/) using app engine's API. When visited from mobile it gives the normal google login page. Is there any way to get a mobile friendly google login page (similar to whats used by gmail or something?) -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: Maximum number of versions
i got the same problem and i hv 6 versions only. recently the deployment time is very slow, and can often fails. when these problems happens, the Maximum number of versions problem may occur too. i guess there are something wrong with the deployment system now... On 23 June 2010 17:02, iceanfire iceanf...@gmail.com wrote: You didn't properly read his question. He said he had less than 10 versions so the limitation shouldn't apply here. Anyways, I had the same problem, I currently have 7 versions (after deleting two) and I still get that error. On May 27, 3:26 pm, Aurelian aurelian.vacar...@googlemail.com wrote: it's quite normal, because the maximum number of applications is 10.. i keep only 8 versions, and always delete the oldest. ciao.. On May 27, 6:42 pm, Jairo Vasquez jairo.vasq...@gmail.com wrote: Hi, This error is very common. Error 403: --- begin server output --- Too Many Versions (403) The application already has the maximum number of versions. --- end server output --- And I only have 9 versions right now. Usually I have less versions than that and sometimes the error appear. [image: icon.gif] Jairo Vasquez * Paymentez Lead Developer* O +1.786.975.2339 x 213 M +57.311.303.8417 Medellín, Colombia icon.gif 1KViewDownload -- You 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] Login page for mobile?
Great. Thanks Patrick for that hack. Ikai, Nick do you guys have any plans to support it out-of-box? On Wed, Jun 23, 2010 at 2:51 PM, Patrick Twohig patr...@namazustudios.comwrote: *** I don't know if this violates Google's terms of service, so use this method at your own risk. *** You can POST some parameters to, I don't know what they are off hand. https://www.google.com/accounts/ServiceLoginAuth And then store the cookies. If you're on iPhone you can pass a cookie storage to NSURLConnection which will automatically persist the cookies for subsequent requests. Entering the wrong password too many times will lock out the user's account and you'll have to direct the user to some page with a CAPTCHA to unlock it. I'm pretty sure the bulkloader.py script uses this method to authenticate users. This post may help. Just translate the CURL/PHP to the equivalent mobile code. http://curl.haxx.se/mail/curlphp-2006-01/0014.html Cheers. On Mon, Jun 21, 2010 at 12:05 PM, Harshal p.hars...@gmail.com wrote: Hi, The app relies on google accounts ( http://code.google.com/appengine/docs/python/users/) using app engine's API. When visited from mobile it gives the normal google login page. Is there any way to get a mobile friendly google login page (similar to whats used by gmail or something?) -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Patrick H. Twohig. Namazu Studios P.O. Box 34161 San Diego, CA 92163-4161 -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
Re: [google-appengine] Re: How to speed up the task queue execution?
Do they address different entity groups or just a select few? You can only do sustained about 1 transaction per second per entity group (a post by Nick Johnson). Maybe you get by doing 2 per second resulting in 120 updates finishing in 1 minutes. Have a look at the talk of Bret Slatkin of I/O 2010, the fan-in solution might be something to use. 2010/6/23 Tristan Slominski tristan.slomin...@gmail.com: :) What do the logs say? I think tasks are like any other http request, are you starting new processes a bunch of time? That's 7-8 seconds each time. That may be the cause. On Jun 22, 2010 4:53 PM, dflorey daniel.flo...@gmail.com wrote: And: It is running fast like hell in dev environment. Just a few seconds to run the full bunch of tasks. On Jun 22, 11:51 pm, dflorey daniel.flo...@gmail.com wrote: :-) Yes, I can see like 1000 wait... -- You 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.
[google-appengine] User model not indexed
Hi there, when using appengine_django project I saw there are no index at all on User model, look: username = db.StringProperty(required=True) first_name = db.StringProperty() last_name = db.StringProperty() email = db.EmailProperty() password = db.StringProperty() is_staff = db.BooleanProperty(default=False, required=True) is_active = db.BooleanProperty(default=True, required=True) is_superuser = db.BooleanProperty(default=False, required=True) last_login = db.DateTimeProperty(auto_now_add=True, required=True) date_joined = db.DateTimeProperty(auto_now_add=True, required=True) But when someone login, you must match username and password (I'm not using Google Account), is there some kind of magic or it's simple wrong? I though that at last username, is_active and password would have indexes. -- You 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: Maximum number of versions
I got the same problem, but removing 3 versions had fixed it, besides... On Wed, Jun 23, 2010 at 6:35 AM, Eric Ka Ka Ng ngk...@gmail.com wrote: i got the same problem and i hv 6 versions only. recently the deployment time is very slow, and can often fails. when these problems happens, the Maximum number of versions problem may occur too. i guess there are something wrong with the deployment system now... It's really very slow, before it took less than a minute to deploy, now it's taking 3~5 minutes... On 23 June 2010 17:02, iceanfire iceanf...@gmail.com wrote: You didn't properly read his question. He said he had less than 10 versions so the limitation shouldn't apply here. Anyways, I had the same problem, I currently have 7 versions (after deleting two) and I still get that error. On May 27, 3:26 pm, Aurelian aurelian.vacar...@googlemail.com wrote: it's quite normal, because the maximum number of applications is 10.. i keep only 8 versions, and always delete the oldest. ciao.. On May 27, 6:42 pm, Jairo Vasquez jairo.vasq...@gmail.com wrote: Hi, This error is very common. Error 403: --- begin server output --- Too Many Versions (403) The application already has the maximum number of versions. --- end server output --- And I only have 9 versions right now. Usually I have less versions than that and sometimes the error appear. [image: icon.gif] Jairo Vasquez * Paymentez Lead Developer* O +1.786.975.2339 x 213 M +57.311.303.8417 Medellín, Colombia icon.gif 1KViewDownload -- You 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.
[google-appengine] Re: typical monthly costs for running an app
On Jun 22, 9:49 pm, Tristan tristan.slomin...@gmail.com wrote: User sends a request for a page.. cold start, need new instance ~ 10,000 ms = 10s. User stares at it for 2 seconds, clicks an interaction... we're unlucky, new instance ~10,000 ms = 10s. User executes a task that delegates something to the queue. Oh no, start of a task, new instance ~10,000 ms = 10s. If your instances are taking 1ms of CPU to start up, you're doing something horribly wrong. Period. -- You 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: typical monthly costs for running an app
On Wed, Jun 23, 2010 at 5:09 PM, Geoffrey Spear geoffsp...@gmail.comwrote: On Jun 22, 9:49 pm, Tristan tristan.slomin...@gmail.com wrote: User sends a request for a page.. cold start, need new instance ~ 10,000 ms = 10s. User stares at it for 2 seconds, clicks an interaction... we're unlucky, new instance ~10,000 ms = 10s. User executes a task that delegates something to the queue. Oh no, start of a task, new instance ~10,000 ms = 10s. If your instances are taking 1ms of CPU to start up, you're doing something horribly wrong. Period. That's pretty brave statement given how much the start times vary. Sometimes my app needs 3s, sometimes it takes 9s. -- You 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] Re: typical monthly costs for running an app
I would love to know how much traffic (or better, how many topics and subscriptions) PubSubHubBub serves, and how much it costs (even if nobody really pays for it). On Wed, Jun 23, 2010 at 11:09 AM, Geoffrey Spear geoffsp...@gmail.com wrote: On Jun 22, 9:49 pm, Tristan tristan.slomin...@gmail.com wrote: User sends a request for a page.. cold start, need new instance ~ 10,000 ms = 10s. User stares at it for 2 seconds, clicks an interaction... we're unlucky, new instance ~10,000 ms = 10s. User executes a task that delegates something to the queue. Oh no, start of a task, new instance ~10,000 ms = 10s. If your instances are taking 1ms of CPU to start up, you're doing something horribly wrong. Period. -- You 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] Re: typical monthly costs for running an app
Good question Ross. :) +1 On Wed, Jun 23, 2010 at 9:11 PM, Ross M Karchner rosskarch...@gmail.comwrote: I would love to know how much traffic (or better, how many topics and subscriptions) PubSubHubBub serves, and how much it costs (even if nobody really pays for it). On Wed, Jun 23, 2010 at 11:09 AM, Geoffrey Spear geoffsp...@gmail.com wrote: On Jun 22, 9:49 pm, Tristan tristan.slomin...@gmail.com wrote: User sends a request for a page.. cold start, need new instance ~ 10,000 ms = 10s. User stares at it for 2 seconds, clicks an interaction... we're unlucky, new instance ~10,000 ms = 10s. User executes a task that delegates something to the queue. Oh no, start of a task, new instance ~10,000 ms = 10s. If your instances are taking 1ms of CPU to start up, you're doing something horribly wrong. Period. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You 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: Static images not being served
Hi, It seems more likely that you're encountering capitalization issues. Most platforms, including the deployment platform for App Engine, are case sensitive. Make sure you're referring to files with the same capitalization as they're stored with. -Nick Johnson On Mon, Jun 21, 2010 at 8:56 PM, n8gray n8g...@gmail.com wrote: On Jun 21, 12:51 pm, n8gray n8g...@gmail.com wrote: Hi all, My static images aren't being served. ... Thanks for any help, and please CC me with replies. Ok, sorry for replying to myself, but just after posting this I tried renaming my image file from HexaLex-logo.png to logo.png, and that solved the problem. I'm guessing the '-' is the problem. That's gotta be a bug in GAE, right? Thanks, -n8 -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- Nick Johnson, Developer Programs Engineer, App Engine Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number: 368047 -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Filter using Key
Hi all Is it possible to filter entity using Key as a filter. Somthing like given below supplierQuery.addFilter(Key, FilterOperator.EQUAL, key); -- You 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] hoe to deploy
HI, i want to deploy the application can you help me out . i followed one of the steps which i got when i was browsing . every thing went fine for some time but when i want to deploy i was in trouble they said that we will find one deploy icon in tool bar but i cant find it . iam having both application title and identifier too.where can i find deploy icon or how can i deploy my app. Thank you in advance -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: Filter using Key
If you know an entity's key, there's no need to do a query at all; you can simply get the entity (using the low level Java API, as you seem to be, I believe you want DatastoreService.get(key) ). On Jun 23, 7:27 am, MANISH DHIMAN manisd...@gmail.com wrote: Hi all Is it possible to filter entity using Key as a filter. Somthing like given below supplierQuery.addFilter(Key, FilterOperator.EQUAL, key); -- You 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] Possible to have more than 10 applications?
Hey, I've been developing robots for Google Wave since last year and I'm going through my applications quite quickly. Is there anyway to increase the 10 application limit? Thanks Tom -- You 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: What is a pattern for keeping track of current users in google app engine?
I'm guessing it wont be scalable because if I have 1000+ polling users, I would have to query and fetch that many entries every time my task runs every second or so. Maybe that's not so bad? It seems like a lot of querying and fetching to me. On Wed, Jun 23, 2010 at 4:01 AM, ping2ravi ping2r...@gmail.com wrote: I wouldnt suggest Memcache for this purpose as memcache doesnt guarntee that what you put in it will be available after 30 seconds. Memcach can be flushed because of number of reasons. And memcache defnitely will not be scalable, if your number of ysers goes high then least used entries will be deleted automatically even if that entry comes under criteria of last 30 seconds. I think your first thought about using datastore is good enough. Why do you think Datastore will not be scalable? May be you can explain your problem statement bit more. On Jun 23, 9:11 am, l.denardo lorenzo.dena...@gmail.com wrote: I'm just giving a not-well-thought suggestion, but I'd rather use memcache for this. I guess something like using a time-dependent code as the key (i.e. a counter which increments every 30 seconds) and a list of user ids as the value, and simply doing a get() on the cache for the current counter value would work. I don't know how this could scale, due to concurrent updates, but I definitely think Memcache is the way to go, not datastore. Regards Lorenzo On Jun 23, 5:45 am, Ryan ryeterr...@gmail.com wrote: Each of my users is polling the server every few seconds. I need to keep a list of the users that have polled in the last 30 seconds handy for a task I have queued to run every few seconds. The obvious way I see to do it is to update a datastore entry every time the user polls, and query the entries that have a timestamp within the last N seconds within my task queue. I can't imagine this scaling well. Any recommendations? Thanks.- Hide quoted text - - Show quoted text - -- You 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] Re: What is a pattern for keeping track of current users in google app engine?
If I do it this way, how can I know which user id to try to get from the memcache? On Wed, Jun 23, 2010 at 4:14 AM, Jan Michael Ibanez jmiba...@gmail.comwrote: On Jun 23, 2010, at 4:11 PM, l.denardo wrote: I'm just giving a not-well-thought suggestion, but I'd rather use memcache for this. I guess something like using a time-dependent code as the key (i.e. a counter which increments every 30 seconds) and a list of user ids as the value, and simply doing a get() on the cache for the current counter value would work. Alternatively, if you only want to see whether the user has polled, you could use the key 'user_%s_polled', substituting %s for the user's id, and place it in memcache with an expiration time of 30s. Every time you update the key, you can reset the expiration time. In Python, this would look like: memcache.set(user_%s_polled % user, True, time=30) Simply getting the key would tell you whether or not the user has polled in the last 30s. Memcache would then handle expiration; after 30s, the key is removed for you. Jan Michael Ibanez jmiba...@gmail.com -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You 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: What is a pattern for keeping track of current users in google app engine?
You wouldn't - the concept to use mcache would be to make a hash or a token for the time second'th element i.e 1-30 store each pole user in the correct element and then read the users back out of mcache by looping the 30 or mcache containers I did give this some thought last night when i saw your post but i ran out of time the idea would be lets say we use pole+1 to 30 as a key pole1 - happened 1 sec ago pole29 - happened 29 sec ago pole30 - will be removed when 31 secs elapse - as we set the mcache to destroy poles after 30 seconds then when somone poles we get the time convert it into a number 1-30 being second elements in a min - this need some thought maybe seconds devide by 2 - something like that we then add the user_key to to the pole. maybe a dictionary? then every second when you task runs you load using a loop pole1pole30 grab all the keys in the dict and make a list then if you need to load the models for the user you go a db.get(list) i think that starting to sound like it might work - sure some bright spark can add some more detail hope that helps Regards Martin Webb The information contained in this email is confidential and may contain proprietary information. It is meant solely for the intended recipient. Access to this email by anyone else is unauthorised. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted in reliance on this, is prohibited and may be unlawful. No liability or responsibility is accepted if information or data is, for whatever reason corrupted or does not reach its intended recipient. No warranty is given that this email is free of viruses. The views expressed in this email are, unless otherwise stated, those of the author From: Rye Terrell ryeterr...@ryeterrell.net To: google-appengine@googlegroups.com Sent: Wed, 23 June, 2010 19:23:53 Subject: Re: [google-appengine] Re: What is a pattern for keeping track of current users in google app engine? If I do it this way, how can I know which user id to try to get from the memcache? On Wed, Jun 23, 2010 at 4:14 AM, Jan Michael Ibanez jmiba...@gmail.com wrote: On Jun 23, 2010, at 4:11 PM, l.denardo wrote: I'm just giving a not-well-thought suggestion, but I'd rather use memcache for this. I guess something like using a time-dependent code as the key (i.e. a counter which increments every 30 seconds) and a list of user ids as the value, and simply doing a get() on the cache for the current counter value would work. Alternatively, if you only want to see whether the user has polled, you could use the key 'user_%s_polled', substituting %s for the user's id, and place it in memcache with an expiration time of 30s. Every time you update the key, you can reset the expiration time. In Python, this would look like: memcache.set(user_%s_polled % user, True, time=30) Simply getting the key would tell you whether or not the user has polled in the last 30s. Memcache would then handle expiration; after 30s, the key is removed for you. Jan Michael Ibanez jmiba...@gmail.com -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You 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] Re: What is a pattern for keeping track of current users in google app engine?
On 10-06-23 20:45, Martin Webb wrote: You wouldn't - the concept to use mcache would be to make a hash or a token for the time second'th element i.e 1-30 store each pole user in the correct element and then read the users back out of mcache by looping the 30 or mcache containers I did give this some thought last night when i saw your post but i ran out of time the idea would be lets say we use pole+1 to 30 as a key pole1 - happened 1 sec ago pole29 - happened 29 sec ago pole30 - will be removed when 31 secs elapse - as we set the mcache to destroy poles after 30 seconds then when somone poles we get the time convert it into a number 1-30 being second elements in a min - this need some thought maybe seconds devide by 2 - something like that Surely not, but seconds%30 should work. However, this way you store users who were polling multiple time during the last 30 seconds in multiple poles. When computing the user list, you need to read all 30 poles and merge them. Maybe saving a list of pairs (user, time) in a single pole could be better, and a dictionary mapping users to time would be even better. Each time you would set the value for the current user. From time to time you should evict too old entries, so the data doesn't grow too much. This way, you could use multiple poles too, let's say four of them, indexed by minutes%4 with a timeout like 1 minute. This prevents the data growth and computing the user list you need to look at only the last one or two poles. If there were thousands of users active in the last minute, the data could be so large, that the overhead with reading and storing might be high (no idea how efficient memcache loads and stores work). In such a case splitting users in groups (determined eg. by something like username.hashCode()%8 could help. I'm not sure, if this is the way to go, but it sounds quite simple. we then add the user_key to to the pole. maybe a dictionary? then every second when you task runs you load using a loop pole1pole30 grab all the keys in the dict and make a list then if you need to load the models for the user you go a db.get(list) i think that starting to sound like it might work - sure some bright spark can add some more detail hope that 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] Re: appcfg.py upload_data does not upload all entities
Hi again, Just wondering if anyone have come across this issue. It looks like it should be quite popular. Or is there a better place to ask about this? Thanks in advance. On Jun 21, 8:22 pm, elvin e.v.c...@gmail.com wrote: Good day, everyone. I use appcfg.py script's upload_data functionality to upload backups to my test app. The app is written in Java, but I don't think it matters. I create backups using download_data script. Here's the problem: I have 124 entries of the specific kind in my datastore. All of them are downloaded and saved in a CSV file, so it's 124 lines. When I run upload_data script, it reports that all 124 entries were uploaded. But when I check them in a datastore viewer, only 83-103 of them are there. This effect is 100% reproducible. I then delete the temporary database file and re-run the upload (leaving the already uploaded entries in the datastore), and it progresses a bit, to like 110 entries. Then about 115, 118, and from then on it gets less and less per iteration: 120, 122, 123, 123, 124. So finally all of them appear there but it takes a lot of time and slows drastically in the end. I saw some people mentioning the similar problem (not all of the entries being uploaded) in the Web but their problems had something to do with a patch which I don't use. Any idea why that happens and how it can be fixed? Thanks in advance! appcfg.py script I use is from the following version: release: 1.3.0 timestamp: 1259695715 api_versions: ['1'] -- You 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: What is a pattern for keeping track of current users in google app engine?
The key for the pole would be made as follows second = #get the min interval of the current time if second29 second=second-30 #this gives us 0-29 and then 0-29 again for one min then make the mcache key as key='pole'+second I don't know how many users may pole in one second - but i cant see merging a list stored in each pole would be too much of a handful. If 30 poles are too many use 15 - 1 for each 2 second element or 3 Further more i don't know what info you need on the user - if all you want is their identifier - that can be stored in the list or their email this would save on needing to get the users data from the model using the key. Martin You wouldn't - the concept to use mcache would be to make a hash or a token for the time second'th element i.e 1-30 store each pole user in the correct element and then read the users back out of mcache by looping the 30 or mcache containers I did give this some thought last night when i saw your post but i ran out of time the idea would be lets say we use pole+1 to 30 as a key pole1 - happened 1 sec ago pole29 - happened 29 sec ago pole30 - will be removed when 31 secs elapse - as we set the mcache to destroy poles after 30 seconds then when somone poles we get the time convert it into a number 1-30 being second elements in a min - this need some thought maybe seconds devide by 2 - something like that Surely not, but seconds%30 should work. However, this way you store users who were polling multiple time during the last 30 seconds in multiple poles. When computing the user list, you need to read all 30 poles and merge them. Maybe saving a list of pairs (user, time) in a single pole could be better, and a dictionary mapping users to time would be even better. Each time you would set the value for the current user. From time to time you should evict too old entries, so the data doesn't grow too much. This way, you could use multiple poles too, let's say four of them, indexed by minutes%4 with a timeout like 1 minute. This prevents the data growth and computing the user list you need to look at only the last one or two poles. If there were thousands of users active in the last minute, the data could be so large, that the overhead with reading and storing might be high (no idea how efficient memcache loads and stores work). In such a case splitting users in groups (determined eg. by something like username.hashCode()%8 could help. I'm not sure, if this is the way to go, but it sounds quite simple. we then add the user_key to to the pole. maybe a dictionary? then every second when you task runs you load using a loop pole1pole30 grab all the keys in the dict and make a list then if you need to load the models for the user you go a db.get(list) i think that starting to sound like it might work - sure some bright spark can add some more detail hope that 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. -- You 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 is a pattern for keeping track of current users in google app engine?
I have more then 1000 users online at peak and I'm using datastore for this. Unfortunately, updating last online time costs quite a lot of CPU time. And I'm updating only once per 5 minutes (on each poll I write last online time to memcache and put it into datastore via cron). On Jun 23, 6:45 am, Ryan ryeterr...@gmail.com wrote: Each of my users is polling the server every few seconds. I need to keep a list of the users that have polled in the last 30 seconds handy for a task I have queued to run every few seconds. The obvious way I see to do it is to update a datastore entry every time the user polls, and query the entries that have a timestamp within the last N seconds within my task queue. I can't imagine this scaling well. Any recommendations? 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] How to speed up the task queue execution?
Back to my initial question... ;-) @djidjadji: Thanks for your post! Do you know more about this 1 second limitiaon? I'm working only on separate entity groups (but they are of the same kind) only. I've been in that talk at the Google IO but I'm still confused why I'm not able to execute more than ~2 tasks per second. Is there some global transaction/s limit per app? Or is the problem just that my app has low traffic for a long time and then I'm starting ~1500 concurrent tasks? But doing this for some time, I do not get any warnings about new allocated nodes, but it is still not getting faster. On Jun 23, 5:45 pm, Harshal p.hars...@gmail.com wrote: Good question Ross. :) +1 On Wed, Jun 23, 2010 at 9:11 PM, Ross M Karchner rosskarch...@gmail.comwrote: I would love to know how much traffic (or better, how many topics and subscriptions) PubSubHubBub serves, and how much it costs (even if nobody really pays for it). On Wed, Jun 23, 2010 at 11:09 AM, Geoffrey Spear geoffsp...@gmail.com wrote: On Jun 22, 9:49 pm, Tristan tristan.slomin...@gmail.com wrote: User sends a request for a page.. cold start, need new instance ~ 10,000 ms = 10s. User stares at it for 2 seconds, clicks an interaction... we're unlucky, new instance ~10,000 ms = 10s. User executes a task that delegates something to the queue. Oh no, start of a task, new instance ~10,000 ms = 10s. If your instances are taking 1ms of CPU to start up, you're doing something horribly wrong. Period. -- You 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.comgoogle-appengine%2Bunsubscrib e...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: URL Fetch cannot get multiple cookies
Exact same problem using java.net.HttpURLConnection Filed bug: http://code.google.com/p/googleappengine/issues/detail?id=3379 If anyone has problems with maintaining sessions on other websites from app engine, this is a possible problem. Cookies get corrupted. So vote for it :) -- You 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] How to speed up the task queue execution?
It's not a 1 second limitation. But if you hammer with concurrent transactions on a single entity group you get a lot of collisions and retries and that slows the whole process down. A rule of thumb is don't try to update a single entity group more then once a second for a long period of time. It's not about the kind but the individual instances of a kind. If you have 50 request/s and they all want to update 50 different objects with transactions it should work. It might slow down a bit if they all hit the same tablet server but you won't have collisions The example at the TaskQueue man page also mentions the 1/s update by transaction. 2010/6/24 dflorey daniel.flo...@gmail.com: Back to my initial question... ;-) @djidjadji: Thanks for your post! Do you know more about this 1 second limitiaon? I'm working only on separate entity groups (but they are of the same kind) only. I've been in that talk at the Google IO but I'm still confused why I'm not able to execute more than ~2 tasks per second. Is there some global transaction/s limit per app? Or is the problem just that my app has low traffic for a long time and then I'm starting ~1500 concurrent tasks? But doing this for some time, I do not get any warnings about new allocated nodes, but it is still not getting faster. -- You 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 is a pattern for keeping track of current users in google app engine?
I don't know if the solution allows a user to pole more than once in 30 seconds and i don't know if in fact you need to know if someone has polled multiple times in 30 seconds or keep an audit of all the historical poles - these questions would all change how this could and should be done. If you may have upto 1000 users polling in one 30 second segment then you would have a list of 33 user refs in a list stored in each pole. I also dont know what information must be stored when they pole - if you need time and user ref or just a ref or if in fact you need more information. mcache may loose data - though i am surprised some are saying this could happen in this scenario - so again i don't know how accurate this must be and if in fact a pole was lost from time time whether that would be a problem especially if of course the same users are polling continually and being added to other poles. speed over accuracy? Your first suggestion of using a model is still a good one tho 1000 entities being read every n seconds is hefty in my opinion. especially if you need to read user data from db and not just get the key. In the pole scenario a dictionary could be used and when the user poles their data read and stored in the pole in mcache at the time of polling as i have documented, which would save re-loading data from db when your task runs. That said in addition to my last post with the mcache 30 pole solution - a bug fix is below for working the pole no 1-30 i did mention i ran out of time on this method. The key for the pole would be made as follows second = #get the min interval of the current time from server if second29 second=second-30 #this gives us 0-29 and then 0-29 again for one min then make the mcache key as key='poles%' %(second) If 30 poles are too many use 15 - one for each 2 second element or 10 one for each 3 second element - again their are accuracy concerns here 30 being the more accurate this would be down to what you need from this routine. If you have a need for the user data stored in the list - their is no need to merge it? just load each pole and iterate it doing whatever function you need to pursue? Their is no reason to merge the 30 poles for what reason? Thats just making extra work. This is the only obvious way i can see of using mcache to perform such a task - in comparison to using a model and fetching entities with a time zone. Martin -- You 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: TemplateDoesNotExist: css/datastore.css
I'm using Django 1.0, so it may be that your advice doesn't apply to me. In case it does, I tried following what you're saying. Unfortunately, I'm find it quite difficult to understand what you think the problem is. I get your point about how there's some config in settings.py that sets what template loaders to use. I think what you're saying is that some other file is clobbering that setting. Specifically, you seem to be saying that if the following line exists in one of my files, I'll get sporadic TemplateDoesNotExist errors: from google.appeninge.ext.webapp import template I did a grep on my project, and I don't have that line anywhere. On May 17, 1:13 pm, Roger Hu roger...@gmail.com wrote: This import is causing massive headaches on App Engine deployments with TemplateDoesNotExist sporadic messages. Assuming you have Django 1.1 setup correctly, the global_settings.py file will setup TEMPLATE_LOADERS to load from both the project dir (/templates) as well as any INSTALLED_APPS dir. But we noticed sporadic issues with App Engine reporting the issue: TemplateDoesNotExist: Tried [u'/base/data/home/apps/ myapp1234/1-2-2-8.341999523263263665/templates/volunteer-11.html'] The reason? By default, Django has these two TEMPLATE_LOADERS defined in its global settings (defined in conf/global_settings.py): TEMPLATE_LOADERS = ( 'django.template.loaders.filesystem.load_template_source', 'django.template.loaders.app_directories.load_template_source', ) The second line tells Django to try all the INSTALLED_APPS dirs whenever attempting to render an HTML template. For instance, we do not need to specify volunteer-11.html because it will try to look inside ragendja/templates, accounts/templates, and civio/templates, in the order defined by INSTALLED_APPS inside settings.py: INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.sessions', 'django.contrib.admin', 'ragendja', 'accounts', 'civio' ) If you accidentally import this line in your Python code, from google.appengine.ext.webapp import template The GAE reconfigures TEMPLATE_LOADERS inside google.appengine.ext.webapp.template: import django.conf try: django.conf.settings.configure( DEBUG=False, TEMPLATE_DEBUG=False, TEMPLATE_LOADERS=( 'django.template.loaders.filesystem.load_template_source', ), ) +#from google.appengine.ext.webapp import template The result is TemplateDoesNotExist messages that may or may not occur. 3. If you are using Django 1.1, you must be careful that you're not importing google.appengine.ext.webapp import template. The solution, I believe, is to simply remove all webapp dependency imports: perl -pi.bak -e s/^from google\.appengine\.ext\.webapp(.*)/#from google.appengine.ext.webapp\1/g *.py We're still confirming that these changes will resolve the issue, but it seems to explain the problem we have been having on Django 1.1. Roger On May 10, 12:25 pm, Fredrik Bonander carl.fredrik.bonan...@gmail.com wrote: I have a similar problem. When I updated to django 1.1 I get TemplateSyntaxError: Template u'../index.html' cannot be extended, because it doesn't exist. It seams that the problem lies in that the TEMPLATE_DIRS is not set wrong. But I don't know how set in as a relative path. Anyone successfully used django 1.1 in GAE? ..fredrik On May 8, 2010, at 2:27 PM,allyourcodewrote: I think the problem is that my TEMPLATE_DIRS gets cleared at some point, even though my app doesn't do that, at least not directly. My guess is that this is happening somewhere in the SDK or Django helper to implement the admin pages, but I can't tell which piece is doing the manipulation :/. I'll try to upgrade my SDK, but again, when I tried this before, my app ended up dead in the water (forget what issues I was running into before). On May 7, 2:08 am, Nick Johnson (Google) nick.john...@google.com wrote: Hi, It's impossible to suggest what might be wrong without seeing the code in question. It looks like you're probably running into problems with relative or absolute paths, or your css file is marked as static in your app.yaml. You should definitely upgrade your SDK - 1.3.3 is the latest version, and 1.2.7 is very much out of date. -Nick Johnson On Fri, May 7, 2010 at 1:00 AM,allyourcodeallyourc...@gmail.com wrote: Hi, I'm having a problem developing my GAE application. It's been reported as issue 464 on the GAE issue tracker, but it's not getting any attention, due to difficulties with reproducing the issue; hence, I'm turning to the GAE group to look for support. Restarting the dev server temporarily gets rid of the problem, but it keeps coming back. I'm worried this problem will come up in production, but we haven't released our app yet, so I've never had a chance to see how it works in production. One symptom
[google-appengine] Problem with maps api key
Whenever I visit http://hospitalsusa.appspot.com, I get an error message that says, This website needs a different google maps api key Any suggestions on how to fix 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] Cleanest way to start a looping task?
I have a task that resubmits itself, so that it loops over and over indefinitely. Every time I start dev_appserver.py, I have to open this url to get it going: http:///localhost:8080/loop?key=0. Is there some automated way to do this so that it starts when I run dev_appserver.py, or when my app gets uploaded? While I am on the topic of tasks, is there some way to automatically execute the task queue built into dev_appserver? The documentation seems to say I must do it manually, but I hear whispers that the java guys can automate it. I found a script to do it, but it's a pain to run every time I start things up again. 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] Entity Groups - does write time increase as # of objects in entity group increase?
Hi, I've created two simple classes which I want to use in an entity group: class User { int numReports; } class Report { } the User object will always be the parent, Report instances are part of a User's entity group. There can be many Report objects per User: User |--- Report when I save a Report instance, I want to increment the 'numReports' counter in the User object, in a transaction. This arrangement works fine. But as the # of Report instances increase, does app engine have to lock all other Report instances in the same entity group before performing the transaction? I'm worried that performance will degrade as the # of Report objects per User increases. 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] Typical monthly costs for running an app
A previous thread morphed into a discussion about running costs and then then morphed back again. http://groups.google.com/group/google-appengine/browse_thread/thread/d92d127220fe4671/d12ed358b3fdaac9#d12ed358b3fdaac9 There were a lot of attempts to calculate theoretical costs, but no real-world examples. My app generally handles between 1 and 2 requests a second for most of the day. It currently attracts about 2000 unique users a day, who browse through 6 generated pages each (including multiple gets and puts, and at least one email sent). I have billing enabled, but have only ever paid a few cents a day for email - I don't get anywhere near my other free quotas. All this consumes about 0.6 cpu seconds a day, 300MB of bandwidth, and 200MB of storage. So from my perspective, the figures bandied about in the thread above above seem crazy. Anyone else with production apps like to comment? -- You 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] Typical monthly costs for running an app
Well what can i say that is just brilliant! - you should be over the moon. This is why i congratulate Google on building a superb platform and a brilliant inventors notepad for creating applications and scaling them at a cost we can afford all to realize our dreams. Where can you get such fantastic technology like this for that price. I only hope they continue their efforts in moving it forward and continue to keep it's pricing so that we can all invest our precious time without having to outlay money we don't have to make applications a reality before they start making money. As i said well done Google. I think your example is a good one. I must say i have spent 6 months solid learning GAE and i have thoroughly enjoyed it. It is a well earned rest from wasting too much time with other known technologies that make you invest too much into configuration, deployment and into the decision making of which one of their dam technologies to use next. i think we know who i mean. I hope my happy experiences continue into the long awaited future. Regards Martin Webb The information contained in this email is confidential and may contain proprietary information. It is meant solely for the intended recipient. Access to this email by anyone else is unauthorised. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted in reliance on this, is prohibited and may be unlawful. No liability or responsibility is accepted if information or data is, for whatever reason corrupted or does not reach its intended recipient. No warranty is given that this email is free of viruses. The views expressed in this email are, unless otherwise stated, those of the author From: Greg g.fawc...@gmail.com To: Google App Engine google-appengine@googlegroups.com Sent: Thu, 24 June, 2010 5:25:47 Subject: [google-appengine] Typical monthly costs for running an app A previous thread morphed into a discussion about running costs and then then morphed back again. http://groups.google.com/group/google-appengine/browse_thread/thread/d92d127220fe4671/d12ed358b3fdaac9#d12ed358b3fdaac9 There were a lot of attempts to calculate theoretical costs, but no real-world examples. My app generally handles between 1 and 2 requests a second for most of the day. It currently attracts about 2000 unique users a day, who browse through 6 generated pages each (including multiple gets and puts, and at least one email sent). I have billing enabled, but have only ever paid a few cents a day for email - I don't get anywhere near my other free quotas. All this consumes about 0.6 cpu seconds a day, 300MB of bandwidth, and 200MB of storage. So from my perspective, the figures bandied about in the thread above above seem crazy. Anyone else with production apps like to comment? -- You 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.