[google-appengine] Re: Application Main Logs not working

2009-07-17 Thread richard emberson

How to I tell you my app ID with out telling everyone else?
I have only one app ID so I assume there is some mapping
from gmail address to app ID.

My logs page has not changed since 7-13.

The logs page log level values do not reflect either
Sun logger levels or Apache log4j levels. Where does
trace and config fine, finer and finest show up?

I was allowing exceptions to pass up the stack beyond
my servlet code. Maybe that caused the
HttpServletResponse.SC_INTERNAL_SERVER_ERROR 500
error code.

Richard

Jeff S (Google) wrote:
> Hi Richard,
> 
> Could you tell us your app ID and one of the request which resulted in a 
> 500 error? I'd be happy to look into this but there are quite a few 
> things which could cause a 500 error, including typos in source code and 
> such.
> 
> Thank you,
> 
> Jeff
> 
> On Wed, Jul 15, 2009 at 11:38 AM, richard emberson 
> mailto:richard.ember...@gmail.com>> wrote:
> 
> 
> 
> When I send in a request that ought to log something
> at the INFO level, nothing shows up in the Log viewer.
> 
> When I make some requests I get a 500 response code,
> internal server error, but nothing shows up in the
> Log viewer. So, I can not tell what the problem is.
> 
> Richard
> --
> Quis custodiet ipsos custodes
> 
> 
> 
> 
> > 

-- 
Quis custodiet ipsos custodes

--~--~-~--~~~---~--~~
You 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] Chat Time transcript for July 15, 2009

2009-07-17 Thread Jason (Google)

This past Wednesday, the App Engine team hosted the latest session of
its bimonthly IRC office hours. A transcript of the session and a
summary of the topics covered is provided below. The next session will
take place on Wednesday, August 5th from 7:00-8:00 p.m. PDT in the
#appengine channel on irc.freenode.net.


--SUMMARY---
Q: Are there any plans to add support for JDO's syntax for unowned
relationships? A: The documentation does indicate that JDO's syntax
for unowned relationships may be supported in a future release. Since
there are other ways of specifying unowned relationships, this isn't
the highest priority, but it may appear down the line. [9:03, 9:15,
9:18]

Q: Currently, there doesn't seem to be a way to execute tasks as a
particular user -- will this be added? A: There are several
workarounds available. e.g. When enqueueing a new Task, you can take
the ACSID cookie from the incoming request and add it as a Cookie:
header to the Task -- this should work as long as the cookie doesn't
expire in between the two requests. If you're using a Google Data API,
you may also be able to pass the auth token in the payload of the task
and then read it from the request when the task is started. Lastly, if
you just need the user's email, you can use os.environ['USER_EMAIL'].
[9:06-9:08, 9:10, 9:15]

Since the local development server can only service one request at a
time, you may experience some issues sending multiple requests
simultaneously, including dropped static resources. It may help to
limit your browser to one connection per site for testing (e.g.
through about:config in FireFox). [9:12-9:13, 9:16, 9:19, 9:20,
9:21-9:22, 9:25]

Q: Will there be any MapReduce service added to GAE? A: Yes! "Support
for mapping operations across datasets" was recently added to the
roadmap. [9:17, 9:19]

Q: What is the status of full text search? A: Native support is still
a ways off, but there are a number of third-party libraries that may
help. Many are being updated to use the new task queue to build index
entities. [9:20-9:22]

Q: Will there be an SLA for paid services? A: In time, an SLA and
premium support options may be made available for App Engine. As of
now, we generally offer the same support for all users -- we check the
support groups daily and have forms set up for requesting more quota,
reporting billing issues, etc. [9:26, 9:27, 9:30]

Q: Any news on the multi-tenancy front? A: Support for multi-tenant
applications is in process, but for now, you can get part of the way
there by using hooks in the datastore to namespace all of the entities
for a particular user/tenant. [9:28, 9:30]

Q: Any plans to support a "firewall" or offer increased protection
against DDOS attacks? A: It's not on the current roadmap, but a more
robust DDOS API may be made available in the future so you can more
easily block certain IPs and perform other related actions. If this is
important to you, star the issue in the tracker:
http://code.google.com/p/googleappengine/issues/detail?id=644 [9:31,
9:34]

