Re: [google-appengine] Re: Prerelease SDK 1.5.5 available for download!

2011-10-11 Thread Brian Quinlan
On Tue, Oct 11, 2011 at 3:17 PM, Tommy Knowlton
 wrote:
> Well, this n00b just got caught up in _production_ documentation describing
> the Python 2.7 support, and wasted the last half hour trying to create and
> locally test such a project, wondering why the tutorial code wasn't
> working...

Hi Tommy,

Sorry for the bad experience. Were you working through the Python 2.7 tutorial?

Cheers,
Brian

> It wasn't until I hit the appropriate google query matching the errors
> reported by the interpreter, that I found this thread and learned that the
> released (1.5.4) SDK does NOT support Python 2.7. Could never have
> discovered that from the current state of production docs.
> ~ The N00b
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-appengine/-/_EOYT3dai7AJ.
> 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: Prerelease SDK 1.5.5 available for download!

2011-10-11 Thread Brian Quinlan
On Tue, Oct 11, 2011 at 5:24 AM, Kayode Odeyemi  wrote:
> Just echoing Raphael Nunes:
>
> Will Python 2.7 support multi-thread?

Yes.

Cheers,
Brian

> On Mon, Oct 10, 2011 at 7:19 PM, Deepak Singh 
> wrote:
>>
>> Hi,
>> So will it be by default 60 sec for all urlfetch or do we need to
>> explicitly set this deadline parameter ?
>> If yes, then how to set the 60 sec timeout parameter.
>> Thanks
>> Deepak
>>
>> On Mon, Oct 10, 2011 at 10:59 PM, Ikai Lan (Google) 
>> wrote:
>>>
>>> As far as I know you shouldn't have to change SDK versions for the new
>>> deadline to work.
>>> --
>>> Ikai Lan
>>> Developer Programs Engineer, Google App Engine
>>> plus.ikailan.com | twitter.com/ikai
>>>
>>>
>>> On Wed, Oct 5, 2011 at 6:21 AM, Mathieu Clavel 
>>> wrote:

 Hi,

 For Java, "We have increased the URLFetch maximum deadline from 10
 seconds to 60 seconds."
 Will the new limit be usable from previous sdk version on appengine, or
 must there be a version migration ?

 Regards,

 Mathieu CLAVEL

 --
 You received this message because you are subscribed to the Google
 Groups "Google App Engine" group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/yNIVZlSFcBYJ.
 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.
>>
>> --
>> 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.
>
>
>
> --
> Odeyemi 'Kayode O.
> http://www.sinati.com. t: @charyorde
>
> --
> 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.



[google-appengine] channel disconnect notification

2011-10-11 Thread Hariprasath Mohankumar
Hi,
Im using my GAE application on my phone. I face a problem in 
getting the disconnect notification to /_ah/channel/disconnected in channels 
api even if i manually close the socket by socket.close() function. the post 
occurs after a delay of say one minute. Does anyone know the way to speed 
things up?  In my case socket.close() doesnt produce the channel disconnect 
notification(only ini phone though.. it works perfectly from a laptop)!

Thanks,
Hariprasath

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/cMj6I_TXHSQJ.
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] How to determine datastore reads?

2011-10-11 Thread J

Since GAE has released the comparison billing for the new pricing model, 
I've been trying to "optimize" my app to reduce costs.  I was initially over 
the free quota limits for datastore reads and writes.  I was able to lower 
the datastore writes to fall under the free tier by eliminating certain 
writes and also by eliminating unnecessary indexes on certain properties.

But unfortunately, I can't seem to figure out where the reads are coming 
from.  I initially thought the reads were mostly coming from two cron jobs 
that I have configured:

1) A job that ran every 1 minute to query for and delete "expired" objects 
for 1 of my entities.  
2) A job that ran every 1 minute to clean up old session entities.  I'm 
actually using the com.google.apphosting.utils.servlet.SessionCleanupServlet 
to do this (which I found somewhere online). BTW - is there a better way to 
remove old sessions?

I changed both jobs to run every 60 minutes instead (thinking this would 
make a huge difference) but my datastore reads are still high and not too 
different from previous numbers.

I've also examined my app (not a lot of code) and don't see where I could be 
making so many datastore reads.

Anyone know how I can profile my app to see where datastore reads are coming 
from?  BTW I'm using the Java version of GAE.

Thanks,
J

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/CbY_y7385gYJ.
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: ereporter error under py27

2011-10-11 Thread Anand Mistry
Try using "google.appengine.ext.ereporter.report_generator.application" as 
the script handler.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/U2gw0F-jBWUJ.
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] ereporter error under py27

2011-10-11 Thread Matt Jibson
You cannot use the CGI handlers with concurrent requests. Use WSGI instead:

http://code.google.com/appengine/docs/python/python27/using27.html#Configuring_WSGI_Script_Handlers



On Tue, Oct 11, 2011 at 9:17 PM, J.T  wrote:
> appcfg.py update myapp
>
> Error parsing yaml file:
> Invalid object:
> threadsafe cannot be enabled with CGI handler: $PYTHON_LIB/google/
> appengine/ext/ereporter/report_generator.py
>  in "***\app.yaml", line 320, column 1
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
> To post to this group, send email to google-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.



[google-appengine] ereporter error under py27

2011-10-11 Thread J.T
appcfg.py update myapp

Error parsing yaml file:
Invalid object:
threadsafe cannot be enabled with CGI handler: $PYTHON_LIB/google/
appengine/ext/ereporter/report_generator.py
  in "***\app.yaml", line 320, column 1

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

2011-10-11 Thread Ikai Lan (Google)
Thanks Murph. That explanation was dead-on and I couldn't have written a
better one myself!

You can't just update one "column". You're still thinking in RDBMS mode.
There is no concept of a column, since to update a property, we need to read
the entire entity, deserialize it (it's serialized as protobuf; at its
lowest layer BigTable is a key-value store), change the property,
reserialize the entire entity and write it.

--
Ikai Lan
Developer Programs Engineer, Google App Engine
plus.ikailan.com | twitter.com/ikai



On Tue, Oct 11, 2011 at 2:38 PM, Murph  wrote:

> You can't update just a single property/attribute of an entity unless you
> already know the values for all of the others.  If it's frequently updated,
> careful use of memcache may allow you to avoid the db.get, but otherwise you
> have to read it first.
>
> An alternative, if you just have say 1 property/attribute which changes
> often would be to split the entity into two separate entity models, one with
> the relatively static data, and the other with the frequently changing
> data.  The downside there, of course, is that you're going to have 2 db.get
> operations when you need all of it, instead of 1.
>
> Internally, the datastore is entirely composed of (key, value) pairs, with
> a single (key,value) per entity (not counting indices, metadata, etc), and
> the SDK encodes/decodes those values into your entity models for you.  They
> are actually encoded as protobufs, but there's nothing in the datastore's
> API to modify that data without reading it first.
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-appengine/-/e6JrqffTES4J.
>
> 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] Controlling amazon ec2 instances from appengine

2011-10-11 Thread Ikai Lan (Google)
Emlyn, that comes up quite a bit. We've been exploring ways to allow
developers to do precisely that with encryption keys.

When you mentioned controlling EC2 instances, it reminded me of this:

http://javagoogleappspot.blogspot.com/2010/10/control-your-ec2-instance-with-google.html

--
Ikai Lan
Developer Programs Engineer, Google App Engine
plus.ikailan.com | twitter.com/ikai



On Tue, Oct 11, 2011 at 4:05 PM, Emlyn  wrote:

