[appengine-java] Deployment failing 500 Internal Server Error

2011-02-01 Thread Sumi
Unable to update:
java.io.IOException: Error posting to URL:
https://appengine.google.com/api/appversion/clonefiles?
500 Internal Server Error

htmlhead
meta http-equiv=content-type content=text/html;charset=utf-8
title500 Server Error/title
/head
body text=#00 bgcolor=#ff
h1Error: Server Error/h1
h2The server encountered an error and could not complete your
request.pIf the problem persists, please A HREF=
http://code.google.com/appengine/community.html;report/A your problem and
mention this error message and the query that caused it./h2
h2/h2
/body/html

at
com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java:149)
 at
com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java:82)
at
com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java:582)
 at
com.google.appengine.tools.admin.AppVersionUpload.cloneFiles(AppVersionUpload.java:452)
at
com.google.appengine.tools.admin.AppVersionUpload.beginTransaction(AppVersionUpload.java:415)
 at
com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:112)
at
com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:56)
 at
com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java:271)
at
com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java:146)
 at
org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

-- 
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.



[appengine-java] Re: BookingVisual - BookingTool runs on google app engine

2011-02-01 Thread Ronny Bubke
Hey Ikai,

we are every time open to improvements. Temporally we still working on
the web site layout and documentation. We will consider your proposal
and adapt our web site to some design concepts in the future.

Thanx a lot
Ronny

On Jan 31, 11:47 pm, Ikai Lan (Google) ikai.l+gro...@google.com
wrote:
 Hey,

 This looks pretty useful! Can I offer some constructive criticism? The site
 design could use a huge upgrade. You don't have to go for the bubbly, Web
 2.0 look, but I bet your usage would increase if you borrowed some concepts
 from some great looking Wordpress themes:

 http://www.readwriteweb.com/biz/2011/01/why-you-should-pay-for-premiu...

 Users have an expectations for what a site looks like, and with a few
 tweaks, you could make BookingVisual look pretty amazing.

 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 Blogger:http://googleappengine.blogspot.com
 Reddit:http://www.reddit.com/r/appengine
 Twitter:http://twitter.com/app_engine



 On Mon, Jan 31, 2011 at 12:01 PM, Ronny Bubke ronny.bu...@gmail.com wrote:
  We are proud to announce our new graphical booking tool BookingVisual.
  BookingVisual runs on GAE and it's very cool. We worked hard for the
  last year and we think we had a cool project which will help a lot of
  people in their booking process.

  Try it out, it's fun
 http://bookingvisual.appspot.com

  Thx
  Ronny

  --
  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.comgoogle-appengine-java%2B 
  unsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-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.



Re: [appengine-java] How to prevent google bot

2011-02-01 Thread Fabrizio Accatino
robot.txt ?


On Tue, Feb 1, 2011 at 2:16 PM, midi chum...@gmail.com wrote:

 How can I prevent google bot from accessing a java based appspot
 app ?.


-- 
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.



[appengine-java] Reoccurring DeadlineExceededExceptions at request.getSession()

2011-02-01 Thread gholler
I have seen, for some time, DeadlineExceededExceptions in our apps log
where it appears to be hanging on a request.getSession().  In our app
we have an authentication filter that sets and removes an attribute on
the session and this error happens at least twice a day.
Has anyone else seen this behavior?  Does anyone know what going on
here?

George Holler

-- 
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.



[appengine-java] Re: Just getting started with Datastore

2011-02-01 Thread David Sowerby
Hi Matt

I agree with all that has been said here - the ultimate choice has to
be yours to suit your needs, but if I had one single recommendation it
would be to read the Objectify documentation to start with - even if
you never use Objectify you will have gained a very quick and clear
understanding of the datastore, which is likely to be different to
anything you have used before.

Have fun ...

http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify

David

On Jan 31, 5:07 am, Matt Reeves mattr...@gmail.com wrote:
 Thanks for the feedback.  I am willing to try the low-level API first and
 that's what I thought I was doing but could not figure out (and am still
 confused about) how to initially define data.  For example I want to have a
 persistent entity with two properties of type string and one numerical
 property.  When I use this bulkloader tool it is storing all the data as
 string, so maybe my problem is just learning how to use this tool to load
 data (which I definitely want to do).

 Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[google-appengine] Task Queue Rate vs. Bucket Size

2011-02-01 Thread HalcyonDays
So I've read through a couple of things about the Task Queue's Token-
Bucket system, and I've taken a look at the wikipedia article to no
avail, so forgive me if this question has been answered elsewhere:

What is the resolution of the clock that deposits tokens into the
bucket for each queue?  Is its minimum resolution per second?
i.e.  If I say, I want my rate to be 10/s, are 10 tokens deposited
into the bucket every second, or is one token added every 10th of a
second?

It seems like if the resolution is only per second, the rate is
limited not only by the user's specification, but also by the bucket
size...

For example: If I have a specified rate of 50/s but a bucket size of 5
and the system deposits 50 tokens into the bucket every second, are
the additional 45 just thrown away?  Does my rate actually become 5/s?

I'm specifically using the Java app engine, if there's a difference
between the Task Queues in Python/Java.

-- 
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] SSLKeyException: RSA premaster secret error

2011-02-01 Thread Yoda
I'm trying to deploy my app but am getting an ssl based error

Creating staging directory
Scanning for jsp files.
Scanning files on local disk.
Initiating update.
javax.net.ssl.SSLKeyException: RSA premaster secret error

Unable to update:
javax.net.ssl.SSLKeyException: RSA premaster secret error
at com.sun.net.ssl.internal.ssl.RSAClientKeyExchange.init(Unknown
Source)
at
com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(Unknown
Source)
at
com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Unknown
Source)
at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown
Source)
at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Unknown
Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown
Source)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown
Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown
Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown
Source)
at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown
Source)
at
sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown
Source)
at
sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown
Source)
at
sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown
Source)
at
com.google.appengine.tools.admin.ServerConnection.connect(ServerConnection.java:
337)
at
com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java:
133)
at
com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java:
82)
at
com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java:
582)
at
com.google.appengine.tools.admin.AppVersionUpload.beginTransaction(AppVersionUpload.java:
400)
at
com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:
112)
at
com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:
56)
at
com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java:
271)
at
com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java:
146)
at
org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:
38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.security.NoSuchAlgorithmException:
SunTlsRsaPremasterSecret KeyGenerator not available
at javax.crypto.KeyGenerator.init(DashoA13*..)
at javax.crypto.KeyGenerator.getInstance(DashoA13*..)
at com.sun.net.ssl.internal.ssl.JsseJce.getKeyGenerator(Unknown
Source)
... 24 more

I've downloaded JCE but this has not fixed the issue. (i'm using win
xp)

Any help would be greatly appreciated. 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-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] Any advice on recommended DataStore equivalent to these type(s) of table?

2011-02-01 Thread Loren
Hello,

I'm transitioning an existing PHP + MySql web application over to
python GAE. It's essentially an inventory management application for a
plant nursery. The relevant mysql tables are basically:

Plant:
plant_idint(8) PRIMARY KEY autoincrement unsigned
sci_namevarchar(60)
variety varchar(60)
common_name varchar(60)

description text
last_modified   timestamp ON_UPDATE_CURRENT_TIMESTAMP


PlantItems:
item_id int(8) PRIMARY KEY autoincrement UNSINGED
plant_idint(8) FOREIGN KEY
sizevarchar(10) // something like 1_gallon, 2_gallon, etc
retail_pricedecimal(5,2)
wholesale_price decimal(5,2)
quantityint(5)
last_modified   timestamp ON_UPDATE_CURRENT_TIMESTAMP


So the main issue is that each plant, which has lots of info, has
multiple sizes. There's flats, quart-sized containers, gallon
containers, etc etc. All the plant-related details are the same
between them, but they each have a unique quantity and price. In a
RDMS, I can JOIN on these tables and match up plant_id. I'm trying to
think of something for the DataStore model that will minimized
duplicated code.

I know you can store Lists in a db.Model derived class, but not a list
of tuples. I also though about doing dynamic properties ala
db.Expando, but that didn't seem to gain much.. Thoughts?

-- 
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: Bulkloading CSV data to app engine datastore

2011-02-01 Thread Rob
Hello Philippe,

I am running under ubuntu. GAE supports python 2.5 not 2.7. I don't
know if this is the best or easiest way, but its the way I do it.

To up/down load data I followed: 
http://code.google.com/appengine/docs/python/tools/uploadingdata.html

To configure the bulkloader.yaml I run:

$ ppcfg.py create_bulkloader_config your-app-name --
filename=bulkloader.yaml

It does most the magic but you have to make a few changes, like what
kind of output. Edit the file bulkloader.yaml, adding at least:
  - kind: YourKindName
  connector: csv

Also add to the app.yaml file
  builtins:
  - remote_api: on

Now upload or download the command is long, I use python2.5, so...

$ python2.5 ../google_appengine/appcfg.py upload_data
--config_file=bulkloader.yaml
--application=app-name
--filename=YourKindName.csv
--kind=YourKindName
--url=http://app-name.appspot.com/_ah/remote_api
--batch_size=100

good luck!
-rob

On Jan 30, 2:04 am, Philippe REGALL philippe.reg...@gmail.com wrote:
 Hello,

 I am trying to upload a simple CSV file (2 column: tag, value, 7000
 lines) into my datastore google app engine using the bulkloader.
 I read the topic 
 at:http://code.google.com/intl/fr-FR/appengine/docs/python/tools/uploadi...

 My questions are :

 - how and where to use the python command create_bulkloader_config --
 filename=bulkloader.yaml ?
 = In python command line ?
 = In my main.py and then deploy ?

 - where do I get the file bulkloader.yaml generated ?
 = on my local disc ? on the api remote path ? how to catch it ?

 This is certainly basic questions but I am not a python programmer, I
 need a step by step explanation.

 I am a Google App inventor user who set up a customtinywebdb serivce
 using the code provided 
 athttp://appinventor.googlelabs.com/learn/reference/other/tinywebdb.html.
 I use Google app engine launcher, Python 2.7 on Windows.

 Thanks in advance ! (I am blocked at this point of my development).

 Philippe REGALL

-- 
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.



Re: [google-appengine] Re: Powered by Google Technologies

2011-02-01 Thread Kayode Odeyemi
Hello, Michael, is your team available to take on a GWT project that makes
use of
virtually all Google tools?

Kindly let me know.

Thanks

On Tue, Feb 1, 2011 at 2:32 AM, Doug dafin...@gmail.com wrote:

 Nice Site! Smooth and well done.

 On Jan 30, 3:09 pm, Michael Weinberg weinbe...@gmail.com wrote:
  Wanted to share our project called CitySale.ca which is built entirely
  on the Google stack:
 
  Google APIs - App Engine, GWT, Maps, Fusion Tables, Geocoding, Places,
  Search, ...
  Google Tools - Analytics, DoubleClick, Webmaster
 
  The GWT Client and the App Engine based server are also deeply
  integrated with Facebook APIs.
 
  It is a bit scary to completely rely on a single company (Google) for
  all your technology/infrastructure needs, but for us the benefits
  outweigh this concern!
 
  Would be great to get some feedback and if I would be happy to answer
  any questions about how this service was built.
 
  p.s. if you are from Canada, we hope you would actually sign up and
  use the service too :)
 
  the url is  http://www.citysale.ca
 
  Thanks,
  Michael Weinberg

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Odeyemi 'Kayode O.

B.Sc(Hons) Econs, Application Developer  Systems Engineer (Sun Certified
Professional),
Oracle Certified Associate, Solaris Systems Administrator, Drupal Developer

Tel: +2348053063373
P.O.Box 682, Ita-elewa, Ikorodu,
Lagos, Nigeria, West-Africa.

Website: http://sinati.com http://www.sinati.com
Socialize with me: http://profile.to/charyorde, http://twitter.com/charyorde,

http://www.google.com/profiles/dreyemi
Skype:drecute