Q: Can the task queue API be used as a substitute for sharded
counters? e.g. Instead of updating the counter every request, can I
instead add a task to the queue that updates the counter when it's
executed? A: The obvious limitation is the limit on the number of
tasks that you can add to a queue per day -- 10,000. Aside from this,
yes, it could work as a substitute for sharding. The counter reads may
not be accurate to-the-second, but since you can control the rate at
which the incrementor Task writes the value to the datastore, you can
effectively bypass the write contention that occurs when writing to a
single entity too often. [9:41, 9:47, 9:50-9:53]


--FULL TRANSCRIPT---
[09:00am] scudder_google: Hi all, welcome to another installment of
our twice monthly chat time
[09:01am] theboxfactory__: Good morning
[09:01am] scudder_google: From Google thus far we have Jason_Google
and myself, and more will likely join as we go along
[09:01am] scudder_google: so if you have questions for us, comments,
suggestions, feel free. Don't hold back
[09:02am] hansamann: when can we expect task api for java?
[09:03am] max-oizo: Hi google team! My first question to Max Ross/or
ORM team - when we expect a support unowned relations in JDO? I
naturally want to approximate date (month/3 month/6 month/year)?
[09:04am] max-oizo: And to java team - thanks for sdk 1.2.2
[09:04am] theboxfactory__: Python: You now support Django 1.0, but
when can we expect or indeed can we expect a more appengine specific
version, closer to what the appengine patch current implements
[09:04am] scudder_google: hansamann: we usually don't get very
specific on release dates for specific features, as acurately
predicting is just too difficult, so all I can say is "soon"
[09:04am] Beruk: Hello! How is the XMPP api coming along? Can you
share what areas this API will cover? (e.g.

[google-appengine] Re: Inifite redirect loop on login

2009-07-17 Thread michael.maguire


This would appear to happen whenever I attempt to login to the app
with any ID other than the one that actually owns the Google Apps
account -- it does not matter that I have already added the non-owner
account as a developer for the app

On Jul 17, 5:43 pm, "michael.maguire" 
wrote:
> I am seeing this same error today attempting to log in to Google App
> Engine using a Google Apps account even though I am using 
> thehttp://appengine.google.com/a/yourdomain(actuallyhttp://appengine.google.com/a/yourdomain.com)
>  suggestion from above.
>
> ---
> This web page has a redirect loop.
>
> The web page at null has resulted in too many redirects. Clearing your
> cookies for this site may fix the problem. If not, it is possibly a
> server configuration issue and not a problem with your computer.
>
> Here are some suggestions:
> Reload this web page later.
> Learn more about this problem.
> ---
>
> On May 21, 10:39 am, "Nick Johnson (Google)" 
> wrote:
>
>
>
> > Hi jannick,
>
> > Are you using a Google Apps account? If so, this is a known bug, which
> > you can resolve by logging in 
> > athttp://appengine.google.com/a/yourdomain(where'yourdomain' is the
> > domain name part of yourloginemail address).
>
> > -Nick Johnson
>
> > On Wed, May 20, 2009 at 8:32 PM, jannick  wrote:
>
> > > Hi
>
> > > When I try to log-in to the GAE dashboard/management app I end up in
> > > an infiniteloopof redirects. I've seen this behavior since last
> > > weekend, and from multiple computers, locations and browsers. Anyone
> > > else experiencing this issue, or is it possible that my account has
> > > somehow been setup wrong? (I havnt used the GAE account yet, aside
> > > from exploring the interface).- Hide quoted text -
>
> > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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: Doing Appengine settings programmatically

2009-07-17 Thread Jason (Google)
This might work for deployment, but there's currently no way of
programatically obtaining an application ID. Your users would have to
register an app ID and enter it along with their account credentials.
That said, we actively discourage developers from requesting Google
credentials from users. Even if your intentions are noble, training users to
blindly trust third-party apps with their raw credentials is not in their
best interests, and requesting these credentials may even violate the terms
of service. A better idea would be filing a feature request for enabling an
authentication mechanism like AuthSub or OAuth to do this type of task
securely.

- Jason

On Thu, Jul 16, 2009 at 11:43 AM, Barry Hunter
wrote:

>
> Have a look at how App Engine Launcher works
>
> http://googleappengine.blogspot.com/2008/05/app-engine-launcher-for-mac-os-x.html
>
> but pretty sure it just wraps appcfg.py
>
> You could just wrap appcfg.cmd
>
> On 16/07/2009, vijay  wrote:
> >
> > Ping!!
> >
> > On Wed, Jul 15, 2009 at 7:48 PM, vijay  wrote:
> > > HI All,
> > > I am writing an application in Java which will create a website for my
> > users using some custom fields. I want that the website built and this
> > application will be deployed on App Engine. Assuming that My user trust
> my
> > application and I can have their username and password enterd to my
> > applications setting page, how to do all Appengine settings
> > programmatically. Are their any API available for this.
> > > The reason I want to do it this way is that the user can directly
> handle
> > their app engine interaction and can pay for usage over freebie quota.
> > >
> > >
> > > Thanks
> > > Vijay
> >
> >
> >  >
> >
>
>
> --
> Barry
>
> - www.nearby.org.uk - www.geograph.org.uk -
>
> >
>

--~--~-~--~~~---~--~~
You 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: Globally monotonic counter

2009-07-17 Thread n8gray

On Jul 17, 8:29 am, Andy Freeman  wrote:
> You're mis-parsing the sentence.  Note that they even tell you what
> they mean by "take care of messy details".
>
> Let's look at another example.  MS's Visual {whatever} documentation
> claims that it makes programming easy.  Do you think that that claim
> implies that using said product will let anyone produce an O(N)
> solution to an NP-complete problem?

I'm sorry, but "you don't have to worry about any of that" right after
a description of a massively distributed database is a much stronger,
more specific statement than your strawman, and it's also demonstrably
untrue.

> > > I worked in a distributed systems group for many years, so I know that
> > many of these problems are simply inherent to distributed systems.  It
> > doesn't disturb me that they exist.
>
> You're complaining that GAE doesn't solve them.

Where, specifically?  You seem to be reacting to this statement:

"""
I'm starting to think that the "GAE takes care of the messy details of
distributed systems programming" claim is a bit overstated...
"""

You may notice that I'm criticizing GAE's advertising, not its
implementation.

Cheers,
-n8

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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] Dashboard count doesnt match request log view count

2009-07-17 Thread oldcomputer

suddenly today the dashboard page view counts dont match the request
log count ??
--~--~-~--~~~---~--~~
You 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 Adding User as developer

2009-07-17 Thread Laith

we are having problem inviting a developer under the domain of our
app,

what we are trying to do, is set up the default email that can send
the application emails (Jaiku) to be an account under the same domain
name for the application Keifak.com , so we created an email noreply
at keifak.com  (which is hosted on google Apps ) but whenever we
invite that account to be a devloper on the app, the email never get
delivered, even though the account receive emails from our personal
accounts.

why the restriction on sending email from a developer account from
Jaiku , it seems like it dose not work unless its from a developer
account

--~--~-~--~~~---~--~~
You 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] Quality & Affordable Jewelry, Cosmetics, Skin Care, Clothing

2009-07-17 Thread qiuxing www

Quality & Affordable Jewelry, Cosmetics, Skin Care, Clothing

Online Shopping!
Jewelry, Cosmetics, Skin Care Products, Hair Care Products, Health &
Wellness Products, Clothing, Shoes, Housewares, and Childrens Products
Available.

we take PAYPAL as the method of payment!
please kindly visite our website: http://www.ccshoe.com
msn: ccshoe2...@hotmail.com
email: wcl020...@gmail.com

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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] Error registering: "phone number has been sent too many messages or has already been used to confirm an account."

2009-07-17 Thread jj...@appsanywhere.net

Good afternoon,

I have created a new domain to test a couple of applications under.
However, when I go to activate my Google App Engine account, it
complains that my cell phone has already been used to activate a
Google App Engine account.

I know that! I used my cell phone to activate an account under my
personal account but decided to use a separate domain for development
rather than my personal.

I was unable to find how to remove my cell phone from the personal
account.

Thoughts?

JJ Lay
jj...@appsanywhere.net

--~--~-~--~~~---~--~~
You 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: Transactionally updating multiple entities over 1MB

2009-07-17 Thread Juraj Vitko