> I'd love to hear people's experiences with controlling amazon ec2
> instances from appengine. Is anyone doing it? Any hints for best
> practices? I've come across the python library Boto
> (http://code.google.com/p/boto/) for talking to amazon; is that the
> right tool for the job?
>
> Also, and this comes up again and again with AppEngine, what do you do
> when you need to store any kind of private key in AppEngine? Is there
> any better practise than plain text in the datastore, which isn't just
> security by obscurity?
>
> --
> Emlyn
>
> http://my.syyn.cc - Synchonise Google+, Facebook, WordPress and Google
> Buzz posts,
> comments and all.
> http://point7.wordpress.com - My blog
> Find me on Facebook and Buzz
>
> --
> 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: Gurantee log

2011-10-11 Thread Ikai Lan (Google)
I agree with Jan. If you're doing financial transactions, the cost of lost
transactions is generally much, much more expensive than what you'd save not
saving everything in the datastore. Don't try to save money here by using
logs - you'll lose data.

--
Ikai Lan
Developer Programs Engineer, Google App Engine
plus.ikailan.com | twitter.com/ikai



On Tue, Oct 11, 2011 at 5:12 PM, Jan Zawadzki / Hapara <
jan.zawad...@hapara.com> wrote:

> Most people would expect to see a proper database record for any sort
> of financial tracking.  Log files aren't robust enough
>
> On Oct 1, 9:02 am, Timofey Koolin  wrote:
> > I have billing system on GAE.
> > It is thing to have backup of my datastore. Now I have small record count
> > and can read all of it for backup every day. But in future - I need any
> > incremental method of backup my data.
> > I have 3 things:
> > - log operations in logging system and replicate on my server.
> > - log operations in log kind and replicatite on my server (but it add pay
> > for write, read and delete operations for each logical change in
> datastore).
> > - save timestamp field in my entities and log of deleted object.
> >
> > save data small in log - cheap and faster then write it in datastore.
> >
> > 2011/9/29 Jan Zawadzki / Hapara 
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > > This only works if you don't have a lot of traffic.
> >
> > > As Ikai mentioned, these are limited-size FIFO logs, so if you start
> > > hitting any significant traffic, you will find that your INFO logs
> > > hold a minute's worth of data - longer than a transfer would take you.
> >
> > > Write to a DB, OR, use RPC and URL fetch to "ping" an external server
> > > that will store the Apache log files for you.
> >
> > > J
> >
> > > On Sep 28, 10:06 am, rekby  wrote:
> > > > Do log record gurantee for each request - I want write into log
> > > instructions
> > > > for incremental change data and make incremental backup on my
> computer by
> > > > download  and parse log messages instead of analise datastore.
> >
> > > --
> > > 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.
> >
> > --
> > С уважением,
> > Кулин Тимофей.
> >
> > Телефон: +7 (4852) 974793
> > ICQ: 114902104
> > email: timo...@koolin.ru
> > Blog:http://timofey.koolin.ru
>
> --
> 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.



[google-appengine] Re: Gurantee log

2011-10-11 Thread Jan Zawadzki / Hapara
Most people would expect to see a proper database record for any sort
of financial tracking.  Log files aren't robust enough

On Oct 1, 9:02 am, Timofey Koolin  wrote:
> I have billing system on GAE.
> It is thing to have backup of my datastore. Now I have small record count
> and can read all of it for backup every day. But in future - I need any
> incremental method of backup my data.
> I have 3 things:
> - log operations in logging system and replicate on my server.
> - log operations in log kind and replicatite on my server (but it add pay
> for write, read and delete operations for each logical change in datastore).
> - save timestamp field in my entities and log of deleted object.
>
> save data small in log - cheap and faster then write it in datastore.
>
> 2011/9/29 Jan Zawadzki / Hapara 
>
>
>
>
>
>
>
>
>
> > This only works if you don't have a lot of traffic.
>
> > As Ikai mentioned, these are limited-size FIFO logs, so if you start
> > hitting any significant traffic, you will find that your INFO logs
> > hold a minute's worth of data - longer than a transfer would take you.
>
> > Write to a DB, OR, use RPC and URL fetch to "ping" an external server
> > that will store the Apache log files for you.
>
> > J
>
> > On Sep 28, 10:06 am, rekby  wrote:
> > > Do log record gurantee for each request - I want write into log
> > instructions
> > > for incremental change data and make incremental backup on my computer by
> > > download  and parse log messages instead of analise datastore.
>
> > --
> > 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.
>
> --
> С уважением,
> Кулин Тимофей.
>
> Телефон: +7 (4852) 974793
> ICQ: 114902104
> email: timo...@koolin.ru
> Blog:http://timofey.koolin.ru

-- 
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: App Engine SDK 1.5.5 released!

2011-10-11 Thread Will
Is the MS to HR migration tool officially available?

Best,

Will

On Tue, Oct 11, 2011 at 3:52 PM, Johan Euphrosine  wrote:
> Oops, here is a better formatted version:
> Hey everyone,
> Just wanted to let you all know that App Engine SDK 1.5.5 has been
> released. The official announcement is here:
> http://googleappengine.blogspot.com/2011/10/app-engine-155-sdk-release.html
>
> The full release notes are below:
> App Engine Python SDK - Release Notes
>
> Version 1.5.5
> ===
> - Python 2.7 is now available as an experimental runtime for all
> applications
>  using the High Replication Datastore. To upload your app to the Python 2.7
>  runtime, change the runtime argument in your app.yaml to python27.
> - We have increased the number of files you can upload with your application
>  from 3,000 to 10,000.
> - We have increased the size limit for a single file uploaded to App Engine
> from
>  10MB to 32MB.
> - We have increased the Frontend request deadline from 30 seconds to 60
> seconds.
> - We have increased the online URLFetch maximum deadline from 10 seconds to
> 60
>  seconds. The default deadline remains at 10 seconds. The offline
> maximum deadline
>  for URLFetch remains at 10 minutes.
> - We have increased the URLFetch Post payload from 1MB to 5MB.
> - App Engine now supports Cross Group (XG) transactions with the High
>  Replication Datastore, which allow you to perform transactions across
>  multiple entity groups.
>    http://code.google.com/appengine/docs/python/datastore/transactions.html
> - We have released an experimental API that can write to Google Storage for
>  Developers directly from App Engine.
>    http://code.google.com/appengine/docs/python/googlestorage/overview.html
> - We have added a graph to the admin console that displays the number of
>  instances for which you will be billed.
> - In the XMPP API, get_presence() is deprecated in favor of using the
> inbound
>  presence handlers documented in
>  http://code.google.com/appengine/docs/python/xmpp/overview.html#Handling_User_Presence.
> - The Task Queue API 'target' parameter now accepts a new value,
>  taskqueue.DEFAULT_APP_VERSION, which will send the task to the default
>  frontend version, rather than the version or backend where the 'add' method
> is
>  being called.
> - In the URLFetch API, make_fetch_call() now returns an RPC object.
> - Fixed an issue in the Admin Console where the "Run Now" button did not
> work
>  for tasks with a '-' in the name.
> - Fixed an issue where the SDK did not decode Base64 encoded blobs.
> - Fixed an issue to provide a better error message when using the Mail API
> to
>  send email to an invalid user address.
> - Fixed an issue in the SDK where a skip_files entry caused an ImportError
> when
>  the library was located elsewhere in the PYTHONPATH.
> - Fixed an issue in the SDK index viewer where the arrows indicating whether
> a
>  query was ascending or descending were not properly rendered.
> - Fixed an issue where httplib did not support the deadline argument for
>  URLFetch calls.
>    http://code.google.com/p/googleappengine/issues/detail?id=2216
> - Fixed an issue where you could not schedule a cron job to run every 100
>  minutes.
>    http://code.google.com/p/googleappengine/issues/detail?id=5243
> - Fixed an issue in the SDK where failed tasks retried immediately instead
> of
>  waiting for 30 seconds.
>    http://code.google.com/p/googleappengine/issues/detail?id=5587
> - Fixed an issue making it possible to modify request headers using the
> deferred
>  library.
>    http://code.google.com/p/googleappengine/issues/detail?id=5861
>
> App Engine Java SDK - Release Notes
>
> Version 1.5.5
> =
> - We have increased the number of files you can upload with your application
> to
>  from 3,000 to 10,000.
> - We have increased the size limit for a single file uploaded to App Engine
> from
>  10MB to 32MB.
> - We have increased the Frontend request deadline from 30 seconds to 60
> seconds.
> - We have increased the online URLFetch maximum deadline from 10 seconds to
> 60
>  seconds. The default deadline remains at 10 seconds. The offline
> maximum deadline
>  for URLFetch remains at 10 minutes.
> - We have increased the URLFetch Post payload from 1MB to 5MB.
> - App Engine now supports Cross Group (XG) transactions with the High
>  Replication Datastore, which allow you to perform transactions across
> multiple
>  entity groups.
>    http://code.google.com/appengine/docs/java/datastore/transactions.html
> - We have added a graph to the admin console that displays the number of
>  instances for which you will be billed.
> - In the XMPP API, getPresence() is deprecated in favor of using the inbound
>  presence handlers documented in
>  http://code.google.com/appengine/docs/java/xmpp/overview.html#Handling_User_Presence.
> - Fixed an issue in the Admin Console where the "Run Now" button did not
> work
>  for tasks with a '-' in the name.
> - Fixed an iss

[google-appengine] Controlling amazon ec2 instances from appengine

2011-10-11 Thread Emlyn
I'd love to hear people's experiences with controlling amazon ec2
instances from appengine. Is anyone doing it? Any hints for best
practices? I've come across the python library Boto
(http://code.google.com/p/boto/) for talking to amazon; is that the
right tool for the job?

Also, and this comes up again and again with AppEngine, what do you do
when you need to store any kind of private key in AppEngine? Is there
any better practise than plain text in the datastore, which isn't just
security by obscurity?

-- 
Emlyn

http://my.syyn.cc - Synchonise Google+, Facebook, WordPress and Google
Buzz posts,
comments and all.
http://point7.wordpress.com - My blog
Find me on Facebook and Buzz

-- 
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: App Engine SDK 1.5.5 released!

2011-10-11 Thread Johan Euphrosine
Oops, here is a better formatted version:

Hey everyone,
Just wanted to let you all know that App Engine SDK 1.5.5 has been
released. The official announcement is here:
http://googleappengine.blogspot.com/2011/10/app-engine-155-sdk-release.html

The full release notes are below:
App Engine Python SDK - Release Notes

Version 1.5.5
===
- Python 2.7 is now available as an experimental runtime for all
applications
 using the High Replication Datastore. To upload your app to the Python 2.7
 runtime, change the runtime argument in your app.yaml to python27.
- We have increased the number of files you can upload with your application
 from 3,000 to 10,000.
- We have increased the size limit for a single file uploaded to App Engine
from
 10MB to 32MB.
- We have increased the Frontend request deadline from 30 seconds to 60
seconds.
- We have increased the online URLFetch maximum deadline from 10 seconds to
60
 seconds. The default deadline remains at 10 seconds. The offline
maximum deadline
 for URLFetch remains at 10 minutes.
- We have increased the URLFetch Post payload from 1MB to 5MB.
- App Engine now supports Cross Group (XG) transactions with the High
 Replication Datastore, which allow you to perform transactions across
 multiple entity groups.
   http://code.google.com/appengine/docs/python/datastore/transactions.html
- We have released an experimental API that can write to Google Storage for
 Developers directly from App Engine.
   http://code.google.com/appengine/docs/python/googlestorage/overview.html
- We have added a graph to the admin console that displays the number of
 instances for which you will be billed.
- In the XMPP API, get_presence() is deprecated in favor of using the
inbound
 presence handlers documented in

http://code.google.com/appengine/docs/python/xmpp/overview.html#Handling_User_Presence
.
- The Task Queue API 'target' parameter now accepts a new value,
 taskqueue.DEFAULT_APP_VERSION, which will send the task to the default
 frontend version, rather than the version or backend where the 'add' method
is
 being called.
- In the URLFetch API, make_fetch_call() now returns an RPC object.
- Fixed an issue in the Admin Console where the "Run Now" button did not
work
 for tasks with a '-' in the name.
- Fixed an issue where the SDK did not decode Base64 encoded blobs.
- Fixed an issue to provide a better error message when using the Mail API
to
 send email to an invalid user address.
- Fixed an issue in the SDK where a skip_files entry caused an ImportError
when
 the library was located elsewhere in the PYTHONPATH.
- Fixed an issue in the SDK index viewer where the arrows indicating whether
a
 query was ascending or descending were not properly rendered.
- Fixed an issue where httplib did not support the deadline argument for
 URLFetch calls.
   http://code.google.com/p/googleappengine/issues/detail?id=2216
- Fixed an issue where you could not schedule a cron job to run every 100
 minutes.
   http://code.google.com/p/googleappengine/issues/detail?id=5243
- Fixed an issue in the SDK where failed tasks retried immediately instead
of
 waiting for 30 seconds.
   http://code.google.com/p/googleappengine/issues/detail?id=5587
- Fixed an issue making it possible to modify request headers using the
deferred
 library.
   http://code.google.com/p/googleappengine/issues/detail?id=5861

App Engine Java SDK - Release Notes

Version 1.5.5
=
- We have increased the number of files you can upload with your application
to
 from 3,000 to 10,000.
- We have increased the size limit for a single file uploaded to App Engine
from
 10MB to 32MB.
- We have increased the Frontend request deadline from 30 seconds to 60
seconds.
- We have increased the online URLFetch maximum deadline from 10 seconds to
60
 seconds. The default deadline remains at 10 seconds. The offline
maximum deadline
 for URLFetch remains at 10 minutes.
- We have increased the URLFetch Post payload from 1MB to 5MB.
- App Engine now supports Cross Group (XG) transactions with the High
 Replication Datastore, which allow you to perform transactions across
multiple
 entity groups.
   http://code.google.com/appengine/docs/java/datastore/transactions.html
- We have added a graph to the admin console that displays the number of
 instances for which you will be billed.
- In the XMPP API, getPresence() is deprecated in favor of using the inbound
 presence handlers documented in

http://code.google.com/appengine/docs/java/xmpp/overview.html#Handling_User_Presence
.
- Fixed an issue in the Admin Console where the "Run Now" button did not
work
 for tasks with a '-' in the name.
- Fixed an issue to provide a better error message when a user tries to
parse an
 HttpRequest's input stream more than once in a request.
- Fixed an issue to provide a better error message when using the Mail API
to
 send email to an invalid user address.
- Fixed an issue in the SDK where HttpServletRequest.getInputStream().read()
 always retur

[google-appengine] App Engine SDK 1.5.5 released!

2011-10-11 Thread Johan Euphrosine
Hey everyone,
Just wanted to let you all know that App Engine SDK 1.5.5 has been
released. The official announcement is here:
http://googleappengine.blogspot.com/2011/10/app-engine-155-sdk-release.html
The full release notes are below:
App Engine Python SDK - Release Notes
Version 1.5.5===- Python 2.7 is now
available as an experimental runtime for all applications  using the
High Replication Datastore. To upload your app to the Python 2.7
runtime, change the runtime argument in your app.yaml to python27.- We
have increased the number of files you can upload with your
application  from 3,000 to 10,000.- We have increased the size limit
for a single file uploaded to App Engine from  10MB to 32MB.- We have
increased the Frontend request deadline from 30 seconds to 60
seconds.- We have increased the online URLFetch maximum deadline from
10 seconds to 60  seconds. The default deadline remains at 10 seconds.
The offline maximum deadline  for URLFetch remains at 10 minutes.- We
have increased the URLFetch Post payload from 1MB to 5MB.- App Engine
now supports Cross Group (XG) transactions with the High  Replication
Datastore, which allow you to perform transactions across  multiple
entity groups.
http://code.google.com/appengine/docs/python/datastore/transactions.html-
We have released an experimental API that can write to Google Storage
for  Developers directly from App Engine.
http://code.google.com/appengine/docs/python/googlestorage/overview.html-
We have added a graph to the admin console that displays the number of
 instances for which you will be billed.- In the XMPP API,
get_presence() is deprecated in favor of using the inbound  presence
handlers documented in
http://code.google.com/appengine/docs/python/xmpp/overview.html#Handling_User_Presence.-
The Task Queue API 'target' parameter now accepts a new value,
taskqueue.DEFAULT_APP_VERSION, which will send the task to the default
 frontend version, rather than the version or backend where the 'add'
method is  being called.- In the URLFetch API, make_fetch_call() now
returns an RPC object.- Fixed an issue in the Admin Console where the
"Run Now" button did not work  for tasks with a '-' in the name.-
Fixed an issue where the SDK did not decode Base64 encoded blobs.-
Fixed an issue to provide a better error message when using the Mail
API to  send email to an invalid user address.- Fixed an issue in the
SDK where a skip_files entry caused an ImportError when  the library
was located elsewhere in the PYTHONPATH.- Fixed an issue in the SDK
index viewer where the arrows indicating whether a  query was
ascending or descending were not properly rendered.- Fixed an issue
where httplib did not support the deadline argument for  URLFetch
calls.    http://code.google.com/p/googleappengine/issues/detail?id=2216-
Fixed an issue where you could not schedule a cron job to run every
100  minutes.
http://code.google.com/p/googleappengine/issues/detail?id=5243- Fixed
an issue in the SDK where failed tasks retried immediately instead of
waiting for 30 seconds.
http://code.google.com/p/googleappengine/issues/detail?id=5587- Fixed
an issue making it possible to modify request headers using the
deferred  library.
http://code.google.com/p/googleappengine/issues/detail?id=5861
App Engine Java SDK - Release Notes
Version 1.5.5=- We have increased the number of files you
can upload with your application to  from 3,000 to 10,000.- We have
increased the size limit for a single file uploaded to App Engine from
 10MB to 32MB.- We have increased the Frontend request deadline from
30 seconds to 60 seconds.- We have increased the online URLFetch
maximum deadline from 10 seconds to 60  seconds. The default deadline
remains at 10 seconds. The offline maximum deadline  for URLFetch
remains at 10 minutes.- We have increased the URLFetch Post payload
from 1MB to 5MB.- App Engine now supports Cross Group (XG)
transactions with the High  Replication Datastore, which allow you to
perform transactions across multiple  entity groups.
http://code.google.com/appengine/docs/java/datastore/transactions.html-
We have added a graph to the admin console that displays the number of
 instances for which you will be billed.- In the XMPP API,
getPresence() is deprecated in favor of using the inbound  presence
handlers documented in
http://code.google.com/appengine/docs/java/xmpp/overview.html#Handling_User_Presence.-
Fixed an issue in the Admin Console where the "Run Now" button did not
work  for tasks with a '-' in the name.- Fixed an issue to provide a
better error message when a user tries to parse an  HttpRequest's
input stream more than once in a request.- Fixed an issue to provide a
better error message when using the Mail API to  send email to an
invalid user address.- Fixed an issue in the SDK where
HttpServletRequest.getInputStream().read()  always returned -1.
http://code.google.com/p/googleappengine/issues/detail?id=5396- Fixed
an issue where you could not 

RE: [google-appengine] Google App Engine - Backend server TCP Congestion Avoidance Algorithm

2011-10-11 Thread Brandon Wirtz
Google passes all AppEngine Requests through its "Edge" which is a
proprietary solution they built.

 

Based on the types of requests you are generating and other information
about the requests the Edge may optimize your RWIN, ACKs, and Packet Data
Size differently.  You have no control over these and they may vary from GEO
to GEO based on the POP a request enters through.

 

For example this is a table from a presentation that I saw (in public) about
how RWIN values are adapted based on the OS detected by the edge.

 



 

I Agree with Ikai there is nothing you can do to change these values, and
trying to optimize for them would not net you anything since you couldn't
guarantee that Google's Optimizations wouldn't be fighting with your own.

 

-Brandon

 

 

 

-Original Message-
From: google-appengine@googlegroups.com
[mailto:google-appengine@googlegroups.com] On Behalf Of Kunal Shukla
Sent: Sunday, October 09, 2011 10:20 PM
To: Google App Engine
Subject: [google-appengine] Google App Engine - Backend server TCP
Congestion Avoidance Algorithm

 

Hi

 

I am using appspot to create a web application to download and upload file
using HTTP GET and POST respectively. I wanted to understand what TCP
congestion avoidance algorithm do the backend server use - new Reno , Cubic
, westwood + , etc so that i can understand what to expect on the client
side.

 

Thanks

Kunal

 

--

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.

<>

[google-appengine] Re: Datastore update without read

2011-10-11 Thread Murph
You can't update just a single property/attribute of an entity unless you 
already know the values for all of the others.  If it's frequently updated, 
careful use of memcache may allow you to avoid the db.get, but otherwise you 
have to read it first.

An alternative, if you just have say 1 property/attribute which changes 
often would be to split the entity into two separate entity models, one with 
the relatively static data, and the other with the frequently changing 
data.  The downside there, of course, is that you're going to have 2 db.get 
operations when you need all of it, instead of 1.

Internally, the datastore is entirely composed of (key, value) pairs, with a 
single (key,value) per entity (not counting indices, metadata, etc), and the 
SDK encodes/decodes those values into your entity models for you.  They are 
actually encoded as protobufs, but there's nothing in the datastore's API to 
modify that data without reading it first.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/e6JrqffTES4J.
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: Datastore update without read

2011-10-11 Thread Tomas
Yeah, but I need to UPDATE one attribute of existing entity (not
overwrite the whole entity).

On Oct 12, 9:55 am, Gerald Tan  wrote:
> You don't even have to do a key fetch beforehand, you can simply persist a
> new entity with the same key and it will overwrite the existing entity in
> the datastore.

-- 
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] Google App Engine - Backend server TCP Congestion Avoidance Algorithm

2011-10-11 Thread Ikai Lan (Google)
The honest answer is that I don't know, and I don't understand how it's
relevant. I'm not sure I can share those details even if I did.

--
Ikai Lan
Developer Programs Engineer, Google App Engine
plus.ikailan.com | twitter.com/ikai



On Sun, Oct 9, 2011 at 10:20 PM, Kunal Shukla  wrote:

> Hi
>
> I am using appspot to create a web application to download and upload
> file using HTTP GET and POST respectively. I wanted to understand what
> TCP congestion avoidance algorithm do the backend server use - new
> Reno , Cubic , westwood + , etc so that i can understand what to
> expect on the client side.
>
> Thanks
> Kunal
>
> --
> 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.



[google-appengine] Re: Datastore update without read

2011-10-11 Thread Gerald Tan
You don't even have to do a key fetch beforehand, you can simply persist a 
new entity with the same key and it will overwrite the existing entity in 
the datastore.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/1PmldOgotYYJ.
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: Too much contention on these datastore entities. please try again.

2011-10-11 Thread Benjamin
Thanks Guys, I've been trying to catch the error and start tasks to
try again, but it seems to be taking me down a bad path. Sharding
seems like the way to go and i'm going to give it a try.

Cyrille - it'd be great to see your code

Ben
nimbits.com


On Oct 10, 7:12 pm, Cyrille Vincey  wrote:
> Joshua is right : contention during statistics writes has to be fixed
> with sharding.http://code.google.com/appengine/articles/sharding_counters.html
>
> Seems odd at the beginning, but give it a try, works like a charm.
> If you wish, I have some code that I can share to shard automatically
> when the datastore throws a contention exception.

-- 
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] How can I use SetupTools in Python 2.7 runtime?