-- 
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.



Re: [google-appengine] Powered by Google Technologies

2011-02-01 Thread Kayode Odeyemi
Great site. I think i'll work on an imitation :)

On Mon, Jan 31, 2011 at 6:03 PM, Ethan mobil...@gmail.com wrote:

 How long does it take to create the website? Just curious.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Odeyemi 'Kayode O.

B.Sc(Hons) Econs, Application Developer  Systems Engineer (Sun Certified
Professional),
Oracle Certified Associate, Solaris Systems Administrator, Drupal Developer

Tel: +2348053063373
P.O.Box 682, Ita-elewa, Ikorodu,
Lagos, Nigeria, West-Africa.

Website: http://sinati.com http://www.sinati.com
Socialize with me: http://profile.to/charyorde, http://twitter.com/charyorde,

http://www.google.com/profiles/dreyemi
Skype:drecute

-- 
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] Duplicate Property Error - Can't Fix

2011-02-01 Thread Bill Edwards
Hi, I'm trying to run a mapreduce job and i'm getitng Error --
DuplicatePropertyError: Class Users already has campaigns_set.

Ive tried changing the collection name to something unique and
reputtinga ll my entities, but i'm still getting the error.  The only
solution i've found is to comment out the property entirely, but i
can't do that becuase then my app breaks  Does anyone have any idaes
on how i can get rid of that nasty error?

-- 
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: Duplicate Property Error - Can't Fix

2011-02-01 Thread Tim Hoffman
Hi

Reputting won't help. The won't be in your data. 

You probably more than one ReferenceProperty in different models with the 
property called campaigns that point to the same Kind.  
You will need to go over your models with a fine toothed comb.

Rgds

T

-- 
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.



Re: [google-appengine] Re: X-Sendfile, sending files securely

2011-02-01 Thread Lee Connell
On Mon, Jan 31, 2011 at 5:10 PM, barryhunter barrybhun...@gmail.com wrote:

 Why another thread?

 What was wrong with the last one?

 On Jan 31, 9:24 pm, Lee lee.a.conn...@gmail.com wrote:
  What is the equivalent of using x-sendfile on GAE? How do I serve files
 from
  the web server and not my application container?

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.


I apologize, this is the first time i posted to this group and it said it
had to go through moderators first, and I never seen it come up in the
group, I thought there was a problem, so I sent another one.

-- 
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: Your experience with the High Replication Datastore

2011-02-01 Thread johnP

1.  Would the recommendations stand for a write-intensive
application?  An example is, for example, a SalesForce.com type
system, where there is a balance between entering data and reading it.

2.  Can we hope that in the future, tools will be available to help
with the migration?  If, for example, you have lots of data already;
and potentially other entanglements to an existing appspot domain -
are these customers relegated to slowly dissolve into obsolescence?
Or might there be a function available, in the future, to help with
the migration?

Thanks!

johnP


On Jan 31, 2:51 pm, Ikai Lan (Google) ikai.l+gro...@google.com
wrote:
 I'm going to let someone else answer this question, but we are recommending
 that all new applications use High Replication datastore. Datastore latency
 spikes are virtually non-existent if your application uses HR instead of
 master-slave.

 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 Blogger:http://googleappengine.blogspot.com
 Reddit:http://www.reddit.com/r/appengine
 Twitter:http://twitter.com/app_engine

 On Sat, Jan 29, 2011 at 10:25 PM, Natalie 
 nataliegladstone...@gmail.comwrote:







  Hello,

  We are at the planning phase on a new App Engine project, and we are
  unsure about the choice of Master/Slave and High Replication.

  About our site:
  The site is expected to get a lot of hit (Around 50-200 QPS.).
  Around 20% write and 80% read.
  Minimal outrage a must. Will lose a lot of clients if outrages are too
  frequent.

  We would love to hear from fellow App Engine developers of their
  experiences with HR.

  In particular we want to know:
  1)      Recently the M/S datastore has very high latency for query. How’s
  your experience in HR?
  2)      What’s your approximate of the HR datastore availability? Is it
  close to 99.9%?
  3)      How is the read/write performance of HR datastore? Would love it if
  you could share some statistics.
  4)      How much does the cross datacenter synchronization issue affect the
  performance of your site? Please see this link about the issue:

 http://groups.google.com/group/google-appengine/browse_thread/thread/...

  It would be great if you could share your experience with us and other
  App Engine developers.

  Thank you very much.

  --
  You received this message because you are subscribed to the Google Groups
  Google App Engine group.
  To post to this group, send email to google-appengine@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-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.



Re: [google-appengine] Your experience with the High Replication Datastore

2011-02-01 Thread Jeff Schwartz
Hi Ikai,

Considering your recommendation is there any progress in providing an easier
migration path for existing applications?

On Mon, Jan 31, 2011 at 5:51 PM, Ikai Lan (Google)
ikai.l+gro...@google.comikai.l%2bgro...@google.com
 wrote:

 I'm going to let someone else answer this question, but we are recommending
 that all new applications use High Replication datastore. Datastore latency
 spikes are virtually non-existent if your application uses HR instead of
 master-slave.

 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 Blogger: http://googleappengine.blogspot.com
 Reddit: http://www.reddit.com/r/appengine
 Twitter: http://twitter.com/app_engine



 On Sat, Jan 29, 2011 at 10:25 PM, Natalie 
 nataliegladstone...@gmail.comwrote:

 Hello,

 We are at the planning phase on a new App Engine project, and we are
 unsure about the choice of Master/Slave and High Replication.

 About our site:
 The site is expected to get a lot of hit (Around 50-200 QPS.).
 Around 20% write and 80% read.
 Minimal outrage a must. Will lose a lot of clients if outrages are too
 frequent.

 We would love to hear from fellow App Engine developers of their
 experiences with HR.

 In particular we want to know:
 1)  Recently the M/S datastore has very high latency for query. How’s
 your experience in HR?
 2)  What’s your approximate of the HR datastore availability? Is it
 close to 99.9%?
 3)  How is the read/write performance of HR datastore? Would love it
 if
 you could share some statistics.
 4)  How much does the cross datacenter synchronization issue affect
 the
 performance of your site? Please see this link about the issue:

 http://groups.google.com/group/google-appengine/browse_thread/thread/5fc3b6a4366de62f/4b4d23e924b7b136

 It would be great if you could share your experience with us and other
 App Engine developers.

 Thank you very much.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@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-appengine@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.




-- 
*Jeff Schwartz*

-- 
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: Duplicate Property Error - Can't Fix

2011-02-01 Thread johnP

Your model, 'Campaigns' has multiple reference properties that can
potentially reference User (either explicitly, or via a non-specific
reference property).  Add a collection_name to such reference
properties (only one can remain without a collection_name).




On Feb 1, 5:00 am, Tim Hoffman zutes...@gmail.com wrote:
 Hi

 Reputting won't help. The won't be in your data.

 You probably more than one ReferenceProperty in different models with the
 property called campaigns that point to the same Kind.  
 You will need to go over your models with a fine toothed comb.

 Rgds

 T

-- 
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] Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Jeff Schwartz
Hi all,

I hope you don't mind me cross posting this to both the gwt and app engine
groups since I'd really like to get the opinions of users on both platforms.

I'm in the middle of developing a gwt application on app engine. The
application's security requirements are that non members, meaning those that
haven't registered, are restricted to viewing only the application's public
'page'.

What I developed for authentication is home grown using my own login form,
client side cookies and a User entity with password and email address stored
in the application's data store. While my home grown implementation works
perfectly I am not comfortable with the security implications of cookies and
passing raw passwords to the server to authenticate my users. I also can not
use SSL at this time as financial constraints unfortunately prohibit any
expenditures on this project.

As I place my users' privacy and security above all else I am therefore
looking to implement a better solution; one that would if possible eliminate
my responsibility altogether of having to store cookies and passwords and
transport them via HTTP when authenticating.

One alternative that I am currently considering is using Google Accounts to
authenticate my users along with my own User entity that would store the
additional information users must provide when registering to use the
services of my application. My User entity (not to be confused with the User
object provided by the User API) would store the user's Google Account ID
and would provide the ability to determine if a user is registered simply by
querying for their Google Accounts ID in my datastore. It would eliminate
having to store client side cookies and sending raw passwords to the server.
So far it seems like a win-win proposition as it appears to satisfy all my
use cases.

For those who already use Google Accounts for user authentication are you
happy with the service? How about the services' availability track record
and does it provide the security you had hoped it would?

For those using Google Accounts along with GWT have you found any specific
issues related to using it with GWT (I am using RPC BTW) that you can
relate?

I am looking forward to reading your feedback and responses and thanks in
advance.

Jeff




-- 
*Jeff Schwartz*

-- 
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.



Re: [google-appengine] Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Wim den Ouden
google accounts and the user api just works for me, allways there.
wim

2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
 Hi all,

 I hope you don't mind me cross posting this to both the gwt and app engine
 groups since I'd really like to get the opinions of users on both platforms.

 I'm in the middle of developing a gwt application on app engine. The
 application's security requirements are that non members, meaning those that
 haven't registered, are restricted to viewing only the application's public
 'page'.

 What I developed for authentication is home grown using my own login form,
 client side cookies and a User entity with password and email address stored
 in the application's data store. While my home grown implementation works
 perfectly I am not comfortable with the security implications of cookies and
 passing raw passwords to the server to authenticate my users. I also can not
 use SSL at this time as financial constraints unfortunately prohibit any
 expenditures on this project.

 As I place my users' privacy and security above all else I am therefore
 looking to implement a better solution; one that would if possible eliminate
 my responsibility altogether of having to store cookies and passwords and
 transport them via HTTP when authenticating.

 One alternative that I am currently considering is using Google Accounts to
 authenticate my users along with my own User entity that would store the
 additional information users must provide when registering to use the
 services of my application. My User entity (not to be confused with the User
 object provided by the User API) would store the user's Google Account ID
 and would provide the ability to determine if a user is registered simply by
 querying for their Google Accounts ID in my datastore. It would eliminate
 having to store client side cookies and sending raw passwords to the server.
 So far it seems like a win-win proposition as it appears to satisfy all my
 use cases.

 For those who already use Google Accounts for user authentication are you
 happy with the service? How about the services' availability track record
 and does it provide the security you had hoped it would?

 For those using Google Accounts along with GWT have you found any specific
 issues related to using it with GWT (I am using RPC BTW) that you can
 relate?

 I am looking forward to reading your feedback and responses and thanks in
 advance.

 Jeff




 --
 Jeff Schwartz

 --
 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.




-- 
gr
Wim den Ouden
Custom applications, https://e-comm.appspot.com/
Free open source E-commerce/E-bookkeeping/E-business framework (web)
apps, http://code.google.com/p/relat/
Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

-- 
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: Drools and Jess Expert system Develpoment with Google App Engine

2011-02-01 Thread Augusto Rocca
Thanks Colin, you are right, no one at this time can run these
libraries using Google App Engine.

On 11 ene, 21:39, Colin Hawkett hawk...@gmail.com wrote:
 Perhaps this post will help 
 -http://drools-java-rules-engine.46999.n3.nabble.com/drools-and-google...,
 I seem to remember something about those libraries requiring some unexpected
 stuff that interfered with Java security policies, but the memory is pretty
 faint - a quick proof of concept is probably your best bet.

-- 
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.



Re: [google-appengine] Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Jeff Schwartz
Are you also using GWT by chance?