Nick, just one clarification (I can't find in docs) - is there a limit
on the total size of an entity group?




On Jun 29, 12:28 pm, "Nick Johnson (Google)" 
wrote:
> On Sat, Jun 27, 2009 at 4:14 PM, Andy Freeman wrote:
>
> >> > Does that mean that db.put((e1, e2, e3,)) where all of the entities
> >> > are 500kb will fail?
>
> >> Yes.
>
> > Thanks.
>
> > I'll take this opportunity to promote a couple of related feature
> > requests.
>
> > (1) We need a way to estimate entity sizes
> >http://code.google.com/p/googleappengine/issues/detail?id=1084
>
> The 1MB limit is on the API call, rather than the entity itself,
> per-se, so index size doesn't count in the 1MB limit. You can always
> serialize the entity yourself and check its size, though that requires
> touching datastore-internal methods.
>
>
>
> > (2) We need a way to help predict when datastore operations will fail
> >http://code.google.com/p/googleappengine/issues/detail?id=917
>
> > I assume that db.get((k1, k2,)) can fail because of size reasons when
> > db.get(k1) followed by db.get(k2) will succeed.  Does db.get((k1,
> > k2,)) return at least one entity in that case?
>
> No, the operation will simply fail. Given that it's an invariant that
> the returned list has the same length as the passed list, there's no
> sensible way to return partial results without implying that certain
> entities didn't exist when they actually do.
>
> -Nick Johnson
>
>
>
>
>
> > On Jun 26, 9:36 am, "Nick Johnson (Google)" 
> > wrote:
> >> On Fri, Jun 26, 2009 at 4:42 PM, Andy Freeman  wrote:
>
> >> > >  the 1MB limit applies only to single API calls
>
> >> > Does that mean that db.put((e1, e2, e3,)) where all of the entities
> >> > are 500kb will fail?
>
> >> Yes.
>
> >> > Where are limits on the total size per call documented?
>
> >> >http://code.google.com/appengine/docs/python/datastore/overview.html#...
> >> > only mentions a limit on the size of individual entities and the total
> >> > number of entities for batch methods.  The batch method documentation
> >> > (http://code.google.com/appengine/docs/python/datastore/functions.html
> >> > andhttp://code.google.com/appengine/docs/python/memcache/functions.html)
> >> > does not mention any limits.
>
> >> You're right - we need to improve our documentation in that area. The 1MB
> >> limit applies to _all_ API calls.
>
> >> > Is there a documented limit on the number of entities per memcache
> >> > call?
>
> >> No.
>
> >> > BTW - There is a typo in
> >> >http://code.google.com/appengine/docs/python/memcache/overview.html#Q...
> >> > .
> >> > It says "In addition to quotas, the following limits apply to the use
> >> > of the Mail service:" instead of "Memcache service"
>
> >> Thanks for the heads-up.
>
> >> -Nick Johnson
>
> >> > On Jun 26, 7:28 am, "Nick Johnson (Google)" 
> >> > wrote:
> >> > > Hi tav,
>
> >> > > Batch puts aren't transactional unless all the entities are in the
> >> > > same entity group. Transactions, however, _are_ transactional, and the
> >> > > 1MB limit applies only to single API calls, so you can make multiple
> >> > > puts to the same entity group in a transaction.
>
> >> > > -Nick Johnson
>
> >> > > On Fri, Jun 26, 2009 at 8:53 AM, tav wrote:
>
> >> > > > Hey guys and girls,
>
> >> > > > I've got a situation where I'd have to "transactionally" update
> >> > > > multiple entities which would cumulatively be greater than the 1MB
> >> > > > datastore API limit... is there a decent solution for this?
>
> >> > > > For example, let's say that I start off with entities E1, E2, E3 
> >> > > > which
> >> > > > are all about 400kb each. All the entities are specific to a given
> >> > > > User. I grab them all on a "remote node" and do some calculations on
> >> > > > them to yield new "computed" entities E1', E2', and E3'.
>
> >> > > > Any failure of the remote node or the datastore is recoverable except
> >> > > > when the remote node tries to *update* the datastore... in that
> >> > > > situation, it'd have to batch the update into 2 separate .put() calls
> >> > > > to overcome the 1MB limit. And should the remote node die after the
> >> > > > first put(), we have a messy situation =)
>
> >> > > > My solution at the moment is to:
>
> >> > > > 1. Create a UserRecord entity which has a 'version' attribute
> >> > > > corresponding to the "latest" versions of the related entities for 
> >> > > > any
> >> > > > given User.
>
> >> > > > 2. Add a 'version' attribute to all the entities.
>
> >> > > > 3. Whenever the remote node creates the "computed" new set of
> >> > > > entities, it creates them all with a new version number -- applying
> >> > > > the same version for all the entities in the same "transaction".
>
> >> > > > 4. These new entities are actually .put() as totally separate and new
> >> > > > entities, i.e. they do not overwrite the old entities.
>
> >> > > > 5. Once a remote node successfully writes new versions of all the
> >> > > > entities relating to a User, it updates the UserRecord with

[google-appengine] Re: Inifite redirect loop on login

2009-07-17 Thread michael.maguire


I am seeing this same error today attempting to log in to Google App
Engine using a Google Apps account even though I am using the
http://appengine.google.com/a/yourdomain (actually
http://appengine.google.com/a/yourdomain.com) suggestion from above.

---
This web page has a redirect loop.

The web page at null has resulted in too many redirects. Clearing your
cookies for this site may fix the problem. If not, it is possibly a
server configuration issue and not a problem with your computer.

Here are some suggestions:
Reload this web page later.
Learn more about this problem.
---

On May 21, 10:39 am, "Nick Johnson (Google)" 
wrote:
> Hi jannick,
>
> Are you using a Google Apps account? If so, this is a known bug, which
> you can resolve by logging in 
> athttp://appengine.google.com/a/yourdomain(where 'yourdomain' is the
> domain name part of yourloginemail address).
>
> -Nick Johnson
>
>
>
> On Wed, May 20, 2009 at 8:32 PM, jannick  wrote:
>
> > Hi
>
> > When I try to log-in to the GAE dashboard/management app I end up in
> > an infiniteloopof redirects. I've seen this behavior since last
> > weekend, and from multiple computers, locations and browsers. Anyone
> > else experiencing this issue, or is it possible that my account has
> > somehow been setup wrong? (I havnt used the GAE account yet, aside
> > from exploring the interface).- Hide quoted text -
>
> - Show quoted text -
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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: Eating one's own dog food