2011-10-11 Thread Sun Jing
I find the Python 2.7 runtime provides SetupTools, but the
document
dosen't
tell me how to use it.
Can I use it to install any Python packages?

--
keakon

My blog(Chinese): www.keakon.net
Blog source code: https://bitbucket.org/keakon/doodle/

-- 
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] datastore admin

2011-10-11 Thread Felippe Bueno
Hello all,

I'm not sure if I'm missing something, but I can't use datastore admin
features.

I have enabled it on app.yaml.

When I try to copy or delete entities I got the errors bellow:

On datastore admin page:
 Copy Job Status

There was a problem kicking off the jobs. The error was:

'module' object has no attribute 'dumps'


On logs page:

2011-10-11 17:14:36.604

Handling exception.
Traceback (most recent call last):
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/datastore_admin/copy_handler.py",
line 164, in post
mapper_params)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/datastore_admin/utils.py",
line 501, in RunMapForKinds
operation, job_name, handler_spec, reader_spec, mapper_params))
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/datastore_admin/utils.py",
line 471, in StartMap
return db.run_in_transaction(tx)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/api/datastore.py",
line 2355, in RunInTransaction
return RunInTransactionOptions(None, function, *args, **kwargs)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/api/datastore.py",
line 2477, in RunInTransactionOptions
ok, result = _DoOneTry(new_connection, function, args, kwargs)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/api/datastore.py",
line 2499, in _DoOneTry
result = function(*args, **kwargs)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/datastore_admin/utils.py",
line 469, in tx
transactional=True)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/mapreduce/control.py",
line 110, in start_map
transactional=transactional)
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/mapreduce/handlers.py",
line 832, in _start_map
kickoff_params = {"mapreduce_spec": mapreduce_spec.to_json_str()}
  File 
