[google-appengine] The Link To WebApp3 NonPublic Repository
Hello there, I've recently looked into using webapp3 with a few wishes: that there is a lightweight framework for working with Google App Engine that evolved from WebApp2, and that the next generation framework supports python 3. The repository listed at this website does not appear to exist, perhaps because it is private: https://webapp2.readthedocs.io/features.html This sort of information is critical for developers looking to adopt the platform or increase our existing footprint. Furthermore, links to documentation for both WebApp2 and WebApp3 are down. Please advise on what I can do about the repository and what's going on with the documentation. Thanks, Marcus -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at https://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/d500c136-42bc-49f8-a6bc-4835d100f25d%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Re: Connecting from app engine instance to compute engine instance directly
Does anyone know if there has there been any updates on getting the ability to connect from GAE Standard to a GCE instance? -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at https://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/b1b15a92-3d07-4e1f-866e-92efc14b070c%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [google-appengine] Re: State of Java 8 on App Engine (not the flexible env)
As mentioned in GCP Podcast episode #58 by end of Jan (https://groups.google.com/forum/#!topic/google-appengine/Zn7X3D7o584), Java 8 on Standard can be expected during this spring. Den onsdag 1 mars 2017 kl. 14:52:03 UTC+1 skrev Attila-Mihaly Balazs: > > +1 on this! Google seems to have abandoned Appengine standard from this > point of view (no PHP 7, no Python 3, no Java 8) - even though some of the > currently supported languages (like Java 7 or PHP 5) are no longer > supported and are considered a security risk. > > :-( > Attila > -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at https://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/d20986ab-20b3-41cb-bc52-fe503746ae34%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Re: Batch Query App engine datastore with AND expression
I found the solution. I used the wrong syntax. Thanks for your help: Correct is: String queryBatch = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + + C1.C1_DATE_FIELD + :date Am Dienstag, 14. Juli 2015 22:27:32 UTC+2 schrieb Patrice (Cloud Platform Support): Hi Marcus, I know this won't give you anything more than what you already have, but can you try running your second query queryBatchString, but without the filter for the date field? And could you copy the string for queryBatchString? Because looking at how you build it, your keys should be after your where, but it seems to have trouble parsing AND encodedKey, which should never be in the string in the first place. Cheers! On Monday, July 13, 2015 at 4:54:30 PM UTC-4, Marcus Masekowsky wrote: Hi, thanks for your reply. to clarify, I have one query which retrieves the keys for Entity C1, This query is not my focus, because it onlys fetches the keys which I will later use to get the Entities from class C1. So I have a list with keys from Entity C1. C1 has an attribute date of type long (Calendar Timemillis). Now I want to select all Entities with their Key in my keyList AND date currDate. Am Sonntag, 12. Juli 2015 19:50:27 UTC+2 schrieb Marcus Masekowsky: Hi, I am trying to add a AND-Expression to a GAE batch query to filter Entities: Currently I am doing this, and it works perfect: 1. DBQuery.selectFromKeysOnly - Query to select Entitie by key 2. String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys; 3. Query query = pm.newQuery(queryBatchString); modelList = (ListModel)query.execute(encodedKeyList); The disadvantage with that approach is, that the query in step 2 always returns all Entities. But I only want Entites which have a date current Date. Currently I am filtering the Entities in the server code (Step 4). To avoid this, I changed the query in 2. and added an AND expression to filter the entities directly: String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + AND + C1.C1_DATE_FIELD + + currDate.getTimeInMillis(); But with this change I get an QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys org.datanucleus.store.query.QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys What is wrong or what can be done better. Are AND-Expressions not allowed in Bbatch Queries? Thanks Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/40447542-51e3-4769-a031-fb97327a7977%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Re: Batch Query App engine datastore with AND expression
now I am asking me how to pass the second parameter value to the query: select from C1 where key == :keys date :date :keys is a list of keys and :date is a single long value. I execute the query with query.execute(keyList); The method execute only takes one parameter. Am Donnerstag, 16. Juli 2015 20:45:45 UTC+2 schrieb Marcus Masekowsky: I found the solution. I used the wrong syntax. Thanks for your help: Correct is: String queryBatch = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + + C1.C1_DATE_FIELD + :date Am Dienstag, 14. Juli 2015 22:27:32 UTC+2 schrieb Patrice (Cloud Platform Support): Hi Marcus, I know this won't give you anything more than what you already have, but can you try running your second query queryBatchString, but without the filter for the date field? And could you copy the string for queryBatchString? Because looking at how you build it, your keys should be after your where, but it seems to have trouble parsing AND encodedKey, which should never be in the string in the first place. Cheers! On Monday, July 13, 2015 at 4:54:30 PM UTC-4, Marcus Masekowsky wrote: Hi, thanks for your reply. to clarify, I have one query which retrieves the keys for Entity C1, This query is not my focus, because it onlys fetches the keys which I will later use to get the Entities from class C1. So I have a list with keys from Entity C1. C1 has an attribute date of type long (Calendar Timemillis). Now I want to select all Entities with their Key in my keyList AND date currDate. Am Sonntag, 12. Juli 2015 19:50:27 UTC+2 schrieb Marcus Masekowsky: Hi, I am trying to add a AND-Expression to a GAE batch query to filter Entities: Currently I am doing this, and it works perfect: 1. DBQuery.selectFromKeysOnly - Query to select Entitie by key 2. String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys; 3. Query query = pm.newQuery(queryBatchString); modelList = (ListModel)query.execute(encodedKeyList); The disadvantage with that approach is, that the query in step 2 always returns all Entities. But I only want Entites which have a date current Date. Currently I am filtering the Entities in the server code (Step 4). To avoid this, I changed the query in 2. and added an AND expression to filter the entities directly: String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + AND + C1.C1_DATE_FIELD + + currDate.getTimeInMillis(); But with this change I get an QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys org.datanucleus.store.query.QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys What is wrong or what can be done better. Are AND-Expressions not allowed in Bbatch Queries? Thanks Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/4e0be85d-5338-4d0c-8034-92c0b8bb870f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Re: Batch Query App engine datastore with AND expression
Ok, I solved it. Solution is to hard code it in query like this: select from C1 where key == :keys date 1436905284198 Am Donnerstag, 16. Juli 2015 21:41:56 UTC+2 schrieb Marcus Masekowsky: now I am asking me how to pass the second parameter value to the query: select from C1 where key == :keys date :date :keys is a list of keys and :date is a single long value. I execute the query with query.execute(keyList); The method execute only takes one parameter. Am Donnerstag, 16. Juli 2015 20:45:45 UTC+2 schrieb Marcus Masekowsky: I found the solution. I used the wrong syntax. Thanks for your help: Correct is: String queryBatch = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + + C1.C1_DATE_FIELD + :date Am Dienstag, 14. Juli 2015 22:27:32 UTC+2 schrieb Patrice (Cloud Platform Support): Hi Marcus, I know this won't give you anything more than what you already have, but can you try running your second query queryBatchString, but without the filter for the date field? And could you copy the string for queryBatchString? Because looking at how you build it, your keys should be after your where, but it seems to have trouble parsing AND encodedKey, which should never be in the string in the first place. Cheers! On Monday, July 13, 2015 at 4:54:30 PM UTC-4, Marcus Masekowsky wrote: Hi, thanks for your reply. to clarify, I have one query which retrieves the keys for Entity C1, This query is not my focus, because it onlys fetches the keys which I will later use to get the Entities from class C1. So I have a list with keys from Entity C1. C1 has an attribute date of type long (Calendar Timemillis). Now I want to select all Entities with their Key in my keyList AND date currDate. Am Sonntag, 12. Juli 2015 19:50:27 UTC+2 schrieb Marcus Masekowsky: Hi, I am trying to add a AND-Expression to a GAE batch query to filter Entities: Currently I am doing this, and it works perfect: 1. DBQuery.selectFromKeysOnly - Query to select Entitie by key 2. String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys; 3. Query query = pm.newQuery(queryBatchString); modelList = (ListModel)query.execute(encodedKeyList); The disadvantage with that approach is, that the query in step 2 always returns all Entities. But I only want Entites which have a date current Date. Currently I am filtering the Entities in the server code (Step 4). To avoid this, I changed the query in 2. and added an AND expression to filter the entities directly: String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + AND + C1.C1_DATE_FIELD + + currDate.getTimeInMillis(); But with this change I get an QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys org.datanucleus.store.query.QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys What is wrong or what can be done better. Are AND-Expressions not allowed in Bbatch Queries? Thanks Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/272793b9-2f9c-48a2-bea7-80b65b9df1fe%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Re: Batch Query App engine datastore with AND expression
Hi, thanks for your reply. to clarify, I have one query which retrieves the keys for Entity C1, This query is not my focus, because it onlys fetches the keys which I will later use to get the Entities from class C1. So I have a list with keys from Entity C1. C1 has an attribute date of type long (Calendar Timemillis). Now I want to select all Entities with their Key in my keyList AND date currDate. Am Sonntag, 12. Juli 2015 19:50:27 UTC+2 schrieb Marcus Masekowsky: Hi, I am trying to add a AND-Expression to a GAE batch query to filter Entities: Currently I am doing this, and it works perfect: 1. DBQuery.selectFromKeysOnly - Query to select Entitie by key 2. String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys; 3. Query query = pm.newQuery(queryBatchString); modelList = (ListModel)query.execute(encodedKeyList); The disadvantage with that approach is, that the query in step 2 always returns all Entities. But I only want Entites which have a date current Date. Currently I am filtering the Entities in the server code (Step 4). To avoid this, I changed the query in 2. and added an AND expression to filter the entities directly: String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + AND + C1.C1_DATE_FIELD + + currDate.getTimeInMillis(); But with this change I get an QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys org.datanucleus.store.query.QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys What is wrong or what can be done better. Are AND-Expressions not allowed in Bbatch Queries? Thanks Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/ffb69323-370a-4cf5-9262-20aae5751f22%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Batch Query App engine datastore with AND expression
Hi, I am trying to add a AND-Expression to a GAE batch query to filter Entities: Currently I am doing this, and it works perfect: 1. DBQuery.selectFromKeysOnly - Query to select Entitie by key 2. String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys; 3. Query query = pm.newQuery(queryBatchString); modelList = (ListModel)query.execute(encodedKeyList); The disadvantage with that approach is, that the query in step 2 always returns all Entities. But I only want Entites which have a date current Date. Currently I am filtering the Entities in the server code (Step 4). To avoid this, I changed the query in 2. and added an AND expression to filter the entities directly: String queryBatchString = select from + C1.class.getName() + where + Model.KEY_FIELD + == :keys + AND + C1.C1_DATE_FIELD + + currDate.getTimeInMillis(); But with this change I get an QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys org.datanucleus.store.query.QueryCompilerSyntaxException: Portion of expression could not be parsed: AND encodedKey == :keys What is wrong or what can be done better. Are AND-Expressions not allowed in Bbatch Queries? Thanks Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/c1144a49-2217-4a84-b45f-a104cfb591ce%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[google-appengine] Re: I can't install docer images with gcloud preview app setup-managed-vms
I get these same errors despite having followed the instructions and used the older boot2docker iso. Is there anyway of getting more descriptive error messages? On Tuesday, November 11, 2014 9:01:22 PM UTC, Johan Euphrosine (Google) wrote: Hi, There is an ongoing issue w/ the SDK support for boot2docker 1.3.1, as a temporary workaround you can downgrade the boot2docker 1.3.0 as advised by the documentation. https://cloud.google.com/appengine/docs/python/managed-vms/ boot2docker download --iso-url= https://github.com/boot2docker/boot2docker/releases/download/v1.3.0/boot2docker.iso . On Thursday, November 6, 2014 7:33:22 AM UTC-8, Илья Дьячков wrote: Pulling base images for runtimes [python27] from Google Cloud Storage Pulling image: google/appengine-python27 *Error pulling image google/appengine-python27* Pulling image: google/appengine-log-processor *Error pulling image google/appengine-log-processor* Pulling image: google/appengine-log-server *Error pulling image google/appengine-log-server* Base images for runtimes [python27] are pulled -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout.
Re: [google-appengine] Re: I can't install docer images with gcloud preview app setup-managed-vms
Here's the output to `boot2docker ssh docker version`: $ boot2docker ssh docker version Client version: 1.3.0 Client API version: 1.15 Go version (client): go1.3.3 Git commit (client): c78088f OS/Arch (client): linux/amd64 Server version: 1.3.0 Server API version: 1.15 Go version (server): go1.3.3 Git commit (server): c78088f The debug verbosity adds *a lot* of noise, so it's a bit hard to see what's going on. It's currently running and I've not seen anything but what looks like things being *ok* so far. This seems to be in line with how it looks when running normally, it takes a few minutes before it errors. On Tuesday, November 18, 2014 6:20:20 PM UTC, Johan Euphrosine (Google) wrote: You can add --verbosity debug to the command line. Can you paste the log there too? Please also run: boot2docker ssh docker version to double check it's indeed running 1.3 On Tue, Nov 18, 2014 at 10:16 AM, Marcus Stade marcus...@gmail.com javascript: wrote: I get these same errors despite having followed the instructions and used the older boot2docker iso. Is there anyway of getting more descriptive error messages? On Tuesday, November 11, 2014 9:01:22 PM UTC, Johan Euphrosine (Google) wrote: Hi, There is an ongoing issue w/ the SDK support for boot2docker 1.3.1, as a temporary workaround you can downgrade the boot2docker 1.3.0 as advised by the documentation. https://cloud.google.com/appengine/docs/python/managed-vms/ boot2docker download --iso-url=https://github.com/ boot2docker/boot2docker/releases/download/v1.3.0/boot2docker.iso. On Thursday, November 6, 2014 7:33:22 AM UTC-8, Илья Дьячков wrote: Pulling base images for runtimes [python27] from Google Cloud Storage Pulling image: google/appengine-python27 *Error pulling image google/appengine-python27* Pulling image: google/appengine-log-processor *Error pulling image google/appengine-log-processor* Pulling image: google/appengine-log-server *Error pulling image google/appengine-log-server* Base images for runtimes [python27] are pulled -- You received this message because you are subscribed to a topic in the Google Groups Google App Engine group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-appengine/s-NnB5iCtMk/unsubscribe . To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com javascript:. To post to this group, send email to google-a...@googlegroups.com javascript:. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout. -- Johan Euphrosine (proppy) Developer Programs Engineer Google Developer Relations -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout.
Re: [google-appengine] Re: I can't install docer images with gcloud preview app setup-managed-vms
It's still going, but I can present you with a partial log. Do you mind giving me an email where I can send it to off the list? On Tuesday, November 18, 2014 6:34:35 PM UTC, Johan Euphrosine (Google) wrote: Hi Marcus, can you post the full log somewhere? On Tue, Nov 18, 2014 at 10:27 AM, Marcus Stade marcus...@gmail.com javascript: wrote: Here's the output to `boot2docker ssh docker version`: $ boot2docker ssh docker version Client version: 1.3.0 Client API version: 1.15 Go version (client): go1.3.3 Git commit (client): c78088f OS/Arch (client): linux/amd64 Server version: 1.3.0 Server API version: 1.15 Go version (server): go1.3.3 Git commit (server): c78088f The debug verbosity adds *a lot* of noise, so it's a bit hard to see what's going on. It's currently running and I've not seen anything but what looks like things being *ok* so far. This seems to be in line with how it looks when running normally, it takes a few minutes before it errors. On Tuesday, November 18, 2014 6:20:20 PM UTC, Johan Euphrosine (Google) wrote: You can add --verbosity debug to the command line. Can you paste the log there too? Please also run: boot2docker ssh docker version to double check it's indeed running 1.3 On Tue, Nov 18, 2014 at 10:16 AM, Marcus Stade marcus...@gmail.com wrote: I get these same errors despite having followed the instructions and used the older boot2docker iso. Is there anyway of getting more descriptive error messages? On Tuesday, November 11, 2014 9:01:22 PM UTC, Johan Euphrosine (Google) wrote: Hi, There is an ongoing issue w/ the SDK support for boot2docker 1.3.1, as a temporary workaround you can downgrade the boot2docker 1.3.0 as advised by the documentation. https://cloud.google.com/appengine/docs/python/managed-vms/ boot2docker download --iso-url=https://github.com/b oot2docker/boot2docker/releases/download/v1.3.0/boot2docker.iso. On Thursday, November 6, 2014 7:33:22 AM UTC-8, Илья Дьячков wrote: Pulling base images for runtimes [python27] from Google Cloud Storage Pulling image: google/appengine-python27 *Error pulling image google/appengine-python27* Pulling image: google/appengine-log-processor *Error pulling image google/appengine-log-processor* Pulling image: google/appengine-log-server *Error pulling image google/appengine-log-server* Base images for runtimes [python27] are pulled -- You received this message because you are subscribed to a topic in the Google Groups Google App Engine group. To unsubscribe from this topic, visit https://groups.google.com/d/ topic/google-appengine/s-NnB5iCtMk/unsubscribe. To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com. To post to this group, send email to google-a...@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout. -- Johan Euphrosine (proppy) Developer Programs Engineer Google Developer Relations -- You received this message because you are subscribed to a topic in the Google Groups Google App Engine group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-appengine/s-NnB5iCtMk/unsubscribe . To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com javascript:. To post to this group, send email to google-a...@googlegroups.com javascript:. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout. -- Johan Euphrosine (proppy) Developer Programs Engineer Google Developer Relations -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout.
Re: [google-appengine] Re: I can't install docer images with gcloud preview app setup-managed-vms
I sent you the full log, hopefully it makes more sense to you than it does to me. Many thanks for the help! On Tuesday, November 18, 2014 6:55:45 PM UTC, Johan Euphrosine (Google) wrote: Oh sure, just send it to pro...@google.com javascript: On Tue, Nov 18, 2014 at 10:53 AM, Marcus Stade marcus...@gmail.com javascript: wrote: It's still going, but I can present you with a partial log. Do you mind giving me an email where I can send it to off the list? On Tuesday, November 18, 2014 6:34:35 PM UTC, Johan Euphrosine (Google) wrote: Hi Marcus, can you post the full log somewhere? On Tue, Nov 18, 2014 at 10:27 AM, Marcus Stade marcus...@gmail.com wrote: Here's the output to `boot2docker ssh docker version`: $ boot2docker ssh docker version Client version: 1.3.0 Client API version: 1.15 Go version (client): go1.3.3 Git commit (client): c78088f OS/Arch (client): linux/amd64 Server version: 1.3.0 Server API version: 1.15 Go version (server): go1.3.3 Git commit (server): c78088f The debug verbosity adds *a lot* of noise, so it's a bit hard to see what's going on. It's currently running and I've not seen anything but what looks like things being *ok* so far. This seems to be in line with how it looks when running normally, it takes a few minutes before it errors. On Tuesday, November 18, 2014 6:20:20 PM UTC, Johan Euphrosine (Google) wrote: You can add --verbosity debug to the command line. Can you paste the log there too? Please also run: boot2docker ssh docker version to double check it's indeed running 1.3 On Tue, Nov 18, 2014 at 10:16 AM, Marcus Stade marcus...@gmail.com wrote: I get these same errors despite having followed the instructions and used the older boot2docker iso. Is there anyway of getting more descriptive error messages? On Tuesday, November 11, 2014 9:01:22 PM UTC, Johan Euphrosine (Google) wrote: Hi, There is an ongoing issue w/ the SDK support for boot2docker 1.3.1, as a temporary workaround you can downgrade the boot2docker 1.3.0 as advised by the documentation. https://cloud.google.com/appengine/docs/python/managed-vms/ boot2docker download --iso-url=https://github.com/b oot2docker/boot2docker/releases/download/v1.3.0/boot2docker.iso. On Thursday, November 6, 2014 7:33:22 AM UTC-8, Илья Дьячков wrote: Pulling base images for runtimes [python27] from Google Cloud Storage Pulling image: google/appengine-python27 *Error pulling image google/appengine-python27* Pulling image: google/appengine-log-processor *Error pulling image google/appengine-log-processor* Pulling image: google/appengine-log-server *Error pulling image google/appengine-log-server* Base images for runtimes [python27] are pulled -- You received this message because you are subscribed to a topic in the Google Groups Google App Engine group. To unsubscribe from this topic, visit https://groups.google.com/d/to pic/google-appengine/s-NnB5iCtMk/unsubscribe. To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com. To post to this group, send email to google-a...@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout. -- Johan Euphrosine (proppy) Developer Programs Engineer Google Developer Relations -- You received this message because you are subscribed to a topic in the Google Groups Google App Engine group. To unsubscribe from this topic, visit https://groups.google.com/d/ topic/google-appengine/s-NnB5iCtMk/unsubscribe. To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com. To post to this group, send email to google-a...@googlegroups.com. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout. -- Johan Euphrosine (proppy) Developer Programs Engineer Google Developer Relations -- You received this message because you are subscribed to a topic in the Google Groups Google App Engine group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-appengine/s-NnB5iCtMk/unsubscribe . To unsubscribe from this group and all its topics, send an email to google-appengi...@googlegroups.com javascript:. To post to this group, send email to google-a...@googlegroups.com javascript:. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/d/optout. -- Johan Euphrosine (proppy) Developer Programs Engineer Google Developer Relations -- You received this message because you are subscribed to the Google Groups Google App Engine group. To unsubscribe from this group and stop receiving emails from it, send an email to google-appengine+unsubscr...@googlegroups.com. To post to this group, send email to google-appengine
[google-appengine] Re: GAE With Python From Scratch
Yes, go over to www.udacity.com and take cs253. -- You received this message because you are subscribed to the Google Groups Google App Engine group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/nHz7aYscSg4J. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: cannot log into dashboard
Hi, I have the same problem. When logging in to: https://appengine.google.com/ I only get the introduction (https://appengine.google.com/start), I have 2-3 apps running, and can't adminster them at the moment. Ideas ? Thanks Marcus On Oct 5, 10:56 pm, Ron ronsterc...@gmail.com wrote: Hello Having problems signing into a new account I opened today. When I try to log into an app i get kicked into the start page each time, the one that asks you to create an application. I mange two other accounts and they are working fine. I don't know if it is something to do with it being the same email I use to manage the google apps domain. It worked for a while earlier on. I was able to create the app and install the application, even linked it to the domain. It now works onwww.audiogo.co.uk. But I now can no longer go into the console or the dashboard. Any ideas? Thanks Ron -- You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appeng...@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
[google-appengine] Re: cannot log into dashboard
Sorry, my bad. Solved by using: appengine.google.com/a/yourdomain.xyz. thanks Marcus On Oct 6, 1:53 pm, Marcus mar...@alexit.se wrote: Hi, I have the same problem. When logging in to: https://appengine.google.com/ I only get the introduction (https://appengine.google.com/start), I have 2-3 apps running, and can't adminster them at the moment. Ideas ? Thanks Marcus On Oct 5, 10:56 pm, Ron ronsterc...@gmail.com wrote: Hello Having problems signing into a new account I opened today. When I try to log into an app i get kicked into the start page each time, the one that asks you to create an application. I mange two other accounts and they are working fine. I don't know if it is something to do with it being the same email I use to manage the google apps domain. It worked for a while earlier on. I was able to create the app and install the application, even linked it to the domain. It now works onwww.audiogo.co.uk. But I now can no longer go into the console or the dashboard. Any ideas? Thanks Ron -- 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.
[appengine-java] Re: Date, Calendar question (multiple instances of web application behaviour) clarification
Hello, I am sorry for my late answer. I am trying to implement kind of authorization system to access certain service. This service is only available for example X times per Y seconds (x = 5, y = 60 * 15) each request to this service is identified by uniqueID so I know who is asking the service I use memcache to find out how many requests there were in last Y secs. If number of requests is lower or equal to X I try to put another different entry to cache which contains current date (current app instance date). Subsequential requests retrieve this date from memcache and use it to compute remaining time to next RESET. RESET is meant to be time when first cache entry expires and thus reset number of attemps to request my service. (more simple) I put some date to memcache for example (currentDate + 15 mins), next time I retriev this date, but it can be different app instance than which made the entry. If I do some computation like (dateFromMemcache.toMilisecs - currentAppInstanceDate.toMilisecs) this may vary for app instance. If different for different instace is only few milisecs or secs, it's ok. But if it is more than 1 min or even more that would be problem. Any simple idea how to cope with this ? On Jul 22, 3:04 am, Ikai L (Google) ika...@google.com wrote: It should just be whatever the date is on the current instance. In general, do not ever rely on dates to be synchronized. Clock skew is a reality of distributed computing, and you'll have to work around it. What exactly is the problem you're trying to solve? On Sun, Jul 18, 2010 at 11:23 PM, Marcus Brody mhrab...@gmail.com wrote: Good day, I would like to ask about following. How is java.util.Date synchronized in case there is more than 1 instance of my web application. Example: WebAppInstance01 : I create somewhere new Date() at the same time WebAppInstance02: I create somewhere new Date() Is there some time shift ? Or those both app request some central authority ? Thank you, -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-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: Active transactions
Hello again, I cannot give you straightforward answer, try to do as little as possible. Create simple entity, try to create new, delete some by key, createIfNotExists and similar DAO methods. Do not put any nontrivial logic to this DAO. Also make sure you entities have right key type and such, your crearPartido method has somehow too many arguments try to make it more simple. step by step. On Jul 22, 12:37 am, lisandrodc lisandr...@gmail.com wrote: Hi!Marcus, now I use your pattern for transactions: The code of the method: public void crearPartido(Long idEqLocal, Long idEqVisitante, Date fecha, Fecha fechaAgreg, String resultado, String hora,Long idTorneo){ PersistenceManager pm = JDOHelper.getPersistenceManager(fechaAgreg); Transaction tx = pm.currentTransaction(); try { tx.begin(); Partido par1 = null; ControladorTorneo cT= new ControladorTorneo(); par1 = new Partido(null, new Resultado(), cT.devolverEquipo( idTorneo,idEqLocal), cT.devolverEquipo(idTorneo,idEqVisitante), fecha, hora); /*In mode debug, is here below where accedes for the block finally(with error) */ fechaAgreg.agregarPartido(par1); pm.makePersistent(fechaAgreg); tx.commit(); } finally { if (tx != null tx.isActive()) tx.rollback(); pm.close(); } } But now, the error is: Object with id com.google.appengine.api.datastore.Key:Torneo(1)/ Equipo(3) is managed by a different Object Manager. I try also changed in the code: PersistenceManager pm = getPersistenceManager(); For: PersistenceManager pm = JDOHelper.getPersistenceManager(fechaAgreg);(But mistake is the one that already I enunciated). The link:http://stackoverflow.com/questions/1403515/appengine-datastore-object... Regards Lisandro On 19 jul, 05:15, Marcus Brody mhrab...@gmail.com wrote: try follow this pattern for transactions public void doSomthingWithEntity(T entity) { PersistenceManager pm = getPersistenceManager(); Transaction transaction = pm.currentTransaction(); try { transaction.begin(); // do something with entity, get, persist, delete // pm.makePersistent(entity); transaction.commit(); } finally { if (transaction != null transaction.isActive()) transaction.rollback(); pm.close(); } } On Jul 18, 11:01 pm, lisandrodc lisandr...@gmail.com wrote: Hi! I have a problem with active transaction.When I try to guard in the datastore, says: La transaccion esta activo todavia. Debe cerrar las transacciones usando los metodos commit() o rollback(). As closure all the transactions? The method is: PersistenceManager pm2 = JDOHelper.getPersistenceManager(fechaAgreg); Transaction tx = pm2.currentTransaction(); try { tx.begin(); Partido par1 = null; ControladorTorneo cT= new ControladorTorneo(); par1 = new Partido(null, new Resultado(), cT.devolverEquipo( idTorneo,idEqLocal), cT.devolverEquipo(idTorneo,idEqVisitante), fecha, hora); fechaAgreg.agregarPartido(par1); pm2.makePersistent(fechaAgreg); tx.commit(); } finally { pm2.close(); if (tx.isActive()) { tx.rollback(); } } } Regards -- 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] Date, Calendar question (multiple instances of web application behaviour) clarification
Good day, I would like to ask about following. How is java.util.Date synchronized in case there is more than 1 instance of my web application. Example: WebAppInstance01 : I create somewhere new Date() at the same time WebAppInstance02: I create somewhere new Date() Is there some time shift ? Or those both app request some central authority ? Thank you, -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] is there any solution/idea how blacklist IP in realtime ?
Hello, I was looking for some solution which would allow me realtime blacklist IPs. I didnt find any. Realtime I mean without manually getting IP and change dos.xml and upload it. A man can upload dos.xml to bann certain IPs. Can this be done somehow (anyhow) programmatically, even using home computer ? I image it would be possible to let my computer run request every 5 mins to get webapplication abusive IPs and then upload new dos.xml ? Is this only possible solution or I am heavily missing something ? :) Other way I came with is to update dos.xml on gae webapp and somehow trigger it has changed so gae will notice, problem is I dont know how or if its even possible :) Thank you for you time, -- 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: Active transactions
Hi lisandrodc, please carefully read all documents http://code.google.com/appengine/docs/java/datastore/ and http://www.datanucleus.org/products/accessplatform_1_1/guides/jdo/daolayer_design.html Also many people cannot read spanish, if you would write in english you may get more answers. I think you problem is that you datastore operation failed in catch block and since you are closing persistence manager first and then rollbacking it fails. Solution: 1) read everything as carefully as possible, look at example and try experiment. 2) in finally block rollback first and then close persistence manager On Jul 18, 11:01 pm, lisandrodc lisandr...@gmail.com wrote: Hi! I have a problem with active transaction.When I try to guard in the datastore, says: La transaccion esta activo todavia. Debe cerrar las transacciones usando los metodos commit() o rollback(). As closure all the transactions? The method is: PersistenceManager pm2 = JDOHelper.getPersistenceManager(fechaAgreg); Transaction tx = pm2.currentTransaction(); try { tx.begin(); Partido par1 = null; ControladorTorneo cT= new ControladorTorneo(); par1 = new Partido(null, new Resultado(), cT.devolverEquipo( idTorneo,idEqLocal), cT.devolverEquipo(idTorneo,idEqVisitante), fecha, hora); fechaAgreg.agregarPartido(par1); pm2.makePersistent(fechaAgreg); tx.commit(); } finally { pm2.close(); if (tx.isActive()) { tx.rollback(); } } } Regards -- 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: Active transactions
try follow this pattern for transactions public void doSomthingWithEntity(T entity) { PersistenceManager pm = getPersistenceManager(); Transaction transaction = pm.currentTransaction(); try { transaction.begin(); // do something with entity, get, persist, delete // pm.makePersistent(entity); transaction.commit(); } finally { if (transaction != null transaction.isActive()) transaction.rollback(); pm.close(); } } On Jul 18, 11:01 pm, lisandrodc lisandr...@gmail.com wrote: Hi! I have a problem with active transaction.When I try to guard in the datastore, says: La transaccion esta activo todavia. Debe cerrar las transacciones usando los metodos commit() o rollback(). As closure all the transactions? The method is: PersistenceManager pm2 = JDOHelper.getPersistenceManager(fechaAgreg); Transaction tx = pm2.currentTransaction(); try { tx.begin(); Partido par1 = null; ControladorTorneo cT= new ControladorTorneo(); par1 = new Partido(null, new Resultado(), cT.devolverEquipo( idTorneo,idEqLocal), cT.devolverEquipo(idTorneo,idEqVisitante), fecha, hora); fechaAgreg.agregarPartido(par1); pm2.makePersistent(fechaAgreg); tx.commit(); } finally { pm2.close(); if (tx.isActive()) { tx.rollback(); } } } Regards -- 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: rename a app-id
create new app with your desired ID and forward all request :P On Jul 18, 3:34 pm, aswath satrasala aswath.satras...@gmail.com wrote: I do not want to delete the app. I have user data. -Aswath On Sun, Jul 18, 2010 at 6:57 PM, jacek.ambroziak jacek.ambroz...@gmail.comwrote: Not really, but you can delete the app and after it is gone create a new one with the (available) name you want On Jul 18, 12:02 am, aswath satrasala aswath.satras...@gmail.com wrote: Hello, Is there any way I can rename my app-id. -Aswath -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- 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: is there any solution/idea how blacklist IP in realtime ?
Yes, I already have such solution, but It still does eat some resources (minimal if written correctly) But thank for answer John, only think I am afraid I wake up and my dayly budged will be eaten by some kind of dos attack done while I was sleeping, I still think since you can upload dos.xml very quickly there has to be some mechanism how to automate it. Anyone has some pros/cons of my ideas ? On Jul 19, 3:56 pm, John Patterson jdpatter...@gmail.com wrote: I believe some people maintain their own request count by ip address using memcache and restrict access using a filter. On 19 Jul 2010, at 20:09, Marcus Brody wrote: I am missing something ? So you guys are sitting in web console and watch how many requests came from given IP address ? This has to be done automatically ... somehow. -- 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.
[appengine-java] Re: Sending mail in transaction
I was thinking about storing some unique string which is derived from email content and recipient (i have some unique stuff sending in each mail) and store in memcache/db, I know its not bullet proof but at least in case some possible 2x sending mail would be filtered. Concept : Check flag if set we know we did send Send mail, if successful, set some flag in memcache/db I am aware ITS NOT BULLET PROOF, but maybe can filter some cases, when same task is triggered after that interval neccessary to change/store flag. What you think ? On Jul 13, 5:15 pm, dflorey daniel.flo...@gmail.com wrote: The request headers will not help. You'll run into problems whenever you are doing an api call that return with an unknown state and the method you are calling is not idempotent (like sending mail, creating a contact etc.) So in case of email you can add your app as bcc and use a mail-in handler to check whether the mail has been sent successfully or not. This is an ugly workaround but there is nothing else that comes to my mind. On 12 Jul., 22:54, Marcus Brody mhrab...@gmail.com wrote: dflorey and Pieter, thank you for the links, I will look into it asap. On Jul 12, 10:35 pm, Pieter Coucke pieter.cou...@onthoo.com wrote: You can check request headers to see if this is a first invocation of a task (http://code.google.com/appengine/docs/java/taskqueue/overview.html#Ta...), so you can detect a second invocation of a task. Maybe if you combine this with specific catch blocks for mail exceptions? On Mon, Jul 12, 2010 at 10:07 PM, Marcus Brody mhrab...@gmail.com wrote: Pieter, although this looks easy its not that easy, I am aware that I can queue a mail sending task, problem is that task has to be idempotent to achiev desired behaviour, a queue task can be executed for example twice, since those are specifications and this would result in sending mail twice, a naive aproach would be to update some db lock to prevent sending mail more than 1 time, but it is not easy, this is much more complicated, in other words operation is either atomic or it isnt, and without very precise mechanism you cannot prove that task will be runned only one. My own tests proved that due to email quota being reached (task fail and has be resheduled) some of the mails has been send twice. If Mail API would allowed to send mail only in case of some db transaction success it would be very easy to garant that mail will be send exactly 1 time. (although if it fails for some other reasons like recipient not found or so thats whole another story :) Basically this can be solved by 1) adding new API for sending mail (dont know if it so easy or whole problem isnt much much bigger than i think - distributed transactions ?) 2) implementing locking mechanism On Jul 12, 9:13 pm, Pieter Coucke pieter.cou...@onthoo.com wrote: Create a task for sending e-mail instead of calling the mailservice directly. use this in your task (a task can be part of a transaction) try{ ... } catch (Throwable thr) { log.error(...); } and all exceptions will be catched. I think a task will be re-executed only if it fails (throws an exception). On Sat, Jul 10, 2010 at 6:43 PM, Marcus Brody mhrab...@gmail.com wrote: Hello, I would like to ask, if there is some way how to send mail only in case that some db transaction will be successful. I am not very experienced with gae, but I did study it now for about 2 weeks. Desired output: 1) prepare email 2) db transaction.begin() 3) do some db operation 4) bind sending mail with current transaction (similar to how can you can attach Task to queue) 5) db transaction.commit() I am aware that I can queue mail sending task to task queue, but i cannot find the way how to do that mail sending task Idempotent without (i think) complicated locking mechanism . Most simple solution would be to put mail sending task to task queue, but this means mail could be send twice in some rare situation. (this is maybe not that bad but if there is some way how to avoid it, I would like to know) Thank you, Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2B unsubscr...@googlegroups.com google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java %252bunsubscr...@googlegroups.com . For more
[appengine-java] Re: Sending mail in transaction
Pieter, although this looks easy its not that easy, I am aware that I can queue a mail sending task, problem is that task has to be idempotent to achiev desired behaviour, a queue task can be executed for example twice, since those are specifications and this would result in sending mail twice, a naive aproach would be to update some db lock to prevent sending mail more than 1 time, but it is not easy, this is much more complicated, in other words operation is either atomic or it isnt, and without very precise mechanism you cannot prove that task will be runned only one. My own tests proved that due to email quota being reached (task fail and has be resheduled) some of the mails has been send twice. If Mail API would allowed to send mail only in case of some db transaction success it would be very easy to garant that mail will be send exactly 1 time. (although if it fails for some other reasons like recipient not found or so thats whole another story :) Basically this can be solved by 1) adding new API for sending mail (dont know if it so easy or whole problem isnt much much bigger than i think - distributed transactions ?) 2) implementing locking mechanism On Jul 12, 9:13 pm, Pieter Coucke pieter.cou...@onthoo.com wrote: Create a task for sending e-mail instead of calling the mailservice directly. use this in your task (a task can be part of a transaction) try{ ... } catch (Throwable thr) { log.error(...); } and all exceptions will be catched. I think a task will be re-executed only if it fails (throws an exception). On Sat, Jul 10, 2010 at 6:43 PM, Marcus Brody mhrab...@gmail.com wrote: Hello, I would like to ask, if there is some way how to send mail only in case that some db transaction will be successful. I am not very experienced with gae, but I did study it now for about 2 weeks. Desired output: 1) prepare email 2) db transaction.begin() 3) do some db operation 4) bind sending mail with current transaction (similar to how can you can attach Task to queue) 5) db transaction.commit() I am aware that I can queue mail sending task to task queue, but i cannot find the way how to do that mail sending task Idempotent without (i think) complicated locking mechanism . Most simple solution would be to put mail sending task to task queue, but this means mail could be send twice in some rare situation. (this is maybe not that bad but if there is some way how to avoid it, I would like to know) Thank you, Marcus -- 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 BVBAhttp://www.onthoo.comhttp://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: Sending mail in transaction
dflorey and Pieter, thank you for the links, I will look into it asap. On Jul 12, 10:35 pm, Pieter Coucke pieter.cou...@onthoo.com wrote: You can check request headers to see if this is a first invocation of a task (http://code.google.com/appengine/docs/java/taskqueue/overview.html#Ta...), so you can detect a second invocation of a task. Maybe if you combine this with specific catch blocks for mail exceptions? On Mon, Jul 12, 2010 at 10:07 PM, Marcus Brody mhrab...@gmail.com wrote: Pieter, although this looks easy its not that easy, I am aware that I can queue a mail sending task, problem is that task has to be idempotent to achiev desired behaviour, a queue task can be executed for example twice, since those are specifications and this would result in sending mail twice, a naive aproach would be to update some db lock to prevent sending mail more than 1 time, but it is not easy, this is much more complicated, in other words operation is either atomic or it isnt, and without very precise mechanism you cannot prove that task will be runned only one. My own tests proved that due to email quota being reached (task fail and has be resheduled) some of the mails has been send twice. If Mail API would allowed to send mail only in case of some db transaction success it would be very easy to garant that mail will be send exactly 1 time. (although if it fails for some other reasons like recipient not found or so thats whole another story :) Basically this can be solved by 1) adding new API for sending mail (dont know if it so easy or whole problem isnt much much bigger than i think - distributed transactions ?) 2) implementing locking mechanism On Jul 12, 9:13 pm, Pieter Coucke pieter.cou...@onthoo.com wrote: Create a task for sending e-mail instead of calling the mailservice directly. use this in your task (a task can be part of a transaction) try{ ... } catch (Throwable thr) { log.error(...); } and all exceptions will be catched. I think a task will be re-executed only if it fails (throws an exception). On Sat, Jul 10, 2010 at 6:43 PM, Marcus Brody mhrab...@gmail.com wrote: Hello, I would like to ask, if there is some way how to send mail only in case that some db transaction will be successful. I am not very experienced with gae, but I did study it now for about 2 weeks. Desired output: 1) prepare email 2) db transaction.begin() 3) do some db operation 4) bind sending mail with current transaction (similar to how can you can attach Task to queue) 5) db transaction.commit() I am aware that I can queue mail sending task to task queue, but i cannot find the way how to do that mail sending task Idempotent without (i think) complicated locking mechanism . Most simple solution would be to put mail sending task to task queue, but this means mail could be send twice in some rare situation. (this is maybe not that bad but if there is some way how to avoid it, I would like to know) Thank you, Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%252bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en. -- Pieter Coucke Onthoo BVBAhttp://www.onthoo.comhttp://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.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 BVBAhttp://www.onthoo.comhttp://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] send mail to person + BCC to all admins (strange behaviour)
Hello everyone, I was trying to send mail to per...@domain.com and in the same mail BCC to admins (app has 2x admin) result is that per...@domain.com never receive mail but admins do. I would like to ask if this is intended behaviour. My code is following: InternetAddress [] replyTo = new InternetAddress[1]; replyTo[0] = new InternetAddress(reply_will_be_set_h...@domain.com); Message msg = new MimeMessage(session); msg.setFrom(new InternetAddress(admin_registered_with_this_app_email_address); msg.setReplyTo(replyTo); msg.addRecipient(Message.RecipientType.TO, new InternetAddress( email_address_of_customer, Dear Customer,)); msg.addRecipient(Message.RecipientType.BCC, new InternetAddress(admins)); msg.setSubject(messageSubject); msg.setText(messageBody); Transport.send(msg); i case i remove BCC for admins, recipient.TO will get mail, It looks like sending BCC to admins somehows removes Message.RecipientType.TO, or is it problem in my code ? Thank you, Marcus -- 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: Breaking change in data store?
Hello Marc, this maybe be blind shot, but I think i faced similar problem, problem is I think following (although my primary key was encoded string I believe its the same issue) Description of problem: You have persisted some of you entities WITHOUT setting your primary key (you just let it NULL), so system generated Long. Later you do query or something and access Key property getName() but since given key has id=Long it fails So basically the exception description: The primary key for mymodel.JarData is an unencoded string but the key of the corresponding entity in the datastore does not have a name is correct Solution: Make sure that that you always set primary key prior to saving, or if you want to have more flexibility, and be able to have 1)system generated ID and 2)your app generated ID make sure you check if its Long of Unencoded String by converting primary key to Key object and then make checks before accessing getName() or getID() (only 1 can be set) If I am right this has nothing to do with downtime issue. Hope this helps you, Marcus On Jul 8, 11:39 am, Marc Guillemot mguille...@yahoo.fr wrote: Hi, yesterday my application worked just fine. Today data isn't reachable with a simple query anymore (data is here, I can find it through the Data Viewer). Here is the exception thrown: Uncaught exception from servlet The primary key for mymodel.JarData is an unencoded string but the key of the corresponding entity in the datastore does not have a name. You may want to either change the primary key to be an encoded string (add the gae.encoded-pk extension), change the primary key to be of type com.google.appengine.api.datastore.Key, or, if you're certain that this class will never have a parent, change the primary key to be of type Long. org.datanucleus.store.appengine.FatalNucleusUserException: The primary key for mymodel.JarData is an unencoded string but the key of the corresponding entity in the datastore does not have a name. You may want to either change the primary key to be an encoded string (add the gae.encoded-pk extension), change the primary key to be of type com.google.appengine.api.datastore.Key, or, if you're certain that this class will never have a parent, change the primary key to be of type Long. at org.datanucleus.store.appengine.DatastoreFieldManager.fetchStringPKField(DatastoreFieldManager.java:246) at org.datanucleus.store.appengine.DatastoreFieldManager.fetchStringField(DatastoreFieldManager.java:192) at org.datanucleus.state.AbstractStateManager.replacingStringField(AbstractStateManager.java:1180) My question: how can it happen, that changes in DataStore have such breaking consequences? And how often will it happen? Cheers, Marc. -- Blog:http://mguillem.wordpress.com -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[appengine-java] Re: Sending mail in transaction
I know :( I just thought there maybe be some trick with special case : Sending Mail. Good is it forces to think :) On Jul 11, 11:57 pm, dflorey daniel.flo...@gmail.com wrote: AFAIK there is no (simple) way to turn requests with undefined result into idempotent tasks. I've been struggling to execute gdata insert requests in a transaction as they may return with a timeout. It would be very nice if google would provide the standard services in an idempotent manner. On 10 Jul., 18:43, Marcus Brody mhrab...@gmail.com wrote: Hello, I would like to ask, if there is some way how to send mail only in case that some db transaction will be successful. I am not very experienced with gae, but I did study it now for about 2 weeks. Desired output: 1) prepare email 2) db transaction.begin() 3) do some db operation 4) bind sending mail with current transaction (similar to how can you can attach Task to queue) 5) db transaction.commit() I am aware that I can queue mail sending task to task queue, but i cannot find the way how to do that mail sending task Idempotent without (i think) complicated locking mechanism . Most simple solution would be to put mail sending task to task queue, but this means mail could be send twice in some rare situation. (this is maybe not that bad but if there is some way how to avoid it, I would like to know) Thank you, Marcus -- You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
[google-appengine] JPA @Lob
Hi all, I have a question relating to @Lob annotation in JPA (when using google app engine datastore): When not annotating a string field, yet placing a string greater than 500 characters in it, I get an exception, asking me to use: com.google.appengine.api.datastore.Text instead. This is fine, I agree that I should not save a string greater than 500 characters in a varchar column. However, when using the @Lob annotation, and persisting the entity, I get the below StackTrace. Any ideas how to avoid this ? Kind Regards Marcus java.lang.NullPointerException at com.google.appengine.api.datastore.Text.toString(Text.java: 85) at java.lang.String.valueOf(String.java:2826) at java.lang.StringBuilder.append(StringBuilder.java:115) at org.datanucleus.store.appengine.DatastorePersistenceHandler.put(DatastorePersistenceHandler.java: 150) at org.datanucleus.store.appengine.DatastorePersistenceHandler.put(DatastorePersistenceHandler.java: 127) at org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObjects(DatastorePersistenceHandler.java: 254) at org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObject(DatastorePersistenceHandler.java: 240) at org.datanucleus.state.JDOStateManagerImpl.internalMakePersistent(JDOStateManagerImpl.java: 3185) -- 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] Pondering move to GAE
Hi all, As I have recently been given a whole new project to work on, with free hands to use whatever tech i like, I'm pondering to move all the code to GAE. I do have a couple of questions, hoping that somebody can clear them up for me. (Note: I know that I'm still thinking traditional RDBMS below, but I need to think in those terms for now) 1. Let's say I have an entity, Account, that I have been using for some time, and there is a lot of data in datastore that is mapped to Account, then one day the I want to add a new attribute to account, let's say age. Usually, I would add the attribute to my class, and then add the column in my RDBMS, redeploy, and all is well. How would this be solved using datastore ? 2. Is it possible to tell GAE never to restrict access to my application (that is, I don't want any limits att all on number of request, no matter the cost). 3. Yesterday when trying to access the admin panel for appspot.com it asked me for SMS verification again, how often does this happen ? I'm sure I have a million more questions, but let's start with these. Thanks in advance for your answers. Kind Regards Marcus -- 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: Problem with timeouts on get_by_key_name
Thanks! I will try and add retry functionality. On Apr 6, 11:50 pm, Jeff S j...@google.com wrote: Hi Marcus, The error rate makes me think these are transient errors, so it should be safe to retry. Be sure to catch the specific exception, since there are other reasons that a datastore get might fail more consistently. (like an invalidkeyname ;-) Timeouts can also indicate datastore contention since repeated writes to the same entity (or entity group) can queue up and take too long to complete, but this would not be the case for gets. Happy coding, Jeff On Apr 6, 12:17 am, Marcus sucram.mar...@gmail.com wrote: Hello Jeff! Thanks for your reply. I would estimate that it is around 0.04% of the calls that fails. Would it help to catch thetimeoutexception and do a retry directly again or would that also fail? I am mostly worried that the data from the users will go lost. /Marcus On Apr 4, 3:02 am, Jeff S j...@google.com wrote: Hi Marcus, You are correct that get_by_key_name does tend to be a very efficient query, but it is possible to see atimeoutthough this is usually quite rare as a percentage of overall requests. Do you have a feel for what percentage of these get operations are timing out? Thank you, Jeff On Apr 2, 1:06 am, Marcus sucram.mar...@gmail.com wrote: Hello! I am getting some timeouts in my app. My app uses get_by_key_name along with alot of other database accessing. I get around 5-10 timouts each day and it is always get_by_key_name that times out, never any other database acceses. Why could this be? Is there a way to protect the app from these timeouts. I thought get_by_key_name was a fast access to the database. The app have akeythat is around 20 characters long and the app have quite a lot of users (I guess around 200 000). File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 849, in get_by_key_name return get(*keys) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1044, in get entities = datastore.Get(keys) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 221, in Get raise _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1965, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Re: Problem with timeouts on get_by_key_name
Thanks! I will try and add retry functionality. On Apr 6, 11:50 pm, Jeff S j...@google.com wrote: Hi Marcus, The error rate makes me think these are transient errors, so it should be safe to retry. Be sure to catch the specific exception, since there are other reasons that a datastore get might fail more consistently. (like an invalidkeyname ;-) Timeouts can also indicate datastore contention since repeated writes to the same entity (or entity group) can queue up and take too long to complete, but this would not be the case for gets. Happy coding, Jeff On Apr 6, 12:17 am, Marcus sucram.mar...@gmail.com wrote: Hello Jeff! Thanks for your reply. I would estimate that it is around 0.04% of the calls that fails. Would it help to catch thetimeoutexception and do a retry directly again or would that also fail? I am mostly worried that the data from the users will go lost. /Marcus On Apr 4, 3:02 am, Jeff S j...@google.com wrote: Hi Marcus, You are correct that get_by_key_name does tend to be a very efficient query, but it is possible to see atimeoutthough this is usually quite rare as a percentage of overall requests. Do you have a feel for what percentage of these get operations are timing out? Thank you, Jeff On Apr 2, 1:06 am, Marcus sucram.mar...@gmail.com wrote: Hello! I am getting some timeouts in my app. My app uses get_by_key_name along with alot of other database accessing. I get around 5-10 timouts each day and it is always get_by_key_name that times out, never any other database acceses. Why could this be? Is there a way to protect the app from these timeouts. I thought get_by_key_name was a fast access to the database. The app have akeythat is around 20 characters long and the app have quite a lot of users (I guess around 200 000). File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 849, in get_by_key_name return get(*keys) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1044, in get entities = datastore.Get(keys) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 221, in Get raise _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1965, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---
[google-appengine] Problem with timeouts on get_by_key_name
Hello! I am getting some timeouts in my app. My app uses get_by_key_name along with alot of other database accessing. I get around 5-10 timouts each day and it is always get_by_key_name that times out, never any other database acceses. Why could this be? Is there a way to protect the app from these timeouts. I thought get_by_key_name was a fast access to the database. The app have a key that is around 20 characters long and the app have quite a lot of users (I guess around 200 000). File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 849, in get_by_key_name return get(*keys) File /base/python_lib/versions/1/google/appengine/ext/db/ __init__.py, line 1044, in get entities = datastore.Get(keys) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 221, in Get raise _ToDatastoreError(err) File /base/python_lib/versions/1/google/appengine/api/ datastore.py, line 1965, in _ToDatastoreError raise errors[err.application_error](err.error_detail) Timeout --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine group. To post to this group, send email to google-appengine@googlegroups.com To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~--~~~~--~~--~--~---