2009-07-17 Thread kugutsumen

I am working on three toy projects using Google App Engine. I chose
GAE  because it
was the cheapest and most practical solution (no time wasted in sys
admin, installation, hardening, etc...). Working with GAE is a lot of
fun, I'm learning new things every day  and
I get to interact with some of the coolest engineers at Google. It's
unbelievable how much
they are giving back to the community (tons of open source projects
and libraries, Google
IO sessions...)

Amazon is garbage. a) I found their offering super expensive; b)
virtualization is a security and performance nightmare c) their
network infrastructure and international connectivity is really bad;
you talk about eating your dog food, Amazon can't even serve its own
ads and banners reliably, they take forever to load. Two weeks ago,
our basecamp and highrise was lagging like crazy... can you guess what
was the root cause? The static images are hosted on s3 and were taking
60 seconds to load.

For their initial proof of concept, Serge and Larry used a disparate
cluster of salvaged and borrowed computers. You can still take this
very same approach using AppScale, an open-source GAE implementation
(it's sponsored by Google) and it lets you run GAE on top of Amazon or
whatever else you have. You can also rent cheap Quad core servers with
8GB of RAM and 2TB of bandwidth from Hetzner for 40 EUR per month (I
use one of these as a staging server for bulk uploads)

On Jul 15, 11:53 pm, richard emberson 
wrote:
> Eating one's own dog 
> foodhttp://en.wikipedia.org/wiki/Eating_one's_own_dog_food
> or in this case:
> Using one's own cloud.
>
> Amazon' cloud is based upon the IT technology they use
> within Amazon.
> Salesforce.com's Force.com offering is what they used to
> build their CRM system.
>
> These cloud vendors "Eat their own dog food".
>
> If a cloud vendor does not use their cloud offering for
> their other products and/or internal systems, one
> would have to assume that the cloud is viewed as
> a technology ghetto within their own corporation - good
> enough for others but not for ourselves.
>
> So, concerning the Google App Engine, are other groups
> within Google clamoring to port or build their offerings
> on top of the App Engine? If so, please be specific, what
> Google products and infrastructure and what are the schedules
> for their hosting on GAE?
>
> Is the GAE group supporting the Google Docs group as they
> move to use GAE? How about gmail, will the Google Gmail
> group be relying on GAE support? I have not seen emails
> from either of those internal Google groups on the GAE
> mailing list. Lastly, when will Google search be supported
> by the GAE group;
>
> Will those groups have to live under the same quota restrictions
> while they evaluate using GAE?  If not, why not? If they
> are unreasonable for an internal evaluation, what makes them
> reasonable for an external evaluation?
>
> Evaluating whether or not GAE should be used for a particular
> application is not FREE even if one gets a very small slice
> of GAE resources with which to do the evaluation.
> Tens or hundreds of hours go into determine if GAE has
> the right characteristics and quotas that limit how fast one
> can work makes it worse. (Yes one can $$ for higher quotas,
> but during the evaluation phase $$ is out of the question.)
>
> Richard Emberson
>
> --
> Quis custodiet ipsos custodes
--~--~-~--~~~---~--~~
You 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: Webservice authentication (Python)

2009-07-17 Thread epb

Anyone who can help me on this? Like mentioned above I am able to save
the cookie using the appengine_rpc module, but the saved cookie is not
used properly as I am redirected again :(

I tried the custom version too, using Tony's code to get the cookie
and capture it in memory. But when I try to access the server with the
cookie in my CookieJar, the login-page is returned. My code:

cookiejar = cookielib.CookieJar()
request = urllib2.Request(target)
cookiejar.extract_cookies(response, request)
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar))
f = opener.open(request)