"/base/python_runtime/python_lib/versions/1/google/appengine/ext/mapreduce/model.py",
line 95, in to_json_str
return simplejson.dumps(json, sort_keys=True)
AttributeError: 'module' object has no attribute 'dumps'


Is there anyone having this issue ?

Thank you.

-- 
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] Transfer and storage limits (n00b question, from a not so n00b member).

2011-10-11 Thread Chiguireitor
I'm referring to the Data Store. Just saw on the docs that it is 1mb tops!

I just want someone to confirm this info (sometimes docs can lag behind, 
happened once with the channel API).

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/3SoQswTuYzUJ.
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] Datastore update without read

2011-10-11 Thread Tomas
Hello there, this is maybe the most stupid question ever but I am
wondering if it is possible to do an update to the datastore without
reading the entity first.

I am trying to keep my reads/writes operation as low as possible and
after a huge optimization which I have done in memcache I would like
to implement an update to existing entity without reading it first.
Until now I basically just load the entity from the database using its
key (converted from my entity id) and then set the attribute and
persisted back to datastore. I am wondering what would be the best
approach here:

1) I assume there is now alternative to SQL syntax aka "update entity
set attribute = :value where id = :id"
2) so should I read the entity just by key through small datastore
operation (I assume this is going to load an empty entity with the key
only) and then set my attribute I would like to change and then
normally persist? Is it going to delete all unpopulated attribute in
this entity or just update the one I set? Or is this just totally dumb
and not going to work at all?
3) is there any other way how to do this?

Thank you and sorry again if I missed something really obvious here!

-- 
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] Transfer and storage limits (n00b question, from a not so n00b member).

2011-10-11 Thread Brandon Wirtz
The Blob Store, or the Data Store?

 