On Tue, Feb 1, 2011 at 9:15 AM, Wim den Ouden wdenou...@gmail.com wrote:

 google accounts and the user api just works for me, allways there.
 wim

 2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
  Hi all,
 
  I hope you don't mind me cross posting this to both the gwt and app
 engine
  groups since I'd really like to get the opinions of users on both
 platforms.
 
  I'm in the middle of developing a gwt application on app engine. The
  application's security requirements are that non members, meaning those
 that
  haven't registered, are restricted to viewing only the application's
 public
  'page'.
 
  What I developed for authentication is home grown using my own login
 form,
  client side cookies and a User entity with password and email address
 stored
  in the application's data store. While my home grown implementation works
  perfectly I am not comfortable with the security implications of cookies
 and
  passing raw passwords to the server to authenticate my users. I also can
 not
  use SSL at this time as financial constraints unfortunately prohibit any
  expenditures on this project.
 
  As I place my users' privacy and security above all else I am therefore
  looking to implement a better solution; one that would if possible
 eliminate
  my responsibility altogether of having to store cookies and passwords and
  transport them via HTTP when authenticating.
 
  One alternative that I am currently considering is using Google Accounts
 to
  authenticate my users along with my own User entity that would store the
  additional information users must provide when registering to use the
  services of my application. My User entity (not to be confused with the
 User
  object provided by the User API) would store the user's Google Account ID
  and would provide the ability to determine if a user is registered simply
 by
  querying for their Google Accounts ID in my datastore. It would eliminate
  having to store client side cookies and sending raw passwords to the
 server.
  So far it seems like a win-win proposition as it appears to satisfy all
 my
  use cases.
 
  For those who already use Google Accounts for user authentication are you
  happy with the service? How about the services' availability track record
  and does it provide the security you had hoped it would?
 
  For those using Google Accounts along with GWT have you found any
 specific
  issues related to using it with GWT (I am using RPC BTW) that you can
  relate?
 
  I am looking forward to reading your feedback and responses and thanks in
  advance.
 
  Jeff
 
 
 
 
  --
  Jeff Schwartz
 
  --
  You received this message because you are subscribed to the Google Groups
  Google App Engine group.
  To post to this group, send email to google-appengine@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 



 --
 gr
 Wim den Ouden
 Custom applications, https://e-comm.appspot.com/
 Free open source E-commerce/E-bookkeeping/E-business framework (web)
 apps, http://code.google.com/p/relat/
 Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
*Jeff Schwartz*

-- 
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.



Re: [google-appengine] Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Wim den Ouden
python + jquery

2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
 Are you also using GWT by chance?

 On Tue, Feb 1, 2011 at 9:15 AM, Wim den Ouden wdenou...@gmail.com wrote:

 google accounts and the user api just works for me, allways there.
 wim

 2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
  Hi all,
 
  I hope you don't mind me cross posting this to both the gwt and app
  engine
  groups since I'd really like to get the opinions of users on both
  platforms.
 
  I'm in the middle of developing a gwt application on app engine. The
  application's security requirements are that non members, meaning those
  that
  haven't registered, are restricted to viewing only the application's
  public
  'page'.
 
  What I developed for authentication is home grown using my own login
  form,
  client side cookies and a User entity with password and email address
  stored
  in the application's data store. While my home grown implementation
  works
  perfectly I am not comfortable with the security implications of cookies
  and
  passing raw passwords to the server to authenticate my users. I also can
  not
  use SSL at this time as financial constraints unfortunately prohibit any
  expenditures on this project.
 
  As I place my users' privacy and security above all else I am therefore
  looking to implement a better solution; one that would if possible
  eliminate
  my responsibility altogether of having to store cookies and passwords
  and
  transport them via HTTP when authenticating.
 
  One alternative that I am currently considering is using Google Accounts
  to
  authenticate my users along with my own User entity that would store the
  additional information users must provide when registering to use the
  services of my application. My User entity (not to be confused with the
  User
  object provided by the User API) would store the user's Google Account
  ID
  and would provide the ability to determine if a user is registered
  simply by
  querying for their Google Accounts ID in my datastore. It would
  eliminate
  having to store client side cookies and sending raw passwords to the
  server.
  So far it seems like a win-win proposition as it appears to satisfy all
  my
  use cases.
 
  For those who already use Google Accounts for user authentication are
  you
  happy with the service? How about the services' availability track
  record
  and does it provide the security you had hoped it would?
 
  For those using Google Accounts along with GWT have you found any
  specific
  issues related to using it with GWT (I am using RPC BTW) that you can
  relate?
 
  I am looking forward to reading your feedback and responses and thanks
  in
  advance.
 
  Jeff
 
 
 
 
  --
  Jeff Schwartz
 
  --
  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.
 



 --
 gr
 Wim den Ouden
 Custom applications, https://e-comm.appspot.com/
 Free open source E-commerce/E-bookkeeping/E-business framework (web)
 apps, http://code.google.com/p/relat/
 Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

 --
 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.




 --
 Jeff Schwartz

 --
 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.




-- 
gr
Wim den Ouden
Custom applications, https://e-comm.appspot.com/
Free open source E-commerce/E-bookkeeping/E-business framework (web)
apps, http://code.google.com/p/relat/
Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

-- 
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] Cache headers not working w/ billing enabled

2011-02-01 Thread David
I have billing enabled on my app and I'm trying to get the Cache-
control headers to edge cache a page.  I'm setting the header to Cache-
Control: public; max-age=300; and I see it coming back.  I'm using
wget to test it out.  I've also included a now date in the generated
document so I can see if it's caching it or not.  It is generating
that now date with every request and I see logs coming in on the
dashboard as 200.  Am I doing something wrong?  How do I get server
side caching working?

Thanks,
David

Here is the output from my wget call:

---request begin---
GET /v2/config HTTP/1.0
User-Agent: Wget/1.12 (cygwin)
Accept: */*
Host: 11.latest.word-play.appspot.com
Connection: Keep-Alive

---request end---
HTTP request sent, awaiting response...
---response begin---
HTTP/1.0 200 OK
Content-Type: application/json; charset=ISO-8859-1
Cache-Control: public; max-age=300;
Date: Tue, 01 Feb 2011 15:52:10 GMT
Server: Google Frontend

---response end---
200 OK
URI content encoding = `ISO-8859-1'
Length: unspecified [application/json]
Saving to: `STDOUT'

-- 
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] remote api and deferred handler mapping in yaml file

2011-02-01 Thread andreas schmid
hi,

do i still need these entries in my app.yaml?

- url: /remote_api
  script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py
  login: admin

- url: /_ah/queue/deferred
  script: $PYTHON_LIB/google/appengine/ext/deferred/handler.py
  login: admin


im uring the remote_api: on in the builtins definition. so i guess i dont need 
the first entry any more. 
but what about the deferred handler?

-- 
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] Design Question

2011-02-01 Thread Ravi
Hi,
I have 2-3 properties(Unowned Relationship keys) in my class which i will be 
using in where clause to filter records.

Class PropertyAd{

Key locationKey; //This will point for which location this ad has been 
created
Key categoryKey;//This will point for which category this ad has been 
created.
ListKey featuresKey;//It will tell what fatures this property have e.g. 
Fully Furnished,With Parking etc, as i dont know what kind of feature it can 
have in future so i am creating all the features in seprate table/class and 
refernecing from here. Say i could have max 50 features.

}

Now i can query like this
1) Select PropertyAd where locationKey=SomeKey 
2) Select PropertyAd where locationKey=SomeKey and categoryKey=SomeOtherkey
3) Select PropertyAd where locationKey=SomeKey  and categoryKey=SomeOtherkey 
and featureKey = someFeatureKey1 and featureKey = someFeatureKey2

Now for query 1 i don't need to create explicit index

for query 2 , 1 index will be created 
e.g. if LocationKey is Location(2) and CategoryKey is Category(3)
then 1 index entry will be created Location(2) +Category(3) (or may be 
Category(3) + Location(2) too but not sure)


for query 3 i am not sure how index will be created
if for one propertyAd i have LocationKey is Location(2) and CategoryKey is 
Category(3) featureKey  Feature(10) and featureKey(12)
then will it indexes as all combination of all four keys which will be 
4*3*2*1=24 indexes(is it true?)



Now i am thinking keys take care of most of the things then why not i put my 
all unowned foreign reference in one List as 

Class PropertyAd{

ListKey allKey;//It will have Location key, CategoryKey, feature key or 
any other key in future as per new requirment

}

and my queries will be like this
1) Select PropertyAd where allKey=SomeKey 
2) Select PropertyAd where allKey=SomeKey and allKey=SomeOtherkey
3) Select PropertyAd where allKey=SomeKey  andallKey =SomeOtherkey and 
allKey= someFeatureKey1 and allKey= someFeatureKey2

So if for one property ad i have four keys in this list will it create 
4*3*2*1 indexes or it will just create 4 indexes.

I am not sure how the indexes will be created and how much for it looks like 
second solution will be much better.

All comments/suggestions are welcome

Thanks in advance
Ravi.

-- 
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] Inequality Filters on a date and a number

2011-02-01 Thread Prashanth
Hi,

Am trying to query my Google App Engine datastore [Python], which has
a item_name, manufacturing_date and number_of_items_shipped.
The scenario:
Get all the item_names which has been shipped more than x_items [user
input] and manufactured after some_input_date [user input].
Basically, kind of inventory check.

But due to restrictions on queries in GAE, am not able to do this.
http://code.google.com/appengine/docs/python/datastore/queries.html#Restrictions_on_Queries

I tried searching on the internet for this issue. But, no luck till
now. Did you come across this issue, if so, were you able to resolve
this? Please let me know.

Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
going to remove this restriction soon. Its been more than 8 months,
but this restriction is in place even now. Makes life very difficult.

Appreciate if anyone can post an answer if they were able to
circumvent this restriciton.
Thanks a lot.

Regards,
Prashanth.

-- 
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.



Re: [google-appengine] Inequality Filters on a date and a number

2011-02-01 Thread Wim den Ouden
with the help of the cursor (all items, while loop) select on more
than x_items, within the loop check if after some_input_date, append
for example to python list or javascript array, when the loop is ready
show the list.
gr
wim

2011/2/1 Prashanth prashanth.b...@gmail.com:
 Hi,

 Am trying to query my Google App Engine datastore [Python], which has
 a item_name, manufacturing_date and number_of_items_shipped.
 The scenario:
 Get all the item_names which has been shipped more than x_items [user
 input] and manufactured after some_input_date [user input].
 Basically, kind of inventory check.

 But due to restrictions on queries in GAE, am not able to do this.
 http://code.google.com/appengine/docs/python/datastore/queries.html#Restrictions_on_Queries

 I tried searching on the internet for this issue. But, no luck till
 now. Did you come across this issue, if so, were you able to resolve
 this? Please let me know.

 Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
 watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
 going to remove this restriction soon. Its been more than 8 months,
 but this restriction is in place even now. Makes life very difficult.

 Appreciate if anyone can post an answer if they were able to
 circumvent this restriciton.
 Thanks a lot.

 Regards,
 Prashanth.

 --
 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.





-- 
gr
Wim den Ouden
Custom applications, https://e-comm.appspot.com/
Free open source E-commerce/E-bookkeeping/E-business framework (web)
apps, http://code.google.com/p/relat/
Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

-- 
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.



Re: [google-appengine] Inequality Filters on a date and a number

2011-02-01 Thread Jeff Schwartz
This would require 2 inequality filters so no luck.

On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com wrote:

 Hi,

 Am trying to query my Google App Engine datastore [Python], which has
 a item_name, manufacturing_date and number_of_items_shipped.
 The scenario:
 Get all the item_names which has been shipped more than x_items [user
 input] and manufactured after some_input_date [user input].
 Basically, kind of inventory check.

 But due to restrictions on queries in GAE, am not able to do this.

 http://code.google.com/appengine/docs/python/datastore/queries.html#Restrictions_on_Queries

 I tried searching on the internet for this issue. But, no luck till
 now. Did you come across this issue, if so, were you able to resolve
 this? Please let me know.

 Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
 watch?v=ofhEyDBpngM#t=3m17shttp://www.youtube.com/%0Awatch?v=ofhEyDBpngM#t=3m17s],
 Alfred Fuller mentioned that they are
 going to remove this restriction soon. Its been more than 8 months,
 but this restriction is in place even now. Makes life very difficult.

 Appreciate if anyone can post an answer if they were able to
 circumvent this restriciton.
 Thanks a lot.

 Regards,
 Prashanth.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
*Jeff Schwartz*

-- 
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.



Re: [google-appengine] Inequality Filters on a date and a number

2011-02-01 Thread Jeff Schwartz
If the amount of data is merely trivial then this would work but anything
more than merely trivial and the solution would have to include the use of
tasks.

On Tue, Feb 1, 2011 at 12:18 PM, Wim den Ouden wdenou...@gmail.com wrote:

 with the help of the cursor (all items, while loop) select on more
 than x_items, within the loop check if after some_input_date, append
 for example to python list or javascript array, when the loop is ready
 show the list.
 gr
 wim

 2011/2/1 Prashanth prashanth.b...@gmail.com:
  Hi,
 
  Am trying to query my Google App Engine datastore [Python], which has
  a item_name, manufacturing_date and number_of_items_shipped.
  The scenario:
  Get all the item_names which has been shipped more than x_items [user
  input] and manufactured after some_input_date [user input].
  Basically, kind of inventory check.
 
  But due to restrictions on queries in GAE, am not able to do this.
 
 http://code.google.com/appengine/docs/python/datastore/queries.html#Restrictions_on_Queries
 
  I tried searching on the internet for this issue. But, no luck till
  now. Did you come across this issue, if so, were you able to resolve
  this? Please let me know.
 
  Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
  watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
  going to remove this restriction soon. Its been more than 8 months,
  but this restriction is in place even now. Makes life very difficult.
 
  Appreciate if anyone can post an answer if they were able to
  circumvent this restriciton.
  Thanks a lot.
 
  Regards,
  Prashanth.
 
  --
  You received this message because you are subscribed to the Google Groups
 Google App Engine group.
  To post to this group, send email to google-appengine@googlegroups.com.
  To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.
 
 



 --
 gr
 Wim den Ouden
 Custom applications, https://e-comm.appspot.com/
 Free open source E-commerce/E-bookkeeping/E-business framework (web)
 apps, http://code.google.com/p/relat/
 Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
*Jeff Schwartz*

-- 
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.



Re: [google-appengine] Inequality Filters on a date and a number

2011-02-01 Thread Wim den Ouden
no, no, first the query on is item_names and more than x_items,
then a loop on the result from this query (for items in resultquery:)
if some_input_date  date: append to list
when ready show list

you can play with fetch(..) to get optimum speed and cpu usage.
ofcourse not a top solution, but it works till??
gr
wim

2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
 This would require 2 inequality filters so no luck.

 On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com wrote:

 Hi,

 Am trying to query my Google App Engine datastore [Python], which has
 a item_name, manufacturing_date and number_of_items_shipped.
 The scenario:
 Get all the item_names which has been shipped more than x_items [user
 input] and manufactured after some_input_date [user input].
 Basically, kind of inventory check.

 But due to restrictions on queries in GAE, am not able to do this.

 http://code.google.com/appengine/docs/python/datastore/queries.html#Restrictions_on_Queries

 I tried searching on the internet for this issue. But, no luck till
 now. Did you come across this issue, if so, were you able to resolve
 this? Please let me know.

 Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
 watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
 going to remove this restriction soon. Its been more than 8 months,
 but this restriction is in place even now. Makes life very difficult.

 Appreciate if anyone can post an answer if they were able to
 circumvent this restriciton.
 Thanks a lot.

 Regards,
 Prashanth.

 --
 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.




 --
 Jeff Schwartz

 --
 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.




-- 
gr
Wim den Ouden
Custom applications, https://e-comm.appspot.com/
Free open source E-commerce/E-bookkeeping/E-business framework (web)
apps, http://code.google.com/p/relat/
Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

-- 
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.



Re: [google-appengine] Inequality Filters on a date and a number

2011-02-01 Thread Jeff Schwartz
If you intend to make multiple calls passing the cursor back and forth
between client and server then that would work but if you intend to do it
all in one request then I think the poster of the original question would
need to define how much data they were talking about which brings me back to
what I suggested earlier which is: if you are talking about merely trivial
amounts of data then it would work but if he is talking about anything more
than merely trivial amounts of data then it wont work and another approach
would be needed.

Jeff

 I'd prefer a neater package: begin a task that kicks of multiple queries to
retrieve all the results - the tasks can use a cursor. When the tasks have
completed their work

On Tue, Feb 1, 2011 at 12:28 PM, Wim den Ouden wdenou...@gmail.com wrote:

 no, no, first the query on is item_names and more than x_items,
 then a loop on the result from this query (for items in resultquery:)
 if some_input_date  date: append to list
 when ready show list

 you can play with fetch(..) to get optimum speed and cpu usage.
 ofcourse not a top solution, but it works till??
 gr
 wim

 2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
  This would require 2 inequality filters so no luck.
 
  On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com
 wrote:
 
  Hi,
 
  Am trying to query my Google App Engine datastore [Python], which has
  a item_name, manufacturing_date and number_of_items_shipped.
  The scenario:
  Get all the item_names which has been shipped more than x_items [user
  input] and manufactured after some_input_date [user input].
  Basically, kind of inventory check.
 
  But due to restrictions on queries in GAE, am not able to do this.
 
 
 http://code.google.com/appengine/docs/python/datastore/queries.html#Restrictions_on_Queries
 
  I tried searching on the internet for this issue. But, no luck till
  now. Did you come across this issue, if so, were you able to resolve
  this? Please let me know.
 
  Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
  watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
  going to remove this restriction soon. Its been more than 8 months,
  but this restriction is in place even now. Makes life very difficult.
 
  Appreciate if anyone can post an answer if they were able to
  circumvent this restriciton.
  Thanks a lot.
 
  Regards,
  Prashanth.
 
  --
  You received this message because you are subscribed to the Google
 Groups
  Google App Engine group.
  To post to this group, send email to google-appengine@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 
 
 
 
  --
  Jeff Schwartz
 
  --
  You received this message because you are subscribed to the Google Groups
  Google App Engine group.
  To post to this group, send email to google-appengine@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 



 --
 gr
 Wim den Ouden
 Custom applications, https://e-comm.appspot.com/
 Free open source E-commerce/E-bookkeeping/E-business framework (web)
 apps, http://code.google.com/p/relat/
 Gae developer tips, http://code.google.com/p/relat/wiki/gaetips

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
*Jeff Schwartz*

-- 
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.



Re: [google-appengine] Task Queue Rate vs. Bucket Size

2011-02-01 Thread Robert Kluin
Hi,
  The rate is like an average upper bound;  in other words, the
token-adding resolution is the unit of the rate you set.  And, it is
'bursty,' so if you set a rate of 50/M you might very well have 50
tasks execute in the first second then the queue will not execute any
tasks for about 59 seconds.  Setting a higher bucket_size will let the
queue 'burst' at a higher rate, I usually see that after a queue has
emptied.

  At least that's how I've seen the task-queue behave.



Robert





On Mon, Jan 31, 2011 at 14:57, HalcyonDays jbpap...@gmail.com wrote:
 So I've read through a couple of things about the Task Queue's Token-
 Bucket system, and I've taken a look at the wikipedia article to no
 avail, so forgive me if this question has been answered elsewhere:

 What is the resolution of the clock that deposits tokens into the
 bucket for each queue?  Is its minimum resolution per second?
 i.e.  If I say, I want my rate to be 10/s, are 10 tokens deposited
 into the bucket every second, or is one token added every 10th of a
 second?

 It seems like if the resolution is only per second, the rate is
 limited not only by the user's specification, but also by the bucket
 size...

 For example: If I have a specified rate of 50/s but a bucket size of 5
 and the system deposits 50 tokens into the bucket every second, are
 the additional 45 just thrown away?  Does my rate actually become 5/s?

 I'm specifically using the Java app engine, if there's a difference
 between the Task Queues in Python/Java.

 --
 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.



-- 
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.



Re: [google-appengine] Re: Inequality Filters on a date and a number

2011-02-01 Thread Jeff Schwartz
Tasks are now allowed up to 10 minutes to complete their work. You still
have to deal with the 30 seconds max per datastore api call but that
shouldn't be a problem.

Use tasks to handle the heavy lifting and like Wim suggested use a cursor to
maintain your position in the result set between task invocations. Between
the 2 as well as using parallel batch gets you should easily be able to
handle million + records in your result set. Once the tasks have completed
it should write some marker entity out to the datastore which can be used by
a forward facing request to determine if the result set is available or not.

Jeff

On Tue, Feb 1, 2011 at 1:24 PM, Prashanth prashanth.b...@gmail.com wrote:

 Thanks Jeff and Wim for the responses.

 I missed out giving the number of records in the datastore.
 The datastore has ~1 million records and ever increasing.
 The solution which we have now is, get all the records greater than
 the input date [most restrictive] in a query and then loop thru the
 records for records greater than x_items.
 This solution hit performance badly. Hence looking for an alternative
 solution.

 Any suggestions please.
 Thanks for reading this.

 On Feb 1, 11:05 pm, Jeff Schwartz jefftschwa...@gmail.com wrote:
  If you intend to make multiple calls passing the cursor back and forth
  between client and server then that would work but if you intend to do it
  all in one request then I think the poster of the original question would
  need to define how much data they were talking about which brings me back
 to
  what I suggested earlier which is: if you are talking about merely
 trivial
  amounts of data then it would work but if he is talking about anything
 more
  than merely trivial amounts of data then it wont work and another
 approach
  would be needed.
 
  Jeff
 
   I'd prefer a neater package: begin a task that kicks of multiple queries
 to
  retrieve all the results - the tasks can use a cursor. When the tasks
 have
  completed their work
 
  On Tue, Feb 1, 2011 at 12:28 PM, Wim den Ouden wdenou...@gmail.com
 wrote:
 
 
 
 
 
 
 
 
 
   no, no, first the query on is item_names and more than x_items,
   then a loop on the result from this query (for items in resultquery:)
   if some_input_date  date: append to list
   when ready show list
 
   you can play with fetch(..) to get optimum speed and cpu usage.
   ofcourse not a top solution, but it works till??
   gr
   wim
 
   2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
This would require 2 inequality filters so no luck.
 
On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com
   wrote:
 
Hi,
 
Am trying to query my Google App Engine datastore [Python], which
 has
a item_name, manufacturing_date and number_of_items_shipped.
The scenario:
Get all the item_names which has been shipped more than x_items
 [user
input] and manufactured after some_input_date [user input].
Basically, kind of inventory check.
 
But due to restrictions on queries in GAE, am not able to do this.
 
  http://code.google.com/appengine/docs/python/datastore/queries.html#R.
 ..
 
I tried searching on the internet for this issue. But, no luck till
now. Did you come across this issue, if so, were you able to resolve
this? Please let me know.
 
Also in Google I/O 2010, Next Gen Queries [
 http://www.youtube.com/
watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
going to remove this restriction soon. Its been more than 8 months,
but this restriction is in place even now. Makes life very
 difficult.
 
Appreciate if anyone can post an answer if they were able to
circumvent this restriciton.
Thanks a lot.
 
Regards,
Prashanth.
 
--
You received this message because you are subscribed to the Google
   Groups
Google App Engine group.
To post to this group, send email to
 google-appengine@googlegroups.com.
To unsubscribe from this group, send email to
google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
For more options, visit this group at
   http://groups.google.com/group/google-appengine?hl=en.
 
--
Jeff Schwartz
 
--
You received this message because you are subscribed to the Google
 Groups
Google App Engine group.
To post to this group, send email to
 google-appengine@googlegroups.com.
To unsubscribe from this group, send email to
google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
For more options, visit this group at
   http://groups.google.com/group/google-appengine?hl=en.
 
   --
   gr
   Wim den Ouden
   Custom applications,https://e-comm.appspot.com/
   Free open source E-commerce/E-bookkeeping/E-business framework (web)
   apps,http://code.google.com/p/relat/
   Gae developer 

Re: [google-appengine] Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread nacho
I use the UsersService and GWT (RPC) and it works great for me.

The only thing that you have to take care is that if the user logout from 
other Google application in the same browser (for example gmail) will be 
loged out from your application too and catch this situation.

-- 
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.



Re: [google-appengine] Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Jeff Schwartz
Actually why would that matter if I have already authenticated them? What
difference does it make if they then log out from their Google Account?

On Tue, Feb 1, 2011 at 2:38 PM, nacho vela.igna...@gmail.com wrote:

 I use the UsersService and GWT (RPC) and it works great for me.

 The only thing that you have to take care is that if the user logout from
 other Google application in the same browser (for example gmail) will be
 loged out from your application too and catch this situation.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
*Jeff Schwartz*

-- 
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.



Re: [google-appengine] Re: Inequality Filters on a date and a number

2011-02-01 Thread Stephen Johnson
This won't entirely get rid of your need to loop, but you can add an indexed
list property on your entity (let's call it shipped_increments) and put
certain markers in it to indicate that the entity is greater than a certain
amount of items shipped in certain increments (the increments would depend
on your particular case), for example, let's suppose we use an increment of
100 and let's say we have an entity where the number of items shipped was
237 then you would have a list like: 0, 100, 200. If the number of items
shipped where 983, then we would have 0, 100, 200, 300, 400, 500, 600, 700,
800, 900. And if the number of items shipped where 493, we would have 0,
100, 200, 300, 400. The choice of increment would be important.  Then, let's
say we want to know all the item names shipped after a date with at least
433 items, we would do a query with:

   manufactured_date  date and shipped_increments = 400

Then, you would need to loop through the results and remove the ones that
are from 400 to 432 because we want the ones = 433.

Your choice of increments would be important so you don't get to big of
indexing, but there's always a choice between indexing space and speed.

Hope this helps and possibly leads you to a reasonable solution,
Stephen

On Tue, Feb 1, 2011 at 11:24 AM, Prashanth prashanth.b...@gmail.com wrote:

 Thanks Jeff and Wim for the responses.

 I missed out giving the number of records in the datastore.
 The datastore has ~1 million records and ever increasing.
 The solution which we have now is, get all the records greater than
 the input date [most restrictive] in a query and then loop thru the
 records for records greater than x_items.
 This solution hit performance badly. Hence looking for an alternative
 solution.

 Any suggestions please.
 Thanks for reading this.

 On Feb 1, 11:05 pm, Jeff Schwartz jefftschwa...@gmail.com wrote:
  If you intend to make multiple calls passing the cursor back and forth
  between client and server then that would work but if you intend to do it
  all in one request then I think the poster of the original question would
  need to define how much data they were talking about which brings me back
 to
  what I suggested earlier which is: if you are talking about merely
 trivial
  amounts of data then it would work but if he is talking about anything
 more
  than merely trivial amounts of data then it wont work and another
 approach
  would be needed.
 
  Jeff
 
   I'd prefer a neater package: begin a task that kicks of multiple queries
 to
  retrieve all the results - the tasks can use a cursor. When the tasks
 have
  completed their work
 
  On Tue, Feb 1, 2011 at 12:28 PM, Wim den Ouden wdenou...@gmail.com
 wrote:
 
 
 
 
 
 
 
 
 
   no, no, first the query on is item_names and more than x_items,
   then a loop on the result from this query (for items in resultquery:)
   if some_input_date  date: append to list
   when ready show list
 
   you can play with fetch(..) to get optimum speed and cpu usage.
   ofcourse not a top solution, but it works till??
   gr
   wim
 
   2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
This would require 2 inequality filters so no luck.
 
On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com
   wrote:
 
Hi,
 
Am trying to query my Google App Engine datastore [Python], which
 has
a item_name, manufacturing_date and number_of_items_shipped.
The scenario:
Get all the item_names which has been shipped more than x_items
 [user
input] and manufactured after some_input_date [user input].
Basically, kind of inventory check.
 
But due to restrictions on queries in GAE, am not able to do this.
 
  http://code.google.com/appengine/docs/python/datastore/queries.html#R.
 ..
 
I tried searching on the internet for this issue. But, no luck till
now. Did you come across this issue, if so, were you able to resolve
this? Please let me know.
 
Also in Google I/O 2010, Next Gen Queries [
 http://www.youtube.com/
watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
going to remove this restriction soon. Its been more than 8 months,
but this restriction is in place even now. Makes life very
 difficult.
 
Appreciate if anyone can post an answer if they were able to
circumvent this restriciton.
Thanks a lot.
 
Regards,
Prashanth.
 
--
You received this message because you are subscribed to the Google
   Groups
Google App Engine group.
To post to this group, send email to
 google-appengine@googlegroups.com.
To unsubscribe from this group, send email to
google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
For more options, visit this group at
   http://groups.google.com/group/google-appengine?hl=en.
 
--
Jeff Schwartz
 
--
You received this message because you are subscribed to the Google
 

[google-appengine] Re: Task Queue Rate vs. Bucket Size

2011-02-01 Thread HalcyonDays
Thanks for replying...

So in my example of rate=50/s and bucket-size=5:
When no tasks are in the queue, clearly the bucket fills up and has 5
tokens.
If I add 100 tasks, the first 5 will execute immediately and take all
5 tokens... but now the bucket is empty.

I have specified a rate of 50 tokens to be added to the bucket every
second... but there are two ways that could happen:
1) 50 tokens are deposited every 1 second.
2) 1 token is deposited every 1/50th of a second.

If the first is true, then by using a bucket of size 5, no more than 5
tasks will ever be able to execute in a second because tokens are only
being added 50 at a time to a bucket that can only hold 5 tokens.
If the second is true, 5 will burst initially, but then there will be
a steady stream of 1 task every 50th of a second.

From what you said in your post: the token-adding resolution is the
unit of the rate you set... it sounds like the first is true... which
would mean that the task queue is essentially ALWAYS bursting.  I
guess that's not a huge deal, but means that to truly execute 50 tasks
a second, I have to bump my bucket-size to 50 as well, in which case
the task queue essentially starts 50 simultaneous tasks instead of
staging them across the entire second...  the behavior I would prefer
is the second...

On Feb 1, 1:44 pm, Robert Kluin robert.kl...@gmail.com wrote:
 Hi,
   The rate is like an average upper bound;  in other words, the
 token-adding resolution is the unit of the rate you set.  And, it is
 'bursty,' so if you set a rate of 50/M you might very well have 50
 tasks execute in the first second then the queue will not execute any
 tasks for about 59 seconds.  Setting a higher bucket_size will let the
 queue 'burst' at a higher rate, I usually see that after a queue has
 emptied.

   At least that's how I've seen the task-queue behave.

 Robert



 On Mon, Jan 31, 2011 at 14:57, HalcyonDays jbpap...@gmail.com wrote:
  So I've read through a couple of things about the Task Queue's Token-
  Bucket system, and I've taken a look at the wikipedia article to no
  avail, so forgive me if this question has been answered elsewhere:

  What is the resolution of the clock that deposits tokens into the
  bucket for each queue?  Is its minimum resolution per second?
  i.e.  If I say, I want my rate to be 10/s, are 10 tokens deposited
  into the bucket every second, or is one token added every 10th of a
  second?

  It seems like if the resolution is only per second, the rate is
  limited not only by the user's specification, but also by the bucket
  size...

  For example: If I have a specified rate of 50/s but a bucket size of 5
  and the system deposits 50 tokens into the bucket every second, are
  the additional 45 just thrown away?  Does my rate actually become 5/s?

  I'm specifically using the Java app engine, if there's a difference
  between the Task Queues in Python/Java.

  --
  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 
  athttp://groups.google.com/group/google-appengine?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@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: Inequality Filters on a date and a number

2011-02-01 Thread Stephen Johnson
Oh and you can leave out zero. I assume you don't ship zero items, so
everything has to be greater than zero.

On Tue, Feb 1, 2011 at 1:32 PM, Stephen Johnson onepagewo...@gmail.comwrote:

 This won't entirely get rid of your need to loop, but you can add an
 indexed list property on your entity (let's call it shipped_increments) and
 put certain markers in it to indicate that the entity is greater than a
 certain amount of items shipped in certain increments (the increments would
 depend on your particular case), for example, let's suppose we use an
 increment of 100 and let's say we have an entity where the number of items
 shipped was 237 then you would have a list like: 0, 100, 200. If the number
 of items shipped where 983, then we would have 0, 100, 200, 300, 400, 500,
 600, 700, 800, 900. And if the number of items shipped where 493, we would
 have 0, 100, 200, 300, 400. The choice of increment would be important.
 Then, let's say we want to know all the item names shipped after a date with
 at least 433 items, we would do a query with:

manufactured_date  date and shipped_increments = 400

 Then, you would need to loop through the results and remove the ones that
 are from 400 to 432 because we want the ones = 433.

 Your choice of increments would be important so you don't get to big of
 indexing, but there's always a choice between indexing space and speed.

 Hope this helps and possibly leads you to a reasonable solution,
 Stephen


 On Tue, Feb 1, 2011 at 11:24 AM, Prashanth prashanth.b...@gmail.comwrote:

 Thanks Jeff and Wim for the responses.

 I missed out giving the number of records in the datastore.
 The datastore has ~1 million records and ever increasing.
 The solution which we have now is, get all the records greater than
 the input date [most restrictive] in a query and then loop thru the
 records for records greater than x_items.
 This solution hit performance badly. Hence looking for an alternative
 solution.

 Any suggestions please.
 Thanks for reading this.

 On Feb 1, 11:05 pm, Jeff Schwartz jefftschwa...@gmail.com wrote:
  If you intend to make multiple calls passing the cursor back and forth
  between client and server then that would work but if you intend to do
 it
  all in one request then I think the poster of the original question
 would
  need to define how much data they were talking about which brings me
 back to
  what I suggested earlier which is: if you are talking about merely
 trivial
  amounts of data then it would work but if he is talking about anything
 more
  than merely trivial amounts of data then it wont work and another
 approach
  would be needed.
 
  Jeff
 
   I'd prefer a neater package: begin a task that kicks of multiple
 queries to
  retrieve all the results - the tasks can use a cursor. When the tasks
 have
  completed their work
 
  On Tue, Feb 1, 2011 at 12:28 PM, Wim den Ouden wdenou...@gmail.com
 wrote:
 
 
 
 
 
 
 
 
 
   no, no, first the query on is item_names and more than x_items,
   then a loop on the result from this query (for items in resultquery:)
   if some_input_date  date: append to list
   when ready show list
 
   you can play with fetch(..) to get optimum speed and cpu usage.
   ofcourse not a top solution, but it works till??
   gr
   wim
 
   2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
This would require 2 inequality filters so no luck.
 
On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com
 
   wrote:
 
Hi,
 
Am trying to query my Google App Engine datastore [Python], which
 has
a item_name, manufacturing_date and number_of_items_shipped.
The scenario:
Get all the item_names which has been shipped more than x_items
 [user
input] and manufactured after some_input_date [user input].
Basically, kind of inventory check.
 
But due to restrictions on queries in GAE, am not able to do this.
 
  http://code.google.com/appengine/docs/python/datastore/queries.html#R.
 ..
 
I tried searching on the internet for this issue. But, no luck till
now. Did you come across this issue, if so, were you able to
 resolve
this? Please let me know.
 
Also in Google I/O 2010, Next Gen Queries [
 http://www.youtube.com/
watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
going to remove this restriction soon. Its been more than 8 months,
but this restriction is in place even now. Makes life very
 difficult.
 
Appreciate if anyone can post an answer if they were able to
circumvent this restriciton.
Thanks a lot.
 
Regards,
Prashanth.
 
--
You received this message because you are subscribed to the Google
   Groups
Google App Engine group.
To post to this group, send email to
 google-appengine@googlegroups.com.
To unsubscribe from this group, send email to
google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
 

[google-appengine] How to configure a entity field to be unique?

2011-02-01 Thread dudu
I have configured:

   @Column(unique = true, nullable= false , name=email)
private String email;

But the error occurred:
   java.lang.UnsupportedOperationException: No support for uniqueness 
constraints

What I need to do in AppEngine to this field be unique? I need a way that I 
can use the exported jar in any JPA implementation. Is it possible?

-- 
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.



Re: [google-appengine] Re: Inequality Filters on a date and a number

2011-02-01 Thread Robert Kluin
Hi Prashanth,
  Add an additional property you can do an equality filter on, such as
'has_at_least_10_items.'  If 'x' is a known amount that will solve
your issue by itself, if 'x' is a variable amount you might want to
use several 'bins' so that you can easily eliminate chucks of data in
the query then do the remaining processing in your app code.


Robert






On Tue, Feb 1, 2011 at 13:24, Prashanth prashanth.b...@gmail.com wrote:
 Thanks Jeff and Wim for the responses.

 I missed out giving the number of records in the datastore.
 The datastore has ~1 million records and ever increasing.
 The solution which we have now is, get all the records greater than
 the input date [most restrictive] in a query and then loop thru the
 records for records greater than x_items.
 This solution hit performance badly. Hence looking for an alternative
 solution.

 Any suggestions please.
 Thanks for reading this.

 On Feb 1, 11:05 pm, Jeff Schwartz jefftschwa...@gmail.com wrote:
 If you intend to make multiple calls passing the cursor back and forth
 between client and server then that would work but if you intend to do it
 all in one request then I think the poster of the original question would
 need to define how much data they were talking about which brings me back to
 what I suggested earlier which is: if you are talking about merely trivial
 amounts of data then it would work but if he is talking about anything more
 than merely trivial amounts of data then it wont work and another approach
 would be needed.

 Jeff

  I'd prefer a neater package: begin a task that kicks of multiple queries to
 retrieve all the results - the tasks can use a cursor. When the tasks have
 completed their work

 On Tue, Feb 1, 2011 at 12:28 PM, Wim den Ouden wdenou...@gmail.com wrote:









  no, no, first the query on is item_names and more than x_items,
  then a loop on the result from this query (for items in resultquery:)
  if some_input_date  date: append to list
  when ready show list

  you can play with fetch(..) to get optimum speed and cpu usage.
  ofcourse not a top solution, but it works till??
  gr
  wim

  2011/2/1 Jeff Schwartz jefftschwa...@gmail.com:
   This would require 2 inequality filters so no luck.

   On Tue, Feb 1, 2011 at 7:17 AM, Prashanth prashanth.b...@gmail.com
  wrote:

   Hi,

   Am trying to query my Google App Engine datastore [Python], which has
   a item_name, manufacturing_date and number_of_items_shipped.
   The scenario:
   Get all the item_names which has been shipped more than x_items [user
   input] and manufactured after some_input_date [user input].
   Basically, kind of inventory check.

   But due to restrictions on queries in GAE, am not able to do this.

 http://code.google.com/appengine/docs/python/datastore/queries.html#R...

   I tried searching on the internet for this issue. But, no luck till
   now. Did you come across this issue, if so, were you able to resolve
   this? Please let me know.

   Also in Google I/O 2010, Next Gen Queries [http://www.youtube.com/
   watch?v=ofhEyDBpngM#t=3m17s], Alfred Fuller mentioned that they are
   going to remove this restriction soon. Its been more than 8 months,
   but this restriction is in place even now. Makes life very difficult.

   Appreciate if anyone can post an answer if they were able to
   circumvent this restriciton.
   Thanks a lot.

   Regards,
   Prashanth.

   --
   You received this message because you are subscribed to the Google
  Groups
   Google App Engine group.
   To post to this group, send email to google-appengine@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
e...@googlegroups.com
  .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.

   --
   Jeff Schwartz

   --
   You received this message because you are subscribed to the Google Groups
   Google App Engine group.
   To post to this group, send email to google-appengine@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
e...@googlegroups.com
  .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.

  --
  gr
  Wim den Ouden
  Custom applications,https://e-comm.appspot.com/
  Free open source E-commerce/E-bookkeeping/E-business framework (web)
  apps,http://code.google.com/p/relat/
  Gae developer tips,http://code.google.com/p/relat/wiki/gaetips

  --
  You received this message because you are subscribed to the Google Groups
  Google App Engine group.
  To post to this group, send email to google-appengine@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
   e...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.

 

Re: [google-appengine] Re: Task Queue Rate vs. Bucket Size

2011-02-01 Thread Greg Darke
Hi HalcyonDays,

In this case the system will add another token every 1/50th of a second.

Note that the taskqueue system may batch up requests so that even
though you will receive a new token every 1/50th of a second it may
burst 2-3 (well, actually up to 5) tasks at a time.

On 2 February 2011 07:35, HalcyonDays jbpap...@gmail.com wrote:
 Thanks for replying...

 So in my example of rate=50/s and bucket-size=5:
 When no tasks are in the queue, clearly the bucket fills up and has 5
 tokens.
 If I add 100 tasks, the first 5 will execute immediately and take all
 5 tokens... but now the bucket is empty.

 I have specified a rate of 50 tokens to be added to the bucket every
 second... but there are two ways that could happen:
 1) 50 tokens are deposited every 1 second.
 2) 1 token is deposited every 1/50th of a second.

 If the first is true, then by using a bucket of size 5, no more than 5
 tasks will ever be able to execute in a second because tokens are only
 being added 50 at a time to a bucket that can only hold 5 tokens.
 If the second is true, 5 will burst initially, but then there will be
 a steady stream of 1 task every 50th of a second.

 From what you said in your post: the token-adding resolution is the
 unit of the rate you set... it sounds like the first is true... which
 would mean that the task queue is essentially ALWAYS bursting.  I
 guess that's not a huge deal, but means that to truly execute 50 tasks
 a second, I have to bump my bucket-size to 50 as well, in which case
 the task queue essentially starts 50 simultaneous tasks instead of
 staging them across the entire second...  the behavior I would prefer
 is the second...

 On Feb 1, 1:44 pm, Robert Kluin robert.kl...@gmail.com wrote:
 Hi,
   The rate is like an average upper bound;  in other words, the
 token-adding resolution is the unit of the rate you set.  And, it is
 'bursty,' so if you set a rate of 50/M you might very well have 50
 tasks execute in the first second then the queue will not execute any
 tasks for about 59 seconds.  Setting a higher bucket_size will let the
 queue 'burst' at a higher rate, I usually see that after a queue has
 emptied.

   At least that's how I've seen the task-queue behave.

 Robert



 On Mon, Jan 31, 2011 at 14:57, HalcyonDays jbpap...@gmail.com wrote:
  So I've read through a couple of things about the Task Queue's Token-
  Bucket system, and I've taken a look at the wikipedia article to no
  avail, so forgive me if this question has been answered elsewhere:

  What is the resolution of the clock that deposits tokens into the
  bucket for each queue?  Is its minimum resolution per second?
  i.e.  If I say, I want my rate to be 10/s, are 10 tokens deposited
  into the bucket every second, or is one token added every 10th of a
  second?

  It seems like if the resolution is only per second, the rate is
  limited not only by the user's specification, but also by the bucket
  size...

  For example: If I have a specified rate of 50/s but a bucket size of 5
  and the system deposits 50 tokens into the bucket every second, are
  the additional 45 just thrown away?  Does my rate actually become 5/s?

  I'm specifically using the Java app engine, if there's a difference
  between the Task Queues in Python/Java.

  --
  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 
  athttp://groups.google.com/group/google-appengine?hl=en.

 --
 You received this message because you are subscribed to the Google Groups 
 Google App Engine group.
 To post to this group, send email to google-appengine@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.





-- 
Greg Darke

-- 
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: Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Sandeep Arneja
I am in favor of google auth for all the reasons you mentioned. It
makes things easier, more reliable and cheaper for me. My only concern
is that most of my new users feel skeptical at first glance when
providing their google credentials during the sign up process. During
my demos 90% of my users have said I hope u won't steal my google
password. Now both you and I know that google doesn't share the users
private data let alone the password. The log in page even tells that
to all users but this is not apparent and is not the users first
impression. Google analytics shows me that this is huring my sign ups.
I am considering removing google auth but would like everyones input
before I do so.

Thanks
Sandeep

On Feb 1, 9:08 am, Jeff Schwartz jefftschwa...@gmail.com wrote:
 Hi all,

 I hope you don't mind me cross posting this to both the gwt and app engine
 groups since I'd really like to get the opinions of users on both platforms.

 I'm in the middle of developing a gwt application on app engine. The
 application's security requirements are that non members, meaning those that
 haven't registered, are restricted to viewing only the application's public
 'page'.

 What I developed for authentication is home grown using my own login form,
 client side cookies and a User entity with password and email address stored
 in the application's data store. While my home grown implementation works
 perfectly I am not comfortable with the security implications of cookies and
 passing raw passwords to the server to authenticate my users. I also can not
 use SSL at this time as financial constraints unfortunately prohibit any
 expenditures on this project.

 As I place my users' privacy and security above all else I am therefore
 looking to implement a better solution; one that would if possible eliminate
 my responsibility altogether of having to store cookies and passwords and
 transport them via HTTP when authenticating.

 One alternative that I am currently considering is using Google Accounts to
 authenticate my users along with my own User entity that would store the
 additional information users must provide when registering to use the
 services of my application. My User entity (not to be confused with the User
 object provided by the User API) would store the user's Google Account ID
 and would provide the ability to determine if a user is registered simply by
 querying for their Google Accounts ID in my datastore. It would eliminate
 having to store client side cookies and sending raw passwords to the server.
 So far it seems like a win-win proposition as it appears to satisfy all my
 use cases.

 For those who already use Google Accounts for user authentication are you
 happy with the service? How about the services' availability track record
 and does it provide the security you had hoped it would?

 For those using Google Accounts along with GWT have you found any specific
 issues related to using it with GWT (I am using RPC BTW) that you can
 relate?

 I am looking forward to reading your feedback and responses and thanks in
 advance.

 Jeff

 --
 *Jeff Schwartz*

-- 
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: Powered by Google Technologies

2011-02-01 Thread Michael Weinberg
@Doug - thanks for the positive feedback

@Kayode - sounds like an ultimatum - I either make my team available
for you or you are going to imitate it? Sounds like a nice approach to
doing business :) If you are really interested in the project, email
me privately.

-- 
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.



Re: [google-appengine] Re: Considering using Google Accounts for authentication. Good idea?

2011-02-01 Thread Jeff Schwartz
Hi Sandeep,

I would have thought that by using Google Accounts to authenticate users it
would eliminate the need for having a login page altogether. If the user
isn't logged in then just let the User api forward them to Google's login
page and redirect them back to your site once they've logged in. Am I right
or am I missing something here?

Jeff

On Tue, Feb 1, 2011 at 4:51 PM, Sandeep Arneja sandee...@gmail.com wrote:

 I am in favor of google auth for all the reasons you mentioned. It
 makes things easier, more reliable and cheaper for me. My only concern
 is that most of my new users feel skeptical at first glance when
 providing their google credentials during the sign up process. During
 my demos 90% of my users have said I hope u won't steal my google
 password. Now both you and I know that google doesn't share the users
 private data let alone the password. The log in page even tells that
 to all users but this is not apparent and is not the users first
 impression. Google analytics shows me that this is huring my sign ups.
 I am considering removing google auth but would like everyones input
 before I do so.

 Thanks
 Sandeep

 On Feb 1, 9:08 am, Jeff Schwartz jefftschwa...@gmail.com wrote:
  Hi all,
 
  I hope you don't mind me cross posting this to both the gwt and app
 engine
  groups since I'd really like to get the opinions of users on both
 platforms.
 
  I'm in the middle of developing a gwt application on app engine. The
  application's security requirements are that non members, meaning those
 that
  haven't registered, are restricted to viewing only the application's
 public
  'page'.
 
  What I developed for authentication is home grown using my own login
 form,
  client side cookies and a User entity with password and email address
 stored
  in the application's data store. While my home grown implementation works
  perfectly I am not comfortable with the security implications of cookies
 and
  passing raw passwords to the server to authenticate my users. I also can
 not
  use SSL at this time as financial constraints unfortunately prohibit any
  expenditures on this project.
 
  As I place my users' privacy and security above all else I am therefore
  looking to implement a better solution; one that would if possible
 eliminate
  my responsibility altogether of having to store cookies and passwords and
  transport them via HTTP when authenticating.
 
  One alternative that I am currently considering is using Google Accounts
 to
  authenticate my users along with my own User entity that would store the
  additional information users must provide when registering to use the
  services of my application. My User entity (not to be confused with the
 User
  object provided by the User API) would store the user's Google Account ID
  and would provide the ability to determine if a user is registered simply
 by
  querying for their Google Accounts ID in my datastore. It would eliminate
  having to store client side cookies and sending raw passwords to the
 server.
  So far it seems like a win-win proposition as it appears to satisfy all
 my
  use cases.
 
  For those who already use Google Accounts for user authentication are you
  happy with the service? How about the services' availability track record
  and does it provide the security you had hoped it would?
 
  For those using Google Accounts along with GWT have you found any
 specific
  issues related to using it with GWT (I am using RPC BTW) that you can
  relate?
 
  I am looking forward to reading your feedback and responses and thanks in
  advance.
 
  Jeff
 
  --
  *Jeff Schwartz*

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
*Jeff Schwartz*

-- 
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: Task Queue Rate vs. Bucket Size

2011-02-01 Thread HalcyonDays
Thank you, Greg!  This is excellent news.

On Feb 1, 4:29 pm, Greg Darke da...@google.com wrote:
 Hi HalcyonDays,

 In this case the system will add another token every 1/50th of a second.

 Note that the taskqueue system may batch up requests so that even
 though you will receive a new token every 1/50th of a second it may
 burst 2-3 (well, actually up to 5) tasks at a time.

 On 2 February 2011 07:35, HalcyonDays jbpap...@gmail.com wrote:





  Thanks for replying...

  So in my example of rate=50/s and bucket-size=5:
  When no tasks are in the queue, clearly the bucket fills up and has 5
  tokens.
  If I add 100 tasks, the first 5 will execute immediately and take all
  5 tokens... but now the bucket is empty.

  I have specified a rate of 50 tokens to be added to the bucket every
  second... but there are two ways that could happen:
  1) 50 tokens are deposited every 1 second.
  2) 1 token is deposited every 1/50th of a second.

  If the first is true, then by using a bucket of size 5, no more than 5
  tasks will ever be able to execute in a second because tokens are only
  being added 50 at a time to a bucket that can only hold 5 tokens.
  If the second is true, 5 will burst initially, but then there will be
  a steady stream of 1 task every 50th of a second.

  From what you said in your post: the token-adding resolution is the
  unit of the rate you set... it sounds like the first is true... which
  would mean that the task queue is essentially ALWAYS bursting.  I
  guess that's not a huge deal, but means that to truly execute 50 tasks
  a second, I have to bump my bucket-size to 50 as well, in which case
  the task queue essentially starts 50 simultaneous tasks instead of
  staging them across the entire second...  the behavior I would prefer
  is the second...

  On Feb 1, 1:44 pm, Robert Kluin robert.kl...@gmail.com wrote:
  Hi,
    The rate is like an average upper bound;  in other words, the
  token-adding resolution is the unit of the rate you set.  And, it is
  'bursty,' so if you set a rate of 50/M you might very well have 50
  tasks execute in the first second then the queue will not execute any
  tasks for about 59 seconds.  Setting a higher bucket_size will let the
  queue 'burst' at a higher rate, I usually see that after a queue has
  emptied.

    At least that's how I've seen the task-queue behave.

  Robert

  On Mon, Jan 31, 2011 at 14:57, HalcyonDays jbpap...@gmail.com wrote:
   So I've read through a couple of things about the Task Queue's Token-
   Bucket system, and I've taken a look at the wikipedia article to no
   avail, so forgive me if this question has been answered elsewhere:

   What is the resolution of the clock that deposits tokens into the
   bucket for each queue?  Is its minimum resolution per second?
   i.e.  If I say, I want my rate to be 10/s, are 10 tokens deposited
   into the bucket every second, or is one token added every 10th of a
   second?

   It seems like if the resolution is only per second, the rate is
   limited not only by the user's specification, but also by the bucket
   size...

   For example: If I have a specified rate of 50/s but a bucket size of 5
   and the system deposits 50 tokens into the bucket every second, are
   the additional 45 just thrown away?  Does my rate actually become 5/s?

   I'm specifically using the Java app engine, if there's a difference
   between the Task Queues in Python/Java.

   --
   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 
   athttp://groups.google.com/group/google-appengine?hl=en.

  --
  You received this message because you are subscribed to the Google Groups 
  Google App Engine group.
  To post to this group, send email to google-appengine@googlegroups.com.
  To unsubscribe from this group, send email to 
  google-appengine+unsubscr...@googlegroups.com.
  For more options, visit this group 
  athttp://groups.google.com/group/google-appengine?hl=en.

 --
 Greg Darke

-- 
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.



Re: [google-appengine] Your experience with the High Replication Datastore

2011-02-01 Thread Ikai Lan (Google)
Yes, we are looking at different ways of providing even more powerful
migration tools. How much data are you looking to migrate?

--
Ikai Lan
Developer Programs Engineer, Google App Engine
Blogger: http://googleappengine.blogspot.com
Reddit: http://www.reddit.com/r/appengine
Twitter: http://twitter.com/app_engine



On Tue, Feb 1, 2011 at 5:22 AM, Jeff Schwartz jefftschwa...@gmail.comwrote:

 Hi Ikai,

 Considering your recommendation is there any progress in providing an
 easier migration path for existing applications?

 On Mon, Jan 31, 2011 at 5:51 PM, Ikai Lan (Google) 
 ikai.l+gro...@google.com ikai.l%2bgro...@google.com wrote:

 I'm going to let someone else answer this question, but we are
 recommending that all new applications use High Replication datastore.
 Datastore latency spikes are virtually non-existent if your application uses
 HR instead of master-slave.

 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 Blogger: http://googleappengine.blogspot.com
 Reddit: http://www.reddit.com/r/appengine
 Twitter: http://twitter.com/app_engine



 On Sat, Jan 29, 2011 at 10:25 PM, Natalie 
 nataliegladstone...@gmail.comwrote:

 Hello,

 We are at the planning phase on a new App Engine project, and we are
 unsure about the choice of Master/Slave and High Replication.

 About our site:
 The site is expected to get a lot of hit (Around 50-200 QPS.).
 Around 20% write and 80% read.
 Minimal outrage a must. Will lose a lot of clients if outrages are too
 frequent.

 We would love to hear from fellow App Engine developers of their
 experiences with HR.

 In particular we want to know:
 1)  Recently the M/S datastore has very high latency for query. How’s
 your experience in HR?
 2)  What’s your approximate of the HR datastore availability? Is it
 close to 99.9%?
 3)  How is the read/write performance of HR datastore? Would love it
 if
 you could share some statistics.
 4)  How much does the cross datacenter synchronization issue affect
 the
 performance of your site? Please see this link about the issue:

 http://groups.google.com/group/google-appengine/browse_thread/thread/5fc3b6a4366de62f/4b4d23e924b7b136

 It would be great if you could share your experience with us and other
 App Engine developers.

 Thank you very much.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@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-appengine@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.




 --
 *Jeff Schwartz*

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@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: Where can I find commercial successfully websites created using GAE?

2011-02-01 Thread Iron Mountain Foundry
I have built a set of websites on GAE.  ePaymentExpress.net is the
home site, with links to eTicketExpress.com , eRegisterExpress.com
and eFundraiserExpress.com .  They all use Python/Django and Google
Checkout for online payments.  We are currently running two school
plays with assigned seating (choose your seats from the seating
chart), a swim challenge (record your distance every day this month)
and an online auction (make bids on products, like eBay).  We are
ready to scale up and run hundreds of events simultaneously.


On Jan 22, 3:35 pm, Ricardo1980 ricardo_ruiz_lo...@yahoo.es wrote:
 Hello all!

 Where can I find commercial successfully websites created using GAE?
 Is there any list available?
 Here I can see open source 
 projects:http://groups.google.com/group/google-appengine/web/google-app-engine...
 But where commercial projects?

 Thanks a lot for your help.

-- 
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.



Re: [google-appengine] how to contact help? can't get to dashboard

2011-02-01 Thread CodeRedSportsAdmin
Thanks that gets me in.

-- 
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: remote api and deferred handler mapping in yaml file

2011-02-01 Thread Tim Hoffman
Hi

You may need it.

I have my own handler for deferred's as I need sys.path manipulated and a 
number of imports performed
for deferred.  If you need this sort of thing then you will.

Rgds

T

-- 
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] --clear_datastore

2011-02-01 Thread jay
Hey Guys,

This morning I'm trying to clear my local datastore and receiving the
following error.

Could not read datastore data from c:\users\jay\appdata\local\temp
\dev_appserver.datastore

There is indeed no datastore at that location. Can anybody let me know
where the datastore might be so I can delete it.

Jay.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-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] Migration to High Replication, lost access to keys.

2011-02-01 Thread Albert
Hi!

I just migrated to the High Replication datastore.

Some of my entities contain stringified keys of other entities.

For example:

Entity(db.Model):
owner = db.StringProperty() # the str(Key) of the owner.


Owner(db.Model):
name = db.StringProperty()

Now that I've migrated to the high-replication datastore, all the
stringified keys in the Entity Model contain bad keys because the
Owner Entities have new keys now.

2 questions:

1. Would this have been prevented by using db.ReferenceProperty()
instead?
2. How can I resolve this issue? I need to update all entities to
contain the new keys instead.

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-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: --clear_datastore

2011-02-01 Thread Tim Hoffman
Wouldn't have a clue where yours ended up, but
you can always define  a specific datastore path --datastore_path=PATH , 
then you will always know where it is.

I believe you can specify it in the launcher somewhere if you use that.

Rgds

T




-- 
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.



Re: [google-appengine] Re: Task Queue Rate vs. Bucket Size

2011-02-01 Thread Robert Kluin
Hi Greg,
  When I set a rate of say 30/M, I basically always see all of my
tasks run in the first second or two then the queue sits empty for a
minute, then 30 run, etc  So are you saying if I adjusted the
bucket size down to, say, 1, then they would at least trickle out over
30 seconds?



Robert





On Tue, Feb 1, 2011 at 16:29, Greg Darke da...@google.com wrote:
 Hi HalcyonDays,

 In this case the system will add another token every 1/50th of a second.

 Note that the taskqueue system may batch up requests so that even
 though you will receive a new token every 1/50th of a second it may
 burst 2-3 (well, actually up to 5) tasks at a time.

 On 2 February 2011 07:35, HalcyonDays jbpap...@gmail.com wrote:
 Thanks for replying...

 So in my example of rate=50/s and bucket-size=5:
 When no tasks are in the queue, clearly the bucket fills up and has 5
 tokens.
 If I add 100 tasks, the first 5 will execute immediately and take all
 5 tokens... but now the bucket is empty.

 I have specified a rate of 50 tokens to be added to the bucket every
 second... but there are two ways that could happen:
 1) 50 tokens are deposited every 1 second.
 2) 1 token is deposited every 1/50th of a second.

 If the first is true, then by using a bucket of size 5, no more than 5
 tasks will ever be able to execute in a second because tokens are only
 being added 50 at a time to a bucket that can only hold 5 tokens.
 If the second is true, 5 will burst initially, but then there will be
 a steady stream of 1 task every 50th of a second.

 From what you said in your post: the token-adding resolution is the
 unit of the rate you set... it sounds like the first is true... which
 would mean that the task queue is essentially ALWAYS bursting.  I
 guess that's not a huge deal, but means that to truly execute 50 tasks
 a second, I have to bump my bucket-size to 50 as well, in which case
 the task queue essentially starts 50 simultaneous tasks instead of
 staging them across the entire second...  the behavior I would prefer
 is the second...

 On Feb 1, 1:44 pm, Robert Kluin robert.kl...@gmail.com wrote:
 Hi,
   The rate is like an average upper bound;  in other words, the
 token-adding resolution is the unit of the rate you set.  And, it is
 'bursty,' so if you set a rate of 50/M you might very well have 50
 tasks execute in the first second then the queue will not execute any
 tasks for about 59 seconds.  Setting a higher bucket_size will let the
 queue 'burst' at a higher rate, I usually see that after a queue has
 emptied.

   At least that's how I've seen the task-queue behave.

 Robert



 On Mon, Jan 31, 2011 at 14:57, HalcyonDays jbpap...@gmail.com wrote:
  So I've read through a couple of things about the Task Queue's Token-
  Bucket system, and I've taken a look at the wikipedia article to no
  avail, so forgive me if this question has been answered elsewhere:

  What is the resolution of the clock that deposits tokens into the
  bucket for each queue?  Is its minimum resolution per second?
  i.e.  If I say, I want my rate to be 10/s, are 10 tokens deposited
  into the bucket every second, or is one token added every 10th of a
  second?

  It seems like if the resolution is only per second, the rate is
  limited not only by the user's specification, but also by the bucket
  size...

  For example: If I have a specified rate of 50/s but a bucket size of 5
  and the system deposits 50 tokens into the bucket every second, are
  the additional 45 just thrown away?  Does my rate actually become 5/s?

  I'm specifically using the Java app engine, if there's a difference
  between the Task Queues in Python/Java.

  --
  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 
  athttp://groups.google.com/group/google-appengine?hl=en.

 --
 You received this message because you are subscribed to the Google Groups 
 Google App Engine group.
 To post to this group, send email to google-appengine@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.





 --
 Greg Darke

 --
 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.



-- 
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 

[google-appengine] Signing jar files from the app

2011-02-01 Thread devGS
Is it possible to sign a .jar file within GAEJ? If not, such future
will be very useful and welcomed.
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-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] High Replication - How to download data via remote_api

2011-02-01 Thread Albert
Hi!

I'm performing this command. (I replaced my real app id with app-id)

appcfg.py download_data --filename=download.dat --url=http://app-
id.appspot.com/remote_api

I'm getting this error.

google.appengine.api.datastore_errors.BadRequestError: app s~app-id
cannot
 access app app-id's data

What's with the s~ in s~app-id?

How do I download data? I just want to perform a backup.

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-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.



Re: [google-appengine] Migration to High Replication, lost access to keys.

2011-02-01 Thread Nick Johnson (Google)
Hi Albert,

On Wed, Feb 2, 2011 at 12:44 PM, Albert albertpa...@gmail.com wrote:

 Hi!

 I just migrated to the High Replication datastore.

 Some of my entities contain stringified keys of other entities.

 For example:

 Entity(db.Model):
 owner = db.StringProperty() # the str(Key) of the owner.


 Owner(db.Model):
 name = db.StringProperty()

 Now that I've migrated to the high-replication datastore, all the
 stringified keys in the Entity Model contain bad keys because the
 Owner Entities have new keys now.


The migration tool rewrites the App ID of keys, but only if they're stored
as keys (or reference properties). This is one reason why you shouldn't
store stringified keys in the datastore!


 2 questions:

 1. Would this have been prevented by using db.ReferenceProperty()
 instead?


Yes.


 2. How can I resolve this issue? I need to update all entities to
 contain the new keys instead.


You should probably use the mapreduce library. For your mapper function,
deserialize the key, and construct a new one with the correct App ID (you
can simply use db.Key.from_path to do this, as it will fill in the App ID
for you) then store it again. You might want to move to using
ReferenceProperties when you do this.

-Nick Johnson


 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-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Nick Johnson, Developer Programs Engineer, App Engine
Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number:
368047

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-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: Problems when downloading data from the app

2011-02-01 Thread antichrist
I have similar problem, but slight different error message.

[ERROR2011-02-02 14:40:50,286 adaptive_thread_pool.py] Error in
Thread-1: urlopen error (10014, 'Bad address')
[DEBUG2011-02-02 14:40:50,301 adaptive_thread_pool.py] Traceback
(most recent call last):
  File C:\Documents and Settings\Administrator\My Documents
\pointmarket\google_appengine\google\appengine\tools\bulkloader.py,
line 693, in PerformWork
transfer_time = self._TransferItem(thread_pool)
  File C:\Documents and Settings\Administrator\My Documents
\pointmarket\google_appengine\google\appengine\tools\bulkloader.py,
line 1081, in _TransferItem
self, retry_parallel=self.first)
  File C:\Documents and Settings\Administrator\My Documents
\pointmarket\google_appengine\google\appengine\tools\bulkloader.py,
line 1358, in GetEntities
results = self._QueryForPbs(query)
  File C:\Documents and Settings\Administrator\My Documents
\pointmarket\google_appengine\google\appengine\tools\bulkloader.py,
line 1308, in _QueryForPbs
result_pb)
  File D:\Program Files\Google\google_appengine\google\appengine\api
\apiproxy_stub_map.py, line 78, in MakeSyncCall
return apiproxy.MakeSyncCall(service, call, request, response)
  File D:\Program Files\Google\google_appengine\google\appengine\api
\apiproxy_stub_map.py, line 278, in MakeSyncCall
rpc.CheckSuccess()
  File D:\Program Files\Google\google_appengine\google\appengine\api
\apiproxy_rpc.py, line 149, in _WaitImpl
self.request, self.response)
  File D:\Program Files\Google\google_appengine\google\appengine\ext
\remote_api\remote_api_stub.py, line 223, in MakeSyncCall
handler(request, response)
  File D:\Program Files\Google\google_appengine\google\appengine\ext
\remote_api\remote_api_stub.py, line 232, in _Dynamic_RunQuery
'datastore_v3', 'RunQuery', query, query_result)
  File D:\Program Files\Google\google_appengine\google\appengine\ext
\remote_api\remote_api_stub.py, line 155, in MakeSyncCall
self._MakeRealSyncCall(service, call, request, response)
  File D:\Program Files\Google\google_appengine\google\appengine\ext
\remote_api\remote_api_stub.py, line 167, in _MakeRealSyncCall
encoded_response = self._server.Send(self._path, encoded_request)
  File D:\Program Files\Google\google_appengine\google\appengine\tools
\appengine_rpc.py, line 346, in Send
f = self.opener.open(req)
  File D:\Python25\lib\urllib2.py, line 381, in open
response = self._open(req, data)
  File D:\Python25\lib\urllib2.py, line 399, in _open
'_open', req)
  File D:\Python25\lib\urllib2.py, line 360, in _call_chain
result = func(*args)
  File D:\Python25\lib\urllib2.py, line 1107, in http_open
return self.do_open(httplib.HTTPConnection, req)
  File D:\Python25\lib\urllib2.py, line 1082, in do_open
raise URLError(err)
URLError: urlopen error (10014, 'Bad address')

[DEBUG2011-02-02 14:40:50,301 bulkloader.py] Waiting for
progress_thread to terminate...
[DEBUG2011-02-02 14:40:50,316 bulkloader.py] [Thread-11]
ExportProgressThread: exiting
[DEBUG2011-02-02 14:40:50,316 bulkloader.py] ... done.
[INFO 2011-02-02 14:40:50,332 bulkloader.py] Have 892 entities, 0
previously transferred
[INFO 2011-02-02 14:40:50,332 bulkloader.py] 892 entities (5134783
bytes) transferred in 63.6 seconds

---

This URLError: urlopen error (10014, 'Bad address') error occur
every time I try to download data after some time.

Has anyone know about this problem?




On 1월24일, 오후5시23분, Ricardo Bánffy rban...@gmail.com wrote:
 in case it affects anyone else, one line fixes it:

 Index: google/appengine/tools/bulkloader.py
 ===
 --- google/appengine/tools/bulkloader.py        (revision 142)
 +++ google/appengine/tools/bulkloader.py        (working copy)
 @@ -698,6 +698,8 @@
                         transfer_time)
            sys.stdout.write('.')
            sys.stdout.flush()
 +          # Since we had at least one successful transfer, we could
 assume DNS errors are transient
 +          non_fatal_error_codes.add(-2)
            status = adaptive_thread_pool.WorkItem.SUCCESS
            if transfer_time = MAXIMUM_INCREASE_DURATION:
              instruction = adaptive_thread_pool.ThreadGate.INCREASE

 BTW, is there a nice constant for this kind of error? Adding a -2 to
 the set seems dirty, to say the least.

 2011/1/22 Ricardo Bánffy rban...@gmail.com:





  Hi.

  I have been, for the past couple days, to download data from the live
  app to my local development copy. Every time, sometimes a couple hours
  and gigabytes into the download, I get a

  .[INFO    ] An error occurred. Shutting down...
  ..[ERROR   ] Error in Thread-8: urlopen error (-2, 'Name or service
  not known')

  [INFO    ] Have 210 entities, 0 previously transferred
  [INFO    ] 210 entities (2145028 bytes) transferred in 54.4 seconds

  message.

  I assume a try/except with a couple 

[google-appengine] Re: Migration to High Replication, lost access to keys.

2011-02-01 Thread Albert
Thank you!

On Feb 2, 1:30 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
 Hi Albert,









 On Wed, Feb 2, 2011 at 12:44 PM, Albert albertpa...@gmail.com wrote:
  Hi!

  I just migrated to the High Replication datastore.

  Some of my entities contain stringified keys of other entities.

  For example:

  Entity(db.Model):
  owner = db.StringProperty() # the str(Key) of the owner.

  Owner(db.Model):
  name = db.StringProperty()

  Now that I've migrated to the high-replication datastore, all the
  stringified keys in the Entity Model contain bad keys because the
  Owner Entities have new keys now.

 The migration tool rewrites the App ID of keys, but only if they're stored
 as keys (or reference properties). This is one reason why you shouldn't
 store stringified keys in the datastore!

  2 questions:

  1. Would this have been prevented by using db.ReferenceProperty()
  instead?

 Yes.

  2. How can I resolve this issue? I need to update all entities to
  contain the new keys instead.

 You should probably use the mapreduce library. For your mapper function,
 deserialize the key, and construct a new one with the correct App ID (you
 can simply use db.Key.from_path to do this, as it will fill in the App ID
 for you) then store it again. You might want to move to using
 ReferenceProperties when you do this.

 -Nick Johnson

  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-appengine@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.

 --
 Nick Johnson, Developer Programs Engineer, App Engine
 Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number:
 368047

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-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: --clear_datastore

2011-02-01 Thread jay
I tried that but it said my new datastore could not be found, and
somehow used my old one anyhow.

On Feb 2, 11:58 am, Tim Hoffman zutes...@gmail.com wrote:
 Wouldn't have a clue where yours ended up, but
 you can always define  a specific datastore path --datastore_path=PATH ,
 then you will always know where it is.

 I believe you can specify it in the launcher somewhere if you use that.

 Rgds

 T

-- 
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: High Replication - How to download data via remote_api

2011-02-01 Thread Calvin
I think you need --application=app-id in your command.  Also you should 
verify that /remote_api is responding on your server.

-- 
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.



Re: [google-appengine] Re: High Replication - How to download data via remote_api

2011-02-01 Thread Nickolas Daskalou
The s~ also plays havoc when trying to add a HR app to a Google Apps
domain.

Try leaving out the s~ and see if that works. It fixes the Google Apps
problem.

Nick


On 2 February 2011 18:30, Calvin calvin.r...@gmail.com wrote:

 I think you need --application=app-id in your command.  Also you should
 verify that /remote_api is responding on your server.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@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.