As mentioned, a handle to the login-page is returned in the variable
'f'. If I print the cookiejar I can see the cookie, so it seems that
the cookie is fetched alright:
>>>print cookiejar
]>

Do I need to send the cookie to the server in another way? Sorry about
all these questions, but I can't seem to find documentation on this..

On Jul 16, 11:22 am, epb  wrote:
> Nick, I tried running the following code, having added
> save_cookies=True
>
> -
>
> def passwdFunc():
>     return ('my_email','my_passwd')
>
> rpcServer = appengine_rpc.HttpRpcServer
> ('myapp.appspot.com',passwdFunc,None,'myAppName',save_cookies=True)
> blah = rpcServer.Send('/')
>
> -
>
> It still gives me a 302 error:
>
> -
>
> Server: myapp.appspot.com
> Sending HTTP request:
> POST /? HTTP/1.1
> Host: myapp.appspot.com
> X-appcfg-api-version: 1
> Content-type: application/octet-stream
>
> Got http error, this is try #1
> Got 302 redirect. 
> Location:https://www.google.com/accounts/ServiceLogin?service=ah&continue=http...
> Saving authentication cookies to ~/.appcfg_cookies
> Sending HTTP request:
> POST /? HTTP/1.1
> Host: myapp.appspot.com
> X-appcfg-api-version: 1
> Content-type: application/octet-stream
>
> Got http error, this is try #2
>
> -
>
> Trying it again it now loads the cookies like it's supposed to, but I
> still get a redirect in the end (now to myapp.appspot.com??):
>
> -
>
> Loaded authentication cookies from ~/.appcfg_cookies
> Server: myapp.appspot.com
> Sending HTTP request:
> POST /? HTTP/1.1
> Host: myapp.appspot.com
> X-appcfg-api-version: 1
> Content-type: application/octet-stream
>
> Got http error, this is try #1
> Got 302 redirect. Location:http://myapp.appspot.com/
> Sending HTTP request:
> POST /? HTTP/1.1
> Host: myapp.appspot.com
> X-appcfg-api-version: 1
> Content-type: application/octet-stream
>
> Got http error, this is try #2
>
> -
>
> Please, let me know what I am doing wrong. Thanks in advance!
>
> On Jul 16, 9:23 am, "Nick Johnson (Google)" 
> wrote:
>
> > On Wed, Jul 15, 2009 at 9:55 PM, epb wrote:
>
> > > On Jul 15, 4:05 pm, Tony  wrote:
> > >> The response has the "Set-cookie" header set, which will cause the
> > >> user's browser to save the cookie and then present it on the next
> > >> request (after redirected by the 302).  In my code I've opted not to
> > >> follow the redirect, and extracted the cookie myself, because it's the
> > >> urlfetch service doing the request, not the user.  You can then either
> > >> return a response to the user with a "Set-cookie" HTTP header (causing
> > >> their browser to save the cookie), or handle it some other way (return
> > >> it in the body and set the cookie with Javascript, for example).
>
> > >> I think I misunderstood your original question, though, and you're
> > >> looking for something different.  You want to get an authorization
> > >> cookie and then use it to make repeated requests with urlfetch, not
> > >> with a browser?  If that's the case, you're going to want to capture
> > >> the "Set-cookie" header from the second response, and supply that in
> > >> future requests (setting the "Cookie" header for urlfetch).
>
> > > Yes, that is exactly what I want :) My client app. is not browser-
> > > based. I guess I'll just use your method then.. appengine_rpc must be
> > > intended for browser apps only, as it does nothing to capture the
> > > auth. cookie. I could of course extend the appengine_rpc module to
> > > capture the cookie, but the module uses urllib2.OpenerDirector.open()
> > > to open URLs and this is perhaps not the way to go in my case? I am
> > > not sure what the difference is between urlfetch() and open() it
> > > seems like I can get the headers (and hereby the cookie) by using info
> > > () on the response from open().
>
> > appengine_rpc is intended for any Python app. It captures the cookie
> > by using a CookieJar, which does the capturing/sending of the cookie.
>
> > -Nick Johnson
>
> > >> Basically, urlfetch will follow redirects but it won't handle cookies
> > >> automatically - so what's happening is it's ignoring the "Set-cookie"
> > >> header and following the redirect, and being denied because it's not
> > >> supplying a cookie.
>
> > >> On Jul 15, 2:58 pm, epb  wrote:
>
> > >> > I can see why Tony's version would work. His "algorithm" has two
> > >> > steps:
>
> > >> > 1. Get the authorization token using 