1 Meg requests are easy, 

 

With some Jiggering you can do 10 Megs as the output of a request. 

 

Blobs I believe can be 50 Megs.

 

I think in static files you could have a 90 odd meg file now. something like
100 meg minus the required files.

 

 

From: google-appengine@googlegroups.com
[mailto:google-appengine@googlegroups.com] On Behalf Of Chiguireitor
Sent: Tuesday, October 11, 2011 1:01 PM
To: google-appengine@googlegroups.com
Subject: [google-appengine] Transfer and storage limits (n00b question, from
a not so n00b member).

 

Hi all, long time that i didn't post a thing nor interact with the
community.

 

I've got a real n00b question because i don't seem to find the answer to my
questions after some search.

 

I would like to know how much can you:

*   Transfer on a single request (if there's a limit); and
*   How much data you can store on a single object on the data store.

I just want to serve some files and would like to know if there are hard
limits to these two aspects.

 

:)

-- 
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/google-appengine/-/SsJnpPnyASYJ.
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.



[google-appengine] Re: Full text search status

2011-10-11 Thread Cyrille Vincey
+1

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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] Transfer and storage limits (n00b question, from a not so n00b member).

2011-10-11 Thread Chiguireitor
Hi all, long time that i didn't post a thing nor interact with the 
community.

I've got a real n00b question because i don't seem to find the answer to my 
questions after some search.

I would like to know how much can you:

   - Transfer on a single request (if there's a limit); and
   - How much data you can store on a single object on the data store.

I just want to serve some files and would like to know if there are hard 
limits to these two aspects.

:)

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/SsJnpPnyASYJ.
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: university project

2011-10-11 Thread JH
ask your professor if you can use python

why do schools always love java??

On Oct 11, 2:37 pm, "Brandon Wirtz"  wrote:
> You aren't looking at the economics of it.  When I started doing Video
> Compression, and SEO, both of those fields were "elite" they didn't hand out
> degrees in them, you couldn't take a class you gained real world experience,
> and so I billed $500 an hour, brought immense value to my clients and was a
> pillar of the industry.  5 years later on both a bunch of associate degree
> kids billed $50 an hour took 50 times as long, set the bar at well below
> mediocre, but destroyed the market with lousy service, lack of knowledge and
> poor results.
>
> As a result the billing rate the best in the industry can get is much lower,
> and the perception is that both professions are scams.
>
> From: google-appengine@googlegroups.com
> [mailto:google-appengine@googlegroups.com] On Behalf Of mohammad ghasemy
> Sent: Tuesday, October 11, 2011 2:24 AM
> To: google-appengine@googlegroups.com
> Subject: Re: [google-appengine] university project
>
> Dear Matthew,
> agree with you!
>
> On Tue, Oct 11, 2011 at 11:43 AM, Jonathon Broughton
>
>  wrote:
>
> "not worried"
>
> "feels greater job security"
>
> On 11 October 2011 08:44, Matthew Jaggard  wrote:
>
> *worries about the state of university education*
>
> On 8 October 2011 17:53, karim buzdar  wrote:> dear 
> all  Google app engine user's!!!
>
> > i am a university student, taking cloud computing course .. AS per
> > course requirement, i have to programm any medium scale application in
> > java and hav to deploy here ...
>
> > m new, hav no skillz to both java and google app engine.. plzz guyz
> > help me out, what can be a java based medium scale project ..
>
> > regards,
>
> > --
> > 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 
> athttp://groups.google.com/group/google-appengine?hl=en.
>
> --- -
> -
> This email and any files transmitted with it are confidential and intended
> solely for the use of the individual or entity to whom they are addressed.
> Information or opinions in this email which do not relate to the official
> business of Allies and Morrison are neither given nor endorsed by it.
>
> If you have received this email in error please notify the system manager
> i...@alliesandmorrison.com
> --- -
> -
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
>
> To post to this group, send email to google-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.
>
> --
>
> Google ID:107421558875040808666
> 
>
> GNU-LINUX IS THE BEST O.S.
>
> --
> 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] university project

2011-10-11 Thread Brandon Wirtz
You aren't looking at the economics of it.  When I started doing Video
Compression, and SEO, both of those fields were "elite" they didn't hand out
degrees in them, you couldn't take a class you gained real world experience,
and so I billed $500 an hour, brought immense value to my clients and was a
pillar of the industry.  5 years later on both a bunch of associate degree
kids billed $50 an hour took 50 times as long, set the bar at well below
mediocre, but destroyed the market with lousy service, lack of knowledge and
poor results.

 

As a result the billing rate the best in the industry can get is much lower,
and the perception is that both professions are scams.

 

 

From: google-appengine@googlegroups.com
[mailto:google-appengine@googlegroups.com] On Behalf Of mohammad ghasemy
Sent: Tuesday, October 11, 2011 2:24 AM
To: google-appengine@googlegroups.com
Subject: Re: [google-appengine] university project

 

Dear Matthew,
agree with you!

On Tue, Oct 11, 2011 at 11:43 AM, Jonathon Broughton
 wrote:

"not worried"

"feels greater job security"

 

On 11 October 2011 08:44, Matthew Jaggard  wrote:

*worries about the state of university education*


On 8 October 2011 17:53, karim buzdar  wrote:
> dear all  Google app engine user's!!!
>
> i am a university student, taking cloud computing course .. AS per
> course requirement, i have to programm any medium scale application in
> java and hav to deploy here ...
>
> m new, hav no skillz to both java and google app engine.. plzz guyz
> help me out, what can be a java based medium scale project ..
>
> regards,
>
> --
> 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.

 


-
This email and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity to whom they are addressed.
Information or opinions in this email which do not relate to the official
business of Allies and Morrison are neither given nor endorsed by it.
 
If you have received this email in error please notify the system manager 
i...@alliesandmorrison.com 

- 
 
 
 
-- 


You received this message because you are subscribed to the Google Groups
"Google App Engine" group.


To post to this group, send email to google-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 ID:107421558875040808666
 

GNU-LINUX IS THE BEST O.S.

 

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



[google-appengine] Re: Problem serving blobs

2011-10-11 Thread Tim Niblett
Oops.  My stupid.  I was caching stale values of blob keys.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/Pd0xyPNJEK8J.
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: Full text search status

2011-10-11 Thread voscausa
Have you seen this in the blog :App Engine Full Text Search Trusted Tester 
Signup
https://docs.google.com/spreadsheet/viewform?formkey=dEdWcnRJUXZ2VGR3YmVsT1Q1WVB2Smc6MQ&ndplr=1

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/326CSdiTxikJ.
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] Designing data model and caching strategy for new pricing model

2011-10-11 Thread Brandon Wirtz
David,

 

You may be better working with the Google Doc API's since you are just doing
spread sheets.

 

Likely what you are describing would be free for a lot of users if written
correctly since you should have low volume (teaches visting maybe once a day
not all day every day.

 

You should check with your state laws, Indiana for example doesn't allow any
student record keeping to happen outside the state, since you can't
guarantee that Google's servers are in Indiana and only there, teachers in
that state couldn't use your product.

 

Back to the Technical bits..

 

Yes you could store data in tables, I'd think you'd want more flexibility
and you'd store everyone in one place and "tag" them for doing sorts later.

 

The Charts API's should let you make pretty pictures, but again you are
likely to run in to issues of security.

Personally I would do this in something like PHP on a server you own, and
use PHP with MySQL  AppEngine doesn't really have all the internal functions
for doing this, so you will have to rely on a lot of API's and that will
make it hard to build a secure app with all the charts and graphs you want.

 

I'm all for the cloud, and I don't think students grades are super
confidential, but I don't make the laws, and often legality trumps
technology.

 

 

From: google-appengine@googlegroups.com
[mailto:google-appengine@googlegroups.com] On Behalf Of David Whittaker
Sent: Monday, October 10, 2011 1:23 PM
To: google-appengine@googlegroups.com
Subject: [google-appengine] Designing data model and caching strategy for
new pricing model

 

Hi,

 

I am building a web app for GAE that gives teachers a way to enter student
grades and then analyze those grades to easily visualize students who might
be struggling earlier than when their period average starts to drop.  I want
to keep the app free as long as possible (at least during the pilot phase at
my wife's school), and the price of membership as low as possible when it
goes public by optimizing the data storage model up front to minimize writes
in an app that is very data-centric.

 

So I basically have a bunch of student information, a course model
representing a single section of a class, and then many activities per
course.  Each activity has some information about how the grade in the
activity contributes to the various possible averages for the course, and of
course, there is a grade for each student in the course and a possible
comment on the grade.  Finally, the student has a list of dates that they
were absent from the course and a code which represents the type of absence.

 

The primary view of the app (probably 60% of the page loads) is a
spreadsheet-like interface with students down the side, assignments across
the top, and grades in the cells, with cells color-coded to represent
general absence reasons (present, tardy, excused, unexcused).  The secondary
view (probably 20% of the page loads) is an attendance view which is another
spreadsheet-like interface with students down the side, dates across the
top, and color-coded cells with full absence codes.  Another 10% or so of
the app will be various charts which look at all the grades in a class and
display them visually with various statistics.  The remaining 10% or so will
be various single-student queries retrieving all their demographic
information, or all the grades for that single student.

 

So, most of us can write out the sql model of this data in our sleep... the
core of which is a Score entity with a single grade and foreign keys
pointing to the Student, Activity, and Course (if I'm generous - fully
normalized would require that I look up the activity to get the related
Course), and an Absence entity with foreign keys pointing to the Student and
Course.  But of course, we also know the data store is not SQL... so I'm
trying to figure out just how far I can push the NoSQL model and denormalize
my data like crazy.

 

The one thing I have going for me is that I can safely assume class sizes
will never be larger than 50 (this is targeted at k-12 market), and that I
can, if needed segment data into 9-week grading periods consisting of fewer
than 100 activities.  So, my "spreadsheets" are a max of 50 rows x 100
columns, and are almost always only written by a single person, with the odd
entry of an attendance code from an office worker (worst case, the whole
class is absent on a field trip for instance, at which point the office
worker may enter 50 absence codes in a "spreadsheet" at the same time that
the teacher is entering grades, since they have no students to teach).

 

So, if it's not painfully obvious yet, I'm thinking about the implications
of storing the entire spreadsheet for a single section of a course in a
single datastore entity.  The Course entity will be an Expando with
unindexed ListProperties of Student references, Activity references,
additional information from the Student and Activity entities for
quick-reference (i.e. a List of student name

Re: [google-appengine] university project

2011-10-11 Thread mohammad ghasemy
Dear Matthew,
agree with you!

On Tue, Oct 11, 2011 at 11:43 AM, Jonathon Broughton <
jbrough...@alliesandmorrison.com> wrote:

> "not worried"
> "feels greater job security"
>
>
> On 11 October 2011 08:44, Matthew Jaggard  wrote:
>
>> *worries about the state of university education*
>>
>> On 8 October 2011 17:53, karim buzdar  wrote:
>> > dear all  Google app engine user's!!!
>> >
>> > i am a university student, taking cloud computing course .. AS per
>> > course requirement, i have to programm any medium scale application in
>> > java and hav to deploy here ...
>> >
>> > m new, hav no skillz to both java and google app engine.. plzz guyz
>> > help me out, what can be a java based medium scale project ..
>> >
>> > regards,
>> >
>> > --
>> > 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.
>>
>>
> -
> This email and any files transmitted with it are confidential and intended
> solely for the use of the individual or entity to whom they are addressed.
> Information or opinions in this email which do not relate to the official
> business of Allies and Morrison are neither given nor endorsed by it.
>
> If you have received this email in error please notify the system manager 
> i...@alliesandmorrison.com
> -
>
>
>
>
> --
>
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
>
> To post to this group, send email to google-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 
ID:107421558875040808666

*GNU-**LINUX* IS THE BEST O.S.

-- 
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] Cannot see up to date logs in GAE Log Viewer

2011-10-11 Thread Manilal K M
Hello all,

I have deployed a GAE/Java application and an error occurred while
trying to access the application from web browser. However when I
checked the logs in appspot console, it's almost 2 hours old. I cannot
see the recent logs even after refreshing the page multiple times.

This is causing much trouble in development since I couldn't trace any
appengine specific issues. Is this a bug or an expected behaviour.

P.S: I have only one version currently in appspot.

thanks
Manilal

-- 
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] Designing data model and caching strategy for new pricing model

2011-10-11 Thread David Whittaker
Hi,

I am building a web app for GAE that gives teachers a way to enter student 
grades and then analyze those grades to easily visualize students who might 
be struggling earlier than when their period average starts to drop.  I want 
to keep the app free as long as possible (at least during the pilot phase at 
my wife's school), and the price of membership as low as possible when it 
goes public by optimizing the data storage model up front to minimize writes 
in an app that is very data-centric.

So I basically have a bunch of student information, a course model 
representing a single section of a class, and then many activities per 
course.  Each activity has some information about how the grade in the 
activity contributes to the various possible averages for the course, and of 
course, there is a grade for each student in the course and a possible 
comment on the grade.  Finally, the student has a list of dates that they 
were absent from the course and a code which represents the type of absence.

The primary view of the app (probably 60% of the page loads) is a 
spreadsheet-like interface with students down the side, assignments across 
the top, and grades in the cells, with cells color-coded to represent 
general absence reasons (present, tardy, excused, unexcused).  The secondary 
view (probably 20% of the page loads) is an attendance view which is another 
spreadsheet-like interface with students down the side, dates across the 
top, and color-coded cells with full absence codes.  Another 10% or so of 
the app will be various charts which look at all the grades in a class and 
display them visually with various statistics.  The remaining 10% or so will 
be various single-student queries retrieving all their demographic 
information, or all the grades for that single student.

So, most of us can write out the sql model of this data in our sleep... the 
core of which is a Score entity with a single grade and foreign keys 
pointing to the Student, Activity, and Course (if I'm generous - fully 
normalized would require that I look up the activity to get the related 
Course), and an Absence entity with foreign keys pointing to the Student and 
Course.  But of course, we also know the data store is not SQL... so I'm 
trying to figure out just how far I can push the NoSQL model and denormalize 
my data like crazy.

The one thing I have going for me is that I can safely assume class sizes 
will never be larger than 50 (this is targeted at k-12 market), and that I 
can, if needed segment data into 9-week grading periods consisting of fewer 
than 100 activities.  So, my "spreadsheets" are a max of 50 rows x 100 
columns, and are almost always only written by a single person, with the odd 
entry of an attendance code from an office worker (worst case, the whole 
class is absent on a field trip for instance, at which point the office 
worker may enter 50 absence codes in a "spreadsheet" at the same time that 
the teacher is entering grades, since they have no students to teach).

So, if it's not painfully obvious yet, I'm thinking about the implications 
of storing the entire spreadsheet for a single section of a course in a 
single datastore entity.  The Course entity will be an Expando with 
unindexed ListProperties of Student references, Activity references, 
additional information from the Student and Activity entities for 
quick-reference (i.e. a List of student names of the same size as the list 
of Student references, so that I don't have to pull all the student entities 
just to get their name), and then expando ListProperties containing a list 
of absence date/codes for each student, and a list of grades and comments 
for each activity (ie. AbsenceDate0 is a list of dates which the student in 
position 0 of the Student list was absent, AbsenceCode0 is a list of codes 
for student 0 which correspond to each date, Score0 is a list of scores for 
student 0 corresponding to entries in the activity list, and so on).  With 
the incredibly large, busy class of 50 students doing 100 activities in 9 
weeks, there's the potential for 50 students x 100 activity grades x 8 byte 
float = 40KB, and if everyone was absent every day, there would be 50 
students x 45 absences x (8 byte date + 10 byte code) = 40KB.  That leaves 
920 KB for additional data about the students and activities, as well as 
comments... and I could always put a reference to a Comment entity in the 
list instead of a string if the comments get too long.

By far the most common read case will be to read an entire course with all 
its grade and attendance data, package that up into a JSON object and send 
it off to the client for any further processing to be done in the browser. 
 Teachers will generally grab the 6-8 courses they teach all at once, then 
look at it rendered 10 different ways (but require no further interaction 
with the server), then send short update messages back to the server to 
modify attendance or grade data.  Administr

Re: [google-appengine] Re: Prerelease SDK 1.5.5 available for download!

2011-10-11 Thread Tommy Knowlton
Well, this n00b just got caught up in _production_ documentation describing 
the Python 2.7 support, and wasted the last half hour trying to create and 
locally test such a project, wondering why the tutorial code wasn't 
working...

It wasn't until I hit the appropriate google query matching the errors 
reported by the interpreter, that I found this thread and learned that the 
released (1.5.4) SDK does NOT support Python 2.7. Could never have 
discovered that from the current state of production docs.

~ The N00b

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/_EOYT3dai7AJ.
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: university project

2011-10-11 Thread David Whittaker
The real question is: what does medium scale mean to your professor?
Usually, the scale of a web application is defined by the size of its
audience, and has little to do with the amount or complexity of code.
For instance, hot or not could be considered large scale by its
audience size, and implemented in 100 lines of code or less.  Then
again, if you wrote a hot or not clone, it would almost certainly not
even be a medium scale app, because the niche is already full.  So to
build a real medium scale app, you need a program that is able to
handle the load, which can be easy or hard on app engine depending on
what the app does and how much you can pay, but you also need a
concept that is appealing to a large audience, time (or marketing
prowess) for it to reach critical mass, and a monetization strategy to
cover the cost.  If your goal is to build a true medium scale app that
can fit in the free limits, be ready to spend a lot of time
optimizing, and build an app with mostly static content.

Now, if the assignment is simply to build an app that COULD be medium
scale IF it had the audience, then your job is easy.  Pick your
favorite web app (gmail, picasa, dropbox, etc), make a basic clone of
it, wave your hands vigorously, and say that the app engine will
handle the scaling to make it work at true medium scale (and hope
nobody notices it and posts it on slashdot on the day of your final
presentation).

On Oct 8, 11:53 am, karim buzdar  wrote:
> dear all  Google app engine user's!!!
>
> i am a university student, taking cloud computing course .. AS per
> course requirement, i have to programm any medium scale application in
> java and hav to deploy here ...
>
> m new, hav no skillz to both java and google app engine.. plzz guyz
> help me out, what can be a java based medium scale project ..
>
> regards,

-- 
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] university project

2011-10-11 Thread mohammad ghasemy
Hi Karim
Are you a java programmer?
Are you write any web_service with open source java framework?
I can help you on this field, if you want!

On Sat, Oct 8, 2011 at 8:23 PM, karim buzdar  wrote:

> dear all  Google app engine user's!!!
>
> i am a university student, taking cloud computing course .. AS per
> course requirement, i have to programm any medium scale application in
> java and hav to deploy here ...
>
> m new, hav no skillz to both java and google app engine.. plzz guyz
> help me out, what can be a java based medium scale project ..
>
> regards,
>
> --
> 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 
ID:107421558875040808666

*GNU-**LINUX* IS THE BEST O.S.

-- 
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: Image Gurus: Reading and Modifying images pixels on google app engine

2011-10-11 Thread David Whittaker
I believe you are looking for the blobstore file api. You can create an 
outputstream to a blob using:

FileService fileService = FileServiceFactory.getFileService();
AppEngineFile file = fileService.createNewBlobFile("image/png");
boolean lock = false;
FileWriteChannel writeChannel = fileService.openWriteChannel(file, lock);
OutputStream os = Channels.newOutputStream(writeChannel);

PngWriter pngw = new PngWriter(os, pngr.ImgInfo, "Name");

When you're done, call:

writeChannel.closeFinally();

This "commits" the data to the blobstore and makes it readable.  Don't 
forget to save the blobkey somewhere so you can get the image later:

BlobKey blobKey = FileService.getBlobKey(file);

For more info, see:

http://code.google.com/appengine/docs/java/blobstore/overview.html#Writing_Files_to_the_Blobstore

David

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/B6tK7sCGKfsJ.
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: Too much contention on these datastore entities. please try again.

2011-10-11 Thread Cyrille Vincey
Joshua is right : contention during statistics writes has to be fixed
with sharding.
http://code.google.com/appengine/articles/sharding_counters.html

Seems odd at the beginning, but give it a try, works like a charm.
If you wish, I have some code that I can share to shard automatically
when the datastore throws a contention exception.

-- 
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: How much I am expecting to pay for the Google App Engine?

2011-10-11 Thread David Whittaker
That depends.  How many of those datastore ops are going to be reads, and 
how many are going to be writes?  If they are all reads, with good use of 
cache-control headers (which don't use any quota at all if the data is 
cached outside your instance), you might even get down to free limitations. 
 On the other hand, if every request is a full read-modify-write cycle, 
depending on how many indexes are on your entity, you could be talking about 
hundreds of dollars per month.  Let's say you don't have any indexes at all 
- you still do 2 write ops for every put, one for the Kind index and one for 
the Key index.  So that's 4 million writes and 2 million reads.  4 million @ 
$0.10/100k is $4 per day, 2 million @ $0.07/100k is $1.40, so just for the 
datastore costs you are talking $5.40 per day, or $162 per month with every 
index costing you another $60 / month.  With the only information you gave 
us being 2 million datastore hits a day, if they are all only reads and you 
don't cache them anywhere, you are talking $1.40 a day ($42 a month).

Now, what that doesn't take into account is instances.  2 million requests 
per day is an average of about 24 per second.  Depending on latency and 
memory usage of your app, you may need as few as 1 instance or 50 or more to 
pull that off.  If your app is threadsafe and 24 distinct requests can fit 
in memory, you'll have 1 instance most of the time with spikes of 2 or 3, so 
you may not incur any overages in the average day.  But if you can only fit 
4 requests in memory, you'll average 6 instances all the time, or 6*24 = 144 
instance hours per day -28 free = 116 instance hours per day * $0.05 per 
hour (assuming you reserve frontend instances) = $5.80 per day = $174 / 
month.  If your app isn't threadsafe, and does that full read-modify-write 
cycle every time, you could need an average of 50 instances or more to 
handle the load, further increasing your cost.

In short, depending on how you optimize your application, you could range 
anywhere from $0 to $300 a month or more, with 2 million hits a day, 
depending on what those hits do and at what level of caching you integrate 
into your app.  If you can effectively use cache-control headers, global 
module variable caching, and memcache, then the datastore cost of 2 million 
hits can be as few as a few hundred ops a day... well within the freebie 
category.  If you don't have time to optimize for scalability (or every 
request demands the absolute latest data available), then the brute-force 
method is very expensive indeed.