[google-appengine] Re: Globally monotonic counter

2009-07-17 Thread Andy Freeman

You're mis-parsing the sentence.  Note that they even tell you what
they mean by "take care of messy details".

Let's look at another example.  MS's Visual {whatever} documentation
claims that it makes programming easy.  Do you think that that claim
implies that using said product will let anyone produce an O(N)
solution to an NP-complete problem?

> > I worked in a distributed systems group for many years, so I know that
> many of these problems are simply inherent to distributed systems.  It
> doesn't disturb me that they exist.

You're complaining that GAE doesn't solve them.

> What bothers me is the way these
> issues are broadly *ignored* by GAE's documentation.

GAE documentation doesn't teach you how to program.  It doesn't teach
you how to make money with a web site.  It doesn't even tell you how
to do things with other systems so you can compare.  It tells you how
to do things with GAE.

Sure, I'd like better tutorials.  But, if I had a choice between
documentation that makes it possible to use a new subsystem and more
information on distributed systems programming with a GAE twist, I'll
take the former every time.




On Jul 16, 11:40 pm, n8gray  wrote:
> On Jul 16, 10:35 pm, Andy Freeman  wrote:
>
> > >                                              I'm starting to think that 
> > > the "GAE takes
> > > care of the messy details of distributed systems programming" claim is
> > > a bit overstated...
>
> > Global clock consistency requires very expensive clocks accessible
> > from every server with known latency (and even that's a bit dodgy).
> > AFAIK, GAE doesn't provide that, but who does?
>
> > GAE doesn't do the impossible, but also doesn't say that it does.  WRT
> > the latter, would you really prefer otherwise?
>
> But that's just it -- in many places it's claimed that GAE makes it
> all a cakewalk.  From the datastore docs:
>
> """
> Storing data in a scalable web application can be tricky. A user could
> be interacting with any of dozens of web servers at a given time, and
> the user's next request could go to a different web server than the
> one that handled the previous request. All web servers need to be
> interacting with data that is also spread out across dozens of
> machines, possibly in different locations around the world.
>
> Thanks to Google App Engine, you don't have to worry about any of
> that. App Engine's infrastructure takes care of all of the
> distribution, replication and load balancing of data behind a simple
> API—and you get a powerful query engine and transactions as well.
> """
>
> You could argue that that's not claiming to do the impossible, but
> "you don't have to worry about any of that" is certainly not true.
> Nowhere in the documentation is there a discussion of the kinds of
> subtle gotchas that you need to be aware of when programming for this
> kind of system.  It's all just "golly isn't this so gosh-darn easy!"
> You have to go digging to find the article on transaction isolation
> where you find out that your queries can return results that, um,
> don't match your queries.  And AFAICT you *do* have to worry about
> subsequent requests being handled by different servers, since there
> doesn't seem to be any guarantee that the datastore writes made in one
> request will be seen in the next.  Memcache doesn't have transactions,
> so it seems like guaranteeing coherence with the datastore is tricky.
>
> I worked in a distributed systems group for many years, so I know that
> many of these problems are simply inherent to distributed systems.  It
> doesn't disturb me that they exist.  What bothers me is the way these
> issues are broadly *ignored* by GAE's documentation.  If I wasn't a
> bit savvy about distributed systems I probably wouldn't have realized
> that clock skew could cause problems, and nothing I read in GAE's docs
> would have helped me figure it out.  So no, I don't want GAE to claim
> to do the impossible, I want them to *stop* claiming to do the
> impossible.  I would love to see some articles about the pitfalls of
> the system and how to avoid them or mitigate them.  The transaction
> isolation article is great in that respect -- I hope people at Google
> are planning more along those lines.
>
> Cheers,
> -n8
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-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] updated roadmap