Give us some more details and we can give you a better idea of what to 
expect.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/-7p4eHx2WQYJ.
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] un-Verification for App Creation

2011-10-11 Thread Stuart Wheater
Is it possible to unvalidate an account for app creation?

It appears that only one account can be validated from a particular
mobile phone (via SMS). I am happy to have only one App Creation
enabled account, but the currently enabled account isn't the account I
wish to use for App Creation.

If this isn't possible, any other way I can achieve this?

Stuart

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



[google-appengine] Problem serving blobs

2011-10-11 Thread Tim Niblett
I'm (trying to) serve blobs from Java.  I'm doing a call like

blobService.serve(new BlobKey(resource.getBlobKey()), response);


where the blob key was obtained from a key using getKeyString() in the first 
instance.  The response is the standard HttpServletResponse with some added 
headers 
(Expires, Last-Modified, Etag, Content-Type).

No exception is thrown.  The blob seems to exist and yet I'm getting a 500 
server error. 

Any ideas?

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/UMJvFZEDA4sJ.
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] 1.5.5

2011-10-11 Thread JH
just got 1.5.5 and on deploy I get:

Compilation starting.
Error 503: --- begin server output ---

Try Again (503)
An unexpected failure has occurred. Please try again.
--- end server output ---

-- 
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] Understanding Exploding Indexes

2011-10-11 Thread Edward Hartwell Goose
Hi,

I'm trying to work out why some indexes I've got have gone into an error 
state.

My interpretation of the help text (
http://code.google.com/appengine/docs/python/datastore/queries.html#Big_Entities_and_Exploding_Indexes)
 
is that the 5,000 limit is that the Cartesian product of all the indexed 
properties within that index.

I also interpret it that different indexes will not affect one another, as 
long as there is no more than 200 indexes all in all.

Or, to use a couple of examples:
1. Given an entity "A" with an index "A1" which has two List properties and 
3 Boolean values, the index size is the Cartesian of the two lists (because 
the Boolean's can only be true or false, not both. The lists could have 
multiple properties, therefore you need an index for each possible 
combination).

1b .Further more, it is possible to have multiple indexes for this entity 
"A", each of which specify differing orderings across the entity. (e.g. A1 
might be listA, listB, booleans while A2 might be listB, listA, booleans 
etc)

2. Given an entity which has 7 Boolean values and 1 Date value, the index 
size is 1 (because the Booleans and the Dates can each only be 1 value).

Is this interpretation correct? If not, I would be grateful for some 
clarity!

Thanks,
Ed

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/fzZ1Kqg16-gJ.
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: how to retrieve only part of an entity

2011-10-11 Thread fredrossperry
I have RemoteApiServlet enabled in my Java GAE app.  I have a Java app
as a client
making queries with Query, and PreparedQuery.

Is there a way to get only part of each entity?  I have a particular
use of the data
where I only need a few properties from each entity, not the whole
thing.

thank you
fred

-- 
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: Prerelease SDK 1.5.5 available for download!

2011-10-11 Thread Deepak Singh
Any answer pls..

On Mon, Oct 10, 2011 at 11:49 PM, Deepak Singh wrote:

> Hi,
>
> So will it be by default 60 sec for all urlfetch or do we need to
> explicitly set this deadline parameter ?
> If yes, then how to set the 60 sec timeout parameter.
>
> Thanks
> Deepak
>
>
> On Mon, Oct 10, 2011 at 10:59 PM, Ikai Lan (Google) wrote:
>
>> As far as I know you shouldn't have to change SDK versions for the new
>> deadline to work.
>>
>> --
>> Ikai Lan
>> Developer Programs Engineer, Google App Engine
>> plus.ikailan.com | twitter.com/ikai
>>
>>
>>
>> On Wed, Oct 5, 2011 at 6:21 AM, Mathieu Clavel wrote:
>>
>>> Hi,
>>>
>>> For Java, "We have increased the URLFetch maximum deadline from 10
>>> seconds to 60 seconds."
>>> Will the new limit be usable from previous sdk version on appengine, or
>>> must there be a version migration ?
>>>
>>>
>>> Regards,
>>>
>>> Mathieu CLAVEL
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "Google App Engine" group.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msg/google-appengine/-/yNIVZlSFcBYJ.
>>>
>>> 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.
>>
>
>

-- 
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] Full text search status