2009-07-17 Thread bFlood

I see the roadmap was updated, any chance we could get some more
explanation on some of the new features. specifically, what is meant
by:

Support for mapping operations across datasets

Roadmap
http://code.google.com/appengine/docs/roadmap.html

cheers
brian
--~--~-~--~~~---~--~~
You 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: phpAdmin clone for Google's datastore

2009-07-17 Thread GregF

I modified the console from the development SDK so administrators can
run ad-hoc code from their browser. This lets you do anything you
want, even more powerful than phpAdmin.
--~--~-~--~~~---~--~~
You 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: Information regarding 2 July 2009 outage

2009-07-17 Thread GregF

THAT is what we needed - thanks Chris for giving a detailed
description of the cause, resolution and follow-up. No-one likes
writing these things because they are basically detailing your own
failures, so Chris (and Google) deserve kudos for releasing this.

One of the frustrating things about Appengine is the paucity of
information about it. There is no reliable information about it's
architecture, the number of real applications that use it, or even the
requests per second it processes. It is easy to imagine that it
actually runs on a couple of boxes under someone's desk, and that this
incident was caused by the cleaner knocking the power cord.

So in fronting up about the cause of the outage, Google have actually
reassured me about their whole system. Now I know there are serious
monitoring systems in place, real people (SREs) onsite at 6:44am,
backup datacentres, and some serious decision-making skills in charge
(recognising data consistency is more important that uptime). You have
shown that you followed through with a detailed incident analysis and
have learned more about your system - and how it could be better. A
previous poster mentions 99% uptime - I don't know how accurate this
is, but to some extent I don't care if I know Google is learning from
each outage. That means uptime will trend in the right direction.

Please give us similarly detailed post-mortems in the future. We've
trusted you with our apps, please trust us with more information.
It'll also go a long way to answering the accusations of opaqueness
surrounding appengine - the Register's jibes about the "Chocolate
Factory" are close to the bone. And I'd love to know how many requests
per second you process...
--~--~-~--~~~---~--~~
You 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: phpAdmin clone for Google's datastore

2009-07-17 Thread Marcel Overdijk

Yep, I want to use it for adding (inserting) data.
Maybe a feature for the future...

On Jul 16, 5:46 pm, NealWalters  wrote:
> There is a tool called "Data Viewer" in the GAE Admin Console.  Have
> you seen it?
> It displays data rows (10 at a time I think), allows you to scroll
> forward, allow you enter your own GQL command, and allows you to
> update and delete.
>
> The only trick is that it only works with data already stored.  So for
> example, if you define two tables (classes inheriting from db.Model),
> in your code, and only store one of them, you will only see that one
> table (that actually has data stored) in the Data Viewer.  If later,
> you delete all those rows, you will no longer see that table/patter in
> the viewer, until you store a new row in your code.
>
> Neal Walters
--~--~-~--~~~---~--~~
You 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
-~--~~~~--~~--~--~---