2011-10-11 Thread Kristaps Rāts
Hello,
It's been 5 months since the full text search demo at Google IO, and
some stuff is in the SDK already, is a release in sight yet?

-- 
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] Heavy traffic - Google cut us off!

2011-10-11 Thread hovu96
No, I'm not running CloudFlare ;-)

I'm just running a german news site (http://www.mactechnews.de running on 
Windows Servers) and switching during apple events to slim ticker site which 
is running on Google App Engine.

During the last event we cached every page (like I described above) and 
Google allocated about 50 instances for that. The Apple event before (which 
was earlier this year), we didn't cached the page and reached the 72 cpu 
minutes per minute quota when reaching the 1,500 requests per seconds limit. 
We're planning to allow chatting and other dynamic things during such events 
but this requires to implement uncached requests. But I'm not sure how much 
instances are allocated when using a uncached page and receiving >= 12,000 
requests per seconds...

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/QC1Kp2JMUu4J.
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] Heavy traffic - Google cut us off!

2011-10-11 Thread Simon Knott
Ha, that was going to be my next question ;)

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/q6fjhZgTfR0J.
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] Heavy traffic - Google cut us off!

2011-10-11 Thread Brandon Wirtz
$1 says he left out. "we were running CloudFlare"

 

 

 

From: google-appengine@googlegroups.com
[mailto:google-appengine@googlegroups.com] On Behalf Of hovu96
Sent: Tuesday, October 11, 2011 1:41 AM
To: google-appengine@googlegroups.com
Subject: [google-appengine] Heavy traffic - Google cut us off!

 

During the last Apple PR event (called "Let's talk iPhone") we ran a ticker
site that received more than 12.000 requests per second:

 
 Description: Image removed by
sender.

This is quite a lot. We used pubic caching to serve the page that expires
very 20 seconds. So far so good.

 

Maybe you see the sudden drop in the graph - this was about one hour after
the event starts. This happened because Google stopped routing the requests
to the App Engine instances. Almost every website visitor received a error
message page from google containing this message:

 

--

Our systems have detected unusual traffic from your computer network. Please
try your request again later. Why did this happen?

 

This page appears when Google automatically detects requests coming from
your computer network which appear to be in violation of the Terms of
Service. The block will expire shortly after those requests stop.

 

This traffic may have been sent by malicious software, a browser plug-in, or
a script that sends automated requests. If you share your network
connection, ask your administrator for help - a different computer using the
same IP address may be responsible. Learn more

 

Sometimes you may see this page if you are using advanced terms that robots
are known to use, or sending requests very quickly.

--

 

Our ticker page allows users to enable "auto reload after 15 seconds" (which
was disabled by default). This is just a little javascript that reloads the
page after 15 seconds.

 

Has Google detected that the reloads were triggered from a java script and
*not* by the user clicking the reload button?

 

Thanks,

Robert

-- 
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/google-appengine/-/PnAagI-rcboJ.
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.

<<~WRD000.jpg>>

[google-appengine] Re: Heavy traffic - Google cut us off!

2011-10-11 Thread hovu96
On Server side I allow public caching, be adding the cache control header:

self.response.headers['Cache-Control'] = 'public, max-age=15'

Google caches the response data (also known as edge cache feature). So I 
think the requests are going through a Google proxy server.

Just to clarify, during this single hour we had 37,512 unique visitors 
(Google Analytics) and almost *everybody* received this error message.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/RIJuv0gRVu0J.
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: Heavy traffic - Google cut us off!

2011-10-11 Thread Simon Knott
Were your requests being routed through any sort of proxy server, or were 
they going directly to the GAE-hosted application?

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/eIunkteBT1UJ.
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] Heavy traffic - Google cut us off!

2011-10-11 Thread hovu96
During the last Apple PR event (called "Let's talk iPhone") we ran a ticker 
site that received more than 12.000 requests per second:


This is quite a lot. We used pubic caching to serve the page that expires 
very 20 seconds. So far so good.

Maybe you see the sudden drop in the graph - this was about one hour after 
the event starts. This happened because Google stopped routing the requests 
to the App Engine instances. Almost every website visitor received a error 
message page from google containing this message:

--
*Our systems have detected unusual traffic from your computer network. 
Please try your request again later. Why did this happen?*
*
*
*This page appears when Google automatically detects requests coming from 
your computer network which appear to be in violation of the Terms of 
Service. The block will expire shortly after those requests stop.*
*
*
*This traffic may have been sent by malicious software, a browser plug-in, 
or a script that sends automated requests. If you share your network 
connection, ask your administrator for help — a different computer using the 
same IP address may be responsible. Learn more*
*
*
*Sometimes you may see this page if you are using advanced terms that robots 
are known to use, or sending requests very quickly.*
--

Our ticker page allows users to enable "auto reload after 15 seconds" (which 
was disabled by default). This is just a little javascript that reloads the 
page after 15 seconds.

Has Google detected that the reloads were triggered from a java script and 
*not* by the user clicking the reload button?

Thanks,
Robert

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/PnAagI-rcboJ.
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] university project

2011-10-11 Thread Jonathon Broughton
"not worried"
"feels greater job security"

On 11 October 2011 08:44, Matthew Jaggard  wrote:

> *worries about the state of university education*
>
> On 8 October 2011 17:53, karim buzdar  wrote:
> > dear all  Google app engine user's!!!
> >
> > i am a university student, taking cloud computing course .. AS per
> > course requirement, i have to programm any medium scale application in
> > java and hav to deploy here ...
> >
> > m new, hav no skillz to both java and google app engine.. plzz guyz
> > help me out, what can be a java based medium scale project ..
> >
> > regards,
> >
> > --
> > 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.
>
>

-
This email and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity to whom they are addressed.
Information or opinions in this email which do not relate to the official
business of Allies and Morrison are neither given nor endorsed by it.

If you have received this email in error please notify the system manager 
i...@alliesandmorrison.com 
-
 

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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 the hell do you get the damn program to set points to start with

2011-10-11 Thread Matthew Jaggard
Hi Orpheus,
I'm afraid I think you've posted to the wrong group. This group is
about hosting applications on Google's infrastructure by programming
in Java, Python or Go - nothing to do with point, mice or maps.

Thanks,
Mat.

On 6 October 2011 09:33, Orpheus Allison  wrote:
> I can find no help in getting started. I want to have the map take a
> point from my mouse and use it as a starting point. The program says
> that it does not recognize my point. Yet it can display the pointer
> from the mouse. I am not looking for a super coordinate point. I only
> want to be able to say this place to that place get me some
> directions. THe program is not helpful at all and when I do try to get
> help it fails to answer my query. How the helll do I get the program
> to work? Where is a tutorial that will show me how to use the larger
> functions. The damn navigation buttons take me to places I do not
> recognize and I can not get back to where I started. Where are some
> simple step by step instructions that do not require multiple hot link
> clicks to get into more and more confusing directions. Damn it, I just
> want to use the basic functions to say I am here I want go here.  The
> program does not do this.  It clouds its answers with obfuscatory
> garbage. How do I use the program where is a dead body to help me?
> Orpheus Allison,MLA
> orpheusalli...@mac.com
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
> To post to this group, send email to google-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] university project

2011-10-11 Thread Matthew Jaggard
*worries about the state of university education*

On 8 October 2011 17:53, karim buzdar  wrote:
> dear all  Google app engine user's!!!
>
> i am a university student, taking cloud computing course .. AS per
> course requirement, i have to programm any medium scale application in
> java and hav to deploy here ...
>
> m new, hav no skillz to both java and google app engine.. plzz guyz
> help me out, what can be a java based medium scale project ..
>
> regards,
>
> --
> 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.