[appengine-java] Re: sending mail in google app engine in java

2010-02-19 Thread lakshmi
hi,

My special thanks to Alex,Conor,Sreekanth,Henning and Ikai.

Finally i solved my problem.

I send emails from my application.

-
Here is the process.

My code is correct and don't send mails from that application.

create another application.redirect from that application to the first
application with full address as follows.

---

 resp.sendRedirect(http://yourapp-id.appspot.com/your target
file like html or servlet);

---

It will work surely.If it is not working correctly,try and try you
will get success..

All the best,

Lakshmi.

On Feb 18, 6:03 pm, lakshmi sowji.ap...@gmail.com wrote:
 Hi Alex,

    Let me say sowjanya1,and sowjanya2 are two apps in GAE.How can i
 test my mails in sowjanay2,where i send them from sowjanya1.Tell me
 clearly

 Thanks,
 Lakshmi.

 On Feb 18, 5:03 pm, Alexander Arendar alexander.aren...@gmail.com
 wrote:



  You don't need any third party server.
  Just reserve one of your deployed apps as your test server and test all your
  mail-sending stuff there.
  As Conor already explained you can't send mails testing locally.

  On Thu, Feb 18, 2010 at 2:00 PM, lakshmi sowji.ap...@gmail.com wrote:
   Thanks cowper,
   really you did a great help to me.Nearly i am searching for this
   clarity for two weeks.Thank you very much.
   But what can i do for sending emails from google app engine.
   Is there any need with third party server.can you mention those
   details also please.

   Thanks,
   Lakshmi.
   On Feb 18, 3:48 pm, Conor Power iamco...@gmail.com wrote:
The admin is an email address for some configured as an application
developer from the application console.

If you're testing from local SDK the email does not get sent so that
   could
be the issue. However for me I see log statements to the effect that the
email is being sent so you should be seeing the same unless you have
   logging
configured to output very little.

cowper

On Thu, Feb 18, 2010 at 8:14 AM, lakshmi sowji.ap...@gmail.com wrote:
 Hi Sreekanth,

 Thanks for your reply.Admin address means with which we enter in to
 admin console.Isn't it.
 That is my e-mail address, right.Even  that too not working.can you
 tell me clearly,please.

 On Feb 18, 12:12 pm, Sreekanth Raju sraj...@gmail.com wrote:
  in order to send mail in app engine, from address should be either
   admin
 or
  developer email id

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

- Show quoted text -

   --
   You received this message because you are subscribed to the Google Groups
   Google App Engine for Java group.
   To post to this group, send email to
   google-appengine-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2b­­unsubscr...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.-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 for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] good workaround for securely accessing my domain?

2010-02-19 Thread Houston startup coder
What solutions are people trying when they have an app running under
their domain and they need HTTPS functionality?  I've starred the
issue here:
http://code.google.com/p/googleappengine/issues/detail?id=792q=httpscolspec=ID%20Type%20Status%20Priority%20Stars%20Owner%20Summary%20Log%20Component

I noticed there that miGlanz had an interesting solution although it's
a bit problematic.  So again, what are people doing for security when
they need to implement custom authentication on GAE and are running
the app under their own domain?  Do I try a nonstandard approach for
typical Java web applications and simply resort to sending a home-
brewed encrypted message on every request?

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



[appengine-java] Re: web.xml Question in GAE

2010-02-19 Thread Ian Marshall
Hello there,

A fellow Wicket user! I use the following filter mappings in my
web.xml, which work for me; they might work for you too...

  filter-mapping
filter-nameWicketApplication/filter-name
url-pattern/wicket/*/url-pattern
  /filter-mapping

  !--  This must be after the similar block for /wicket/*  --
  filter-mapping
filter-nameWicketApplication/filter-name
url-pattern/*/url-pattern
  /filter-mapping


Do let us know how you get on.

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



[appengine-java] Re: Editing records in datastore (using JAVA)

2010-02-19 Thread Manjoor
datanucleus,

I have created SMSUser class like this



@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class SMSUser
{

  @PrimaryKey
  @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
  public Key UserId;

  @Persistent
  public User sUser;

  @Persistent
  public String ContractPerson;


  @Persistent
  public String Company;

  @Persistent
  public String Address;

.


What i have changed is, instead of get/set method, i have used public
members. Does it make any difference???


On Feb 19, 1:49 pm, datanucleus andy_jeffer...@yahoo.com wrote:
  PS: I have added pm.close(); after pm.makePersistent(u);
  still it does not update the record...

 Why should it ? You have gone and updated fields directly so how does
 the object *know* that it has been updated ? Either mark the class
 updating the fields as @PersistenceAware, or update via setters

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



[appengine-java] Re: Editing records in datastore (using JAVA)

2010-02-19 Thread Manjoor
Dear Alexander Arendar ,

I have tried it. My listing deleting and adding works fine... Just
getting stuck in editing part..



On Feb 19, 1:53 pm, Alexander Arendar alexander.aren...@gmail.com
wrote:
 Hi Manjoor,

 you should also call after all these pm.close() and you'll see the result :)
 JDO persist the object really at the moment when you are closing the
 persistence manager.



 On Fri, Feb 19, 2010 at 7:44 AM, Manjoor manjoora...@gmail.com wrote:
  Thanks for the reply but it does not work. Have a look at this.

  I have checked it in debugger, It successfuly fetch desired record.
  but after changing it does not saved. No error :(

   SMSUser u = pm.getObjectById(SMSUser.class,tu.UserId);
                         u.ContractPerson =
  req.getParameter(ContractPerson);
                         u.Company = req.getParameter(Company);
                         u.Address = req.getParameter(Address);
                         u.Phone = req.getParameter(Phone);
                         pm.makePersistent(u);

  On Feb 19, 12:15 am, Jake jbrooko...@cast.org wrote:
   The Google App Engine instructions focus on JDO for the datastore
   implementation.  JDO doesn't have the traditional update function.
   You either modify it and close the persistence manager that returned
   the object (it knows it changed and updates accordingly) or you just
   persist the object again with the same ID to overwrite it.

   See:
 http://code.google.com/appengine/docs/java/datastore/creatinggettinga...

   I believe JPA has an update feature, but if you're new to it I suggest
   JDO since it has better documentation in GAE.

   Jake

   On Feb 18, 10:55 am, Manjoor manjoora...@gmail.com wrote:

I have been searching for sample java program to add,editand delete
records. I found many example showing how to add and delete records
but not a single about editing. Do anyone have a sample source link to
show how toedita record ???- Hide quoted text -

   - Show quoted text -

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

 - Show quoted text -

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



Re: [appengine-java] Re: web.xml Question in GAE

2010-02-19 Thread nicolas melendez
Hi now it works, but there was a strange behaviour here (maybe a bug)  but i
can't reproduce it anymore.
The problem was that /* url-pattern didn't work, but /mp3Rapidshare/*
worked.

Here is how i Fix it:

the original web.xml was:

?xml version=1.0 encoding=utf-8?
web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
xmlns=http://java.sun.com/xml/ns/javaee;
xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd;
xsi:schemaLocation=http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5
filter
filter-name*WicketFilter*/filter-name
filter-classorg.apache.wicket.protocol.http.*WicketFilter*
/filter-class
init-param
param-nameapplicationClassName/param-name
param-valuenm.mp3rapidshare.WicketApplication/param-value
/init-param
/filter

filter-mapping
filter-name*WicketFilter*/filter-name
url-pattern/mp3Rapidshare/*/url-pattern
/filter-mapping

filter-mapping
filter-name*WicketFilter*/filter-name
url-pattern/*/url-pattern
/filter-mapping
/web-app

here the filter-name and the filter-class have the same name at the end.
So i changed to filter-name *WicketFilter1* /filter-name and it worked!

the new web.xml:
?xml version=1.0 encoding=utf-8?
web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
xmlns=http://java.sun.com/xml/ns/javaee;
xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd;
xsi:schemaLocation=http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5
filter
filter-name*WicketFilter1*/filter-name
filter-classorg.apache.wicket.protocol.http.*WicketFilter*
/filter-class
init-param
param-nameapplicationClassName/param-name
param-valuenm.mp3rapidshare.WicketApplication/param-value
/init-param
/filter

filter-mapping
filter-name*WicketFilter1*/filter-name
url-pattern/mp3Rapidshare/*/url-pattern
/filter-mapping

filter-mapping
filter-name*WicketFilter1*/filter-name
url-pattern/*/url-pattern
/filter-mapping
/web-app

And then i tried to reproduce a possible Bug, Replacing the web.xml with the
last from muy SVN:
The same Web.xml that didn't work, now works: (Strange!!)

?xml version=1.0 encoding=utf-8?
web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
xmlns=http://java.sun.com/xml/ns/javaee;
xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd;
xsi:schemaLocation=http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5
filter
filter-name*WicketFilter*/filter-name
filter-classorg.apache.wicket.protocol.http.*WicketFilter*
/filter-class
init-param
param-nameapplicationClassName/param-name
param-valuenm.mp3rapidshare.WicketApplication/param-value
/init-param
/filter

filter-mapping
filter-nameWicketFilter/filter-name
url-pattern/mp3Rapidshare/*/url-pattern
/filter-mapping

filter-mapping
filter-name*WicketFilter*/filter-name
url-pattern/*/url-pattern
/filter-mapping
/web-app

But, now it works, so i can continue developing.
So Thanks a lot
NM









On Fri, Feb 19, 2010 at 8:18 AM, Ian Marshall ianmarshall...@gmail.comwrote:

 Hello there,

 A fellow Wicket user! I use the following filter mappings in my
 web.xml, which work for me; they might work for you too...

  filter-mapping
filter-nameWicketApplication/filter-name
url-pattern/wicket/*/url-pattern
  /filter-mapping

  !--  This must be after the similar block for /wicket/*  --
  filter-mapping
filter-nameWicketApplication/filter-name
 url-pattern/*/url-pattern
  /filter-mapping


 Do let us know how you get on.

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



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



Re: [appengine-java] Re: web.xml Question in GAE

2010-02-19 Thread nicolas melendez
Ian Marshall
Thanks for your reply!
NM


On Fri, Feb 19, 2010 at 9:52 AM, nicolas melendez nfmelen...@gmail.comwrote:

 Hi now it works, but there was a strange behaviour here (maybe a bug)  but
 i can't reproduce it anymore.
 The problem was that /* url-pattern didn't work, but /mp3Rapidshare/*
 worked.

 Here is how i Fix it:

 the original web.xml was:


 ?xml version=1.0 encoding=utf-8?
 web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
 xmlns=http://java.sun.com/xml/ns/javaee;
 xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd;
 xsi:schemaLocation=http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5
 filter
 filter-name*WicketFilter*/filter-name
 filter-classorg.apache.wicket.protocol.http.*WicketFilter*
 /filter-class
 init-param
 param-nameapplicationClassName/param-name
 param-valuenm.mp3rapidshare.WicketApplication/param-value
 /init-param
 /filter

 filter-mapping
 filter-name*WicketFilter*/filter-name
 url-pattern/mp3Rapidshare/*/url-pattern
 /filter-mapping

 filter-mapping
 filter-name*WicketFilter*/filter-name

 url-pattern/*/url-pattern
 /filter-mapping
 /web-app

 here the filter-name and the filter-class have the same name at the
 end.
 So i changed to filter-name *WicketFilter1* /filter-name and it
 worked!

 the new web.xml:

 ?xml version=1.0 encoding=utf-8?
 web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
 xmlns=http://java.sun.com/xml/ns/javaee;
 xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd;
 xsi:schemaLocation=http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5
 filter
 filter-name*WicketFilter1*/filter-name

 filter-classorg.apache.wicket.protocol.http.*WicketFilter*
 /filter-class
 init-param
 param-nameapplicationClassName/param-name
 param-valuenm.mp3rapidshare.WicketApplication/param-value
 /init-param
 /filter

 filter-mapping
 filter-name*WicketFilter1*/filter-name
 url-pattern/mp3Rapidshare/*/url-pattern
 /filter-mapping

 filter-mapping
 filter-name*WicketFilter1*/filter-name

 url-pattern/*/url-pattern
 /filter-mapping
 /web-app

 And then i tried to reproduce a possible Bug, Replacing the web.xml with
 the last from muy SVN:
 The same Web.xml that didn't work, now works: (Strange!!)


 ?xml version=1.0 encoding=utf-8?
 web-app xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
 xmlns=http://java.sun.com/xml/ns/javaee;
 xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd;
 xsi:schemaLocation=http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd; version=2.5
 filter
 filter-name*WicketFilter*/filter-name
 filter-classorg.apache.wicket.protocol.http.*WicketFilter*
 /filter-class
 init-param
 param-nameapplicationClassName/param-name
 param-valuenm.mp3rapidshare.WicketApplication/param-value
 /init-param
 /filter

 filter-mapping
 filter-nameWicketFilter/filter-name
 url-pattern/mp3Rapidshare/*/url-pattern
 /filter-mapping

 filter-mapping
 filter-name*WicketFilter*/filter-name

 url-pattern/*/url-pattern
 /filter-mapping
 /web-app

 But, now it works, so i can continue developing.
 So Thanks a lot
 NM










 On Fri, Feb 19, 2010 at 8:18 AM, Ian Marshall ianmarshall...@gmail.comwrote:

 Hello there,

 A fellow Wicket user! I use the following filter mappings in my
 web.xml, which work for me; they might work for you too...

  filter-mapping
filter-nameWicketApplication/filter-name
url-pattern/wicket/*/url-pattern
  /filter-mapping

  !--  This must be after the similar block for /wicket/*  --
  filter-mapping
filter-nameWicketApplication/filter-name
 url-pattern/*/url-pattern
  /filter-mapping


 Do let us know how you get on.

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




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



[appengine-java] Re: Editing records in datastore (using JAVA)

2010-02-19 Thread Manjoor
datanucleus,

Please can you show me how a setter tell JDO that it is called and JDO
need to update it???
I am sorry but i am new to java. (Just for app-engine)



On Feb 19, 1:49 pm, datanucleus andy_jeffer...@yahoo.com wrote:
  PS: I have added pm.close(); after pm.makePersistent(u);
  still it does not update the record...

 Why should it ? You have gone and updated fields directly so how does
 the object *know* that it has been updated ? Either mark the class
 updating the fields as @PersistenceAware, or update via setters

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



[appengine-java] Map Reduce

2010-02-19 Thread John Patterson
Hi, I am curious about what will be possible with the planned map  
reduce functionality.  Could this be used as the basis of a free text  
search or facetted break down of search results?


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



[appengine-java] Re: Editing records in datastore (using JAVA)

2010-02-19 Thread Manjoor
Dear Sushama Khadilkar,

I am trying my hand in JDO..I have not thought to using JPA yet


On Feb 19, 12:10 pm, Sushama Khadilkar sush.khadil...@gmail.com
wrote:
 If you want to update the record using EntityManager , then just use
 em.merge(Object).
 This the link to the 
 Example::http://www.javabeat.net/articles/81-jpa-in-netbeans-61-4.html

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



[appengine-java] Re: web.xml Question in GAE

2010-02-19 Thread Ian Marshall
You're welcome. It's amazing how a prod from someone else can get the
coding moving again, even if the prod was not completely on target!

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



Re: [appengine-java] Re: vs-accounting.appspot.com - datastore viewer error

2010-02-19 Thread aswath satrasala
Hello Toby
I am still not able to use the 'Datastore Viewer'.
It simply displays message
Server Error

A server error has occurred.

I cleaned up my entities that are using PhoneNumber, Email etc.

-Aswath

On Sat, Feb 6, 2010 at 1:06 AM, Toby Reyelts to...@google.com wrote:

 You have an empty property of type e-mail, and that makes the datastore
 viewer unhappy. You need to either use a different type that can be
 non-empty (like String), or have non-empty e-mails.


 On Thu, Feb 4, 2010 at 10:25 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 My application is running fine.

 I am still getting the datastore viewer error.What can we do in this
 scenario.  How can we get support?

 -Aswath


 On Mon, Feb 1, 2010 at 12:36 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 I am still not able to use the DataStore viewer for my app-id
 'vs-accounting'

 Thanks
 -Aswath


 On Thu, Jan 28, 2010 at 11:08 AM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Local file:
 datastore-indexes

 !-- Used 2 times in query history --
 datastore-index kind=Tenant ancestor=true source=auto
 property name=tenants_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=Party ancestor=true source=auto
 property name=partys_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=SecurityGroup ancestor=true source=auto

 property name=secGrpList_INTEGER_IDX direction=asc/
 /datastore-index

 datastore-index kind=PartyRole ancestor=true source=auto
 property name=partyRoles_INTEGER_IDX direction=asc/
 /datastore-index

 /datastore-indexes


 Production:
 Party   partys_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 PartyRole   partyRoles_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 SecurityGroup   secGrpList_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 Tenant   tenants_INTEGER_IDX ▲
 Includes ancestors

 12hrs ago , the secGrpList_INTEGER_IDX  was not shown on the production
 admin console.  Now, it is showing up.

 The datastore viewer is still responding back error page.

 -Aswath


 On Thu, Jan 28, 2010 at 2:48 AM, Ikai L (Google) ika...@google.comwrote:

 What does you local indexes file look like? Can you post the indexes
 listed in your production admin console?

 On Tue, Jan 26, 2010 at 11:24 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 Further observations made while testing the app.  I am not able to
 write entities to the datastore.  Upon examining the logs, I found the
 following error.

 com.veersoft.action.CreateTenantAction doCreate: 
 com.google.appengine.api.datastore.DatastoreNeedIndexException:

 no matching index found..
 datastore-index kind=SecurityGroup ancestor=true source=manual
 property name=secGrpList_INTEGER_IDX direction=asc/







 /datastore-index

 The application is fine on the local develpment server.

 -Aswath


 On Tue, Jan 26, 2010 at 8:51 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello,
 My app-id is vs-accounting.

 I login into appengine.google.com. I choose the above application.
 Then I click on the datastore viewer.
 I get the error

  Server Error

 A server error has occurred.

 Return to Applications screen » https://appengine.google.com/

 -Aswath


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




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

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




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


  --
 You received this message because you are subscribed to the Google Groups
 

Re: [appengine-java] update to sdk1.3.1

2010-02-19 Thread Miguel Méndez
No, it won't auto-update today.  The following link explains how to switch
the SDK that a project is using:
http://code.google.com/eclipse/docs/using_sdks.html.

On Thu, Feb 18, 2010 at 11:46 PM, AJ Chen ajc...@web2express.org wrote:

 I ran an update from eclipse. The sdk1.3.1 is installed in the
 eclipse/plugin dir, but the sdk in my existing GAE project still points to
 the old version 1.3.0.  Should the update automatically update the existing
 project? if not, how to change it manually?
 thanks,
 -aj

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




-- 
Miguel

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



[appengine-java] A List property - Can we filter 'null' and '[null]' values separately ?

2010-02-19 Thread vbart
Hello,

I'm using low-level datastore API and its Query class to filter
entities.
I put two entities to datastore: the first has set a property 'list'
to null and the second has the same property set to [null] (a list
containing one null value).

The following query will find both of them - that's ok:
  new Query(MyEntity).addFilter( list, Query.FilterOperator.EQUAL,
null)

But is there a way (using GAE API only) to filter only the first
entity or only the second one ?
The full code is on my blog: 
http://vaclavb.blogspot.com/2010/02/lists-and-nulls-in-google-app-engine.html

Vaclav

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



Re: [appengine-java] Re: vs-accounting.appspot.com - datastore viewer error

2010-02-19 Thread Toby Reyelts
You still have phone entities that are empty.

On Fri, Feb 19, 2010 at 8:40 AM, aswath satrasala 
aswath.satras...@gmail.com wrote:

 Hello Toby
 I am still not able to use the 'Datastore Viewer'.
 It simply displays message

 Server Error

 A server error has occurred.

 I cleaned up my entities that are using PhoneNumber, Email etc.

 -Aswath

 On Sat, Feb 6, 2010 at 1:06 AM, Toby Reyelts to...@google.com wrote:

 You have an empty property of type e-mail, and that makes the datastore
 viewer unhappy. You need to either use a different type that can be
 non-empty (like String), or have non-empty e-mails.


 On Thu, Feb 4, 2010 at 10:25 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 My application is running fine.

 I am still getting the datastore viewer error.What can we do in this
 scenario.  How can we get support?

 -Aswath


 On Mon, Feb 1, 2010 at 12:36 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 I am still not able to use the DataStore viewer for my app-id
 'vs-accounting'

 Thanks
 -Aswath


 On Thu, Jan 28, 2010 at 11:08 AM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Local file:
 datastore-indexes

 !-- Used 2 times in query history --
 datastore-index kind=Tenant ancestor=true source=auto
 property name=tenants_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=Party ancestor=true source=auto
 property name=partys_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=SecurityGroup ancestor=true
 source=auto

 property name=secGrpList_INTEGER_IDX direction=asc/
 /datastore-index

 datastore-index kind=PartyRole ancestor=true source=auto
 property name=partyRoles_INTEGER_IDX direction=asc/
 /datastore-index

 /datastore-indexes


 Production:
 Party   partys_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 PartyRole   partyRoles_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 SecurityGroup   secGrpList_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 Tenant   tenants_INTEGER_IDX ▲
 Includes ancestors

 12hrs ago , the secGrpList_INTEGER_IDX  was not shown on the
 production admin console.  Now, it is showing up.

 The datastore viewer is still responding back error page.

 -Aswath


 On Thu, Jan 28, 2010 at 2:48 AM, Ikai L (Google) ika...@google.comwrote:

 What does you local indexes file look like? Can you post the indexes
 listed in your production admin console?

 On Tue, Jan 26, 2010 at 11:24 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 Further observations made while testing the app.  I am not able to
 write entities to the datastore.  Upon examining the logs, I found the
 following error.

 com.veersoft.action.CreateTenantAction doCreate: 
 com.google.appengine.api.datastore.DatastoreNeedIndexException:

 no matching index found..
 datastore-index kind=SecurityGroup ancestor=true source=manual
 property name=secGrpList_INTEGER_IDX direction=asc/








 /datastore-index

 The application is fine on the local develpment server.

 -Aswath


 On Tue, Jan 26, 2010 at 8:51 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello,
 My app-id is vs-accounting.

 I login into appengine.google.com. I choose the above application.
 Then I click on the datastore viewer.
 I get the error

  Server Error

 A server error has occurred.

 Return to Applications screen » https://appengine.google.com/

 -Aswath


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




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

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




  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To post to this group, send email to
 google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 

[appengine-java] Re: JavaMail doesn't work

2010-02-19 Thread A1programmer
JavaMail works fine once the app is deployed to App Engine.

http://code.google.com/appengine/docs/java/mail/usingjavamail.html


On Feb 18, 10:08 am, Raghu visuma...@gmail.com wrote:
 Hi All,

 I struck at JavaMail application. I tested remotely and locally also.
 It's not working. please help me. Please share a simple servlet if
 possible

 thanks

 raghu

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



Re: [appengine-java] Re: web.xml Question in GAE

2010-02-19 Thread Don Schwarz
I think the problem is that you had an index.html file in your web
application, and static files always override filters and servlets in App
Engine.  See the second paragraph of:

http://code.google.com/appengine/docs/java/gettingstarted/staticfiles.html

You can either remove the index.html (sounds like that's what you did,
possibly without being aware of it), or you can specify your own
welcome-file-list that doesn't include index.html.

On Fri, Feb 19, 2010 at 7:30 AM, Ian Marshall ianmarshall...@gmail.comwrote:

 You're welcome. It's amazing how a prod from someone else can get the
 coding moving again, even if the prod was not completely on target!

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



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



Re: [appengine-java] A List property - Can we filter 'null' and '[null]' values separately ?

2010-02-19 Thread Scott Hernandez
To summarize the issue, you cannot search for a null (list) if you
store a null value in any instance of that (list) property. This is
due to the way indexing is done for lists/arrays in the datastore.

The short answer is no. You will have to store another property as a
marker that you have a null list/array rather than a list/array that
contains a null entry.

In Objectify (http://code.google.com/p/objectify-appengine) we have a
feature that doesn't store null entries for @Embedded
collection/arrays; instead we store another property which keeps track
of which entries in that collection are null. Then you can search for
any collection that has null entries, but at the moment you can't
search for a null/empty collection (since we don't store them, or any
marker property indicating the difference between null/empty for that
collection). We have plans to add support for differentiating between
null/empty collections in queries, and it will be pretty easy to use,
but we are waiting on more people needing that feature.

Here are some discussions relating directly to this issue on the
Objectify group:
http://groups.google.com/group/objectify-appengine/browse_thread/thread/c05efb6943387eb4

On Fri, Feb 19, 2010 at 7:36 AM, vbart vaclav.barta...@spolecne.cz wrote:
 Hello,

 I'm using low-level datastore API and its Query class to filter
 entities.
 I put two entities to datastore: the first has set a property 'list'
 to null and the second has the same property set to [null] (a list
 containing one null value).

 The following query will find both of them - that's ok:
  new Query(MyEntity).addFilter( list, Query.FilterOperator.EQUAL,
 null)

 But is there a way (using GAE API only) to filter only the first
 entity or only the second one ?
 The full code is on my blog: 
 http://vaclavb.blogspot.com/2010/02/lists-and-nulls-in-google-app-engine.html

 Vaclav

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



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



Re: [appengine-java] Editing records in datastore (using JAVA)

2010-02-19 Thread Scott Hernandez
If you would like a very simple interface to the app engine datastore
(not JPA/JDO) then Objectify might be for you. It doesn't sound like
you need to use JDO/JPA. Here is an example of exactly what you want:
http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify#Basic_Operations:_Get,_Put,_Delete

Notice that the Car is created, stored, then (can be) retrieved,
changed, and stored again:

Car porche = new Car(2FAST, red);
ofy.put(porche);

... you can use the same instance, or get it at another time; it will
be the same object

// Change some data and write it
porche.color = blue;
ofy.put(porche);

The simplicity is that you only store (put) and retrieve (get) objects
from the datastore. There is no disconnected state, or any issues
therein (no merging or reconnecting existing objects to some manager).
It is simple, easy, and works with regular (POJO) objects. There isn't
any special gotchas or explicit order to storing parent or children
(just that you do :) . it works just as you should expect a simple
persistence framework to work.

On Thu, Feb 18, 2010 at 7:55 AM, Manjoor manjoora...@gmail.com wrote:
 I have been searching for sample java program to add, edit and delete
 records. I found many example showing how to add and delete records
 but not a single about editing. Do anyone have a sample source link to
 show how to edit a record ???

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



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



[appengine-java] cron job or scheduled tasks

2010-02-19 Thread nag
i have a leave database having
casual leaves 1.5

i need it will automatically add 1.5 at every month 15Th
ex
   Date  casual Leaves
on jan 14   0
  jan 15  1.5
  jan 30  1.5
feb 141.5
Feb 15   3.0


can any one help how to achieve this...
Please dont refer code.google.com/appengine/java
i cant understand how to achieve this from there

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



[appengine-java] What CPU times should I expect in the logs?

2010-02-19 Thread Blake
I'm relatively new to GAE.  My queries so far have for single entities
with owned relationships, queried by key, which has been great - no
orange or red screaming in my logs.  More recently, I've been working
on a simple page that does this:

1. get a list of 10 of the user's Following entities - each contain
a key to an object the user is following, and some extra metadata
about the relationship

2. get each of the ObjectBeingFollowed entities by key in the
Following entity

Easy enough to get working, but the logs are screaming at me with CPU
times up around 0.5-1.0 seconds.  Is this just what to expect?  Do you
guys have pages that always return red or orange log messages?

Thanks!

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



[appengine-java] Using GAE Platform Outside of Google

2010-02-19 Thread Greg Marine
Hello All!

I am evaluating GAE/Java for some of my projects and came across a
scenario I can't seem to find any information on. I am porting an
application I would normally have available through GAE, but have a
client who wants to keep everything housed onsite. I'm assuming the
development server would not be appropriate for such an
implementation. So, is there a version of GAE available to install on
a server in such an environment or can the GAE classes be used in
another servlet container such as Tomcat? This would also be the case
if someone were to want to use the software offline using localhost. I
understand this isn't exactly an ideal scenario. However, I thought I
would at least ask.

Thank you,
Greg

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



[appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance

2010-02-19 Thread Anders
Same problem here. No problems for 4 months with unchanged mapping
code and as of the last day mostly 620 results.

I am running on the python appengine but as previously said this is
probably an issue with the geocoder IP limit.

On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote:
 ive entered this is a bug on the maps api bug tracker.  ive tried on 2
 google apps accounts and ive asked others to confirm.  it looks like
 geocoding is impossible from google apps servers.

 On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote:

  At least now I can be certain that it's not a problem with my code.  I
  can only hope that Google can fix this problem ASAP, as my application
  is absolutely useless without a working geocoder.

  On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote:

   I'm also seeing 620 errors for most (possibly all) of my reverse
   geocode requests.

   Jeff

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



Re: [appengine-java] What CPU times should I expect in the logs?

2010-02-19 Thread John Patterson
You could try to batch the get of your ObjectBeingFollowed entities  
so you only do two gets.  Is most of your cpu time api_cpu?



On 19 Feb 2010, at 12:29, Blake wrote:


I'm relatively new to GAE.  My queries so far have for single entities
with owned relationships, queried by key, which has been great - no
orange or red screaming in my logs.  More recently, I've been working
on a simple page that does this:

1. get a list of 10 of the user's Following entities - each contain
a key to an object the user is following, and some extra metadata
about the relationship

2. get each of the ObjectBeingFollowed entities by key in the
Following entity

Easy enough to get working, but the logs are screaming at me with CPU
times up around 0.5-1.0 seconds.  Is this just what to expect?  Do you
guys have pages that always return red or orange log messages?

Thanks!

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




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



Re: [appengine-java] Parsing files uses too much cpu loading

2010-02-19 Thread John Patterson
I see about 10 times that cpu usage when loading data so that is not  
unusual.  I imagine most of your cpu is api_cpu?  Index creation seems  
to be the main culprit so turning off indexing on properties you don't  
need to query on is a good start.


On 19 Feb 2010, at 04:31, novarse wrote:


Hello,
I'm trying to get data from csv files into my datastore tables. My app
is showing cpu loadings of
30356ms 20023cpu_ms 11480api_cpu_ms from the dash board and I was
wondering if someone could see how I could improve this situation. I'm
pretty new to Java.


sample line from file:
-470,16/12/2008 0:00:00,125

this parses the file:
private void processEvents(String fileName) {
try {
previousLineNumber = 0;
i = 1;
file = new File(fileName);
CSVParser shredder = new CSVParser(new 
FileInputStream(file));
while ((t = shredder.nextValue()) != null) {
if (previousLineNumber != 
shredder.getLastLineNumber()) {
if (previousLineNumber != 0) { // save 
event
saveData(jdoEvent);
}
previousLineNumber = 
shredder.getLastLineNumber();
i = 1;
} else
i++;
switch (i) {
case 1:

jdoEvent.setPKeyEventID(Long.parseLong(t));
break;
case 2:
try {
Date d = processDate(t);
jdoEvent.setDate(d);
} catch (ParseException e) {

System.out.println(e.getMessage());
}
break;
case 3:

jdoEvent.setFKeyRaceDescription(Long.parseLong(t));
break;
}
}

if (previousLineNumber != 0) {
saveData(jdoEvent);
}
} catch (Exception e) {
System.err.println(e.getMessage());
}
}


this saves the object:
private J void saveData(J jdoObject) {
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
pm.makePersistent(jdoObject);
} finally {
pm.close();
}
}


this is my data object:

package com.myproj.client;

import java.util.Date;

import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;

import com.google.gwt.user.client.rpc.IsSerializable;

@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class JdoEvent implements IsSerializable {

@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long pKeyEventID;

@Persistent
private Date date;

@Persistent
private Long fKeyRaceDescription;

public JdoEvent() {

}

public void setDate(Date date) {
this.date = date;
}

public Date getDate() {
return date;
}

public void setPKeyEventID(Long pKeyEventID) {
this.pKeyEventID = pKeyEventID;
}

public Long getPKeyEventID() {
return pKeyEventID;
}

public void setFKeyRaceDescription(Long fKeyRaceDescription) {
this.fKeyRaceDescription = fKeyRaceDescription;
}

public Long getFKeyRaceDescription() {
return fKeyRaceDescription;
}

public String getValues() {
return getPKeyEventID() + ;   + getFKeyRaceDescription() + ;  

+ getDate();
}

}


Thank you

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




--
You received this message because you are 

Re: [appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance

2010-02-19 Thread Jeff Schnitzer
It helps to have some links... please star these issues!

http://code.google.com/p/googleappengine/issues/detail?id=2806

http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186

This problem is a really big deal, several features of my app depend
on reverse geocodes.  It looks like a simple whitelisting issue,
shouldn't be too hard to fix!

Jeff

On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote:
 Same problem here. No problems for 4 months with unchanged mapping
 code and as of the last day mostly 620 results.

 I am running on the python appengine but as previously said this is
 probably an issue with the geocoder IP limit.

 On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote:
 ive entered this is a bug on the maps api bug tracker.  ive tried on 2
 google apps accounts and ive asked others to confirm.  it looks like
 geocoding is impossible from google apps servers.

 On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote:

  At least now I can be certain that it's not a problem with my code.  I
  can only hope that Google can fix this problem ASAP, as my application
  is absolutely useless without a working geocoder.

  On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote:

   I'm also seeing 620 errors for most (possibly all) of my reverse
   geocode requests.

   Jeff

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



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



Re: [appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance

2010-02-19 Thread Ikai L (Google)
Hey guys,

I just wanted to let everyone know that I'm working on this. Stay tuned.
I'll post to this thread when I have updates.

On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.orgwrote:

 It helps to have some links... please star these issues!

 http://code.google.com/p/googleappengine/issues/detail?id=2806

 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186

 This problem is a really big deal, several features of my app depend
 on reverse geocodes.  It looks like a simple whitelisting issue,
 shouldn't be too hard to fix!

 Jeff

 On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote:
  Same problem here. No problems for 4 months with unchanged mapping
  code and as of the last day mostly 620 results.
 
  I am running on the python appengine but as previously said this is
  probably an issue with the geocoder IP limit.
 
  On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote:
  ive entered this is a bug on the maps api bug tracker.  ive tried on 2
  google apps accounts and ive asked others to confirm.  it looks like
  geocoding is impossible from google apps servers.
 
  On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote:
 
   At least now I can be certain that it's not a problem with my code.  I
   can only hope that Google can fix this problem ASAP, as my application
   is absolutely useless without a working geocoder.
 
   On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote:
 
I'm also seeing 620 errors for most (possibly all) of my reverse
geocode requests.
 
Jeff
 
  --
  You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
  To post to this group, send email to
 google-appengine-j...@googlegroups.com.
  To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.
 
 

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




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

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



Re: [appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance

2010-02-19 Thread Ikai L (Google)
I think there's a version in the main group. I'll post to that one first if
it exists.

On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote:

 Hey guys,

 I just wanted to let everyone know that I'm working on this. Stay tuned.
 I'll post to this thread when I have updates.


 On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.orgwrote:

 It helps to have some links... please star these issues!

 http://code.google.com/p/googleappengine/issues/detail?id=2806

 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186

 This problem is a really big deal, several features of my app depend
 on reverse geocodes.  It looks like a simple whitelisting issue,
 shouldn't be too hard to fix!

 Jeff

 On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote:
  Same problem here. No problems for 4 months with unchanged mapping
  code and as of the last day mostly 620 results.
 
  I am running on the python appengine but as previously said this is
  probably an issue with the geocoder IP limit.
 
  On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote:
  ive entered this is a bug on the maps api bug tracker.  ive tried on 2
  google apps accounts and ive asked others to confirm.  it looks like
  geocoding is impossible from google apps servers.
 
  On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote:
 
   At least now I can be certain that it's not a problem with my code.
  I
   can only hope that Google can fix this problem ASAP, as my
 application
   is absolutely useless without a working geocoder.
 
   On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote:
 
I'm also seeing 620 errors for most (possibly all) of my reverse
geocode requests.
 
Jeff
 
  --
  You received this message because you are subscribed to the Google
 Groups Google App Engine for Java group.
  To post to this group, send email to
 google-appengine-j...@googlegroups.com.
  To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.
 
 

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




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

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



Re: [appengine-java] Using GAE Platform Outside of Google

2010-02-19 Thread Jeff Schnitzer
There is this:

http://appscale.cs.ucsb.edu/
http://code.google.com/p/appscale/

I have no idea how mature or stable it is.

Jeff

On Thu, Feb 18, 2010 at 2:58 PM, Greg Marine gregmar...@iccnet.org wrote:
 Hello All!

 I am evaluating GAE/Java for some of my projects and came across a
 scenario I can't seem to find any information on. I am porting an
 application I would normally have available through GAE, but have a
 client who wants to keep everything housed onsite. I'm assuming the
 development server would not be appropriate for such an
 implementation. So, is there a version of GAE available to install on
 a server in such an environment or can the GAE classes be used in
 another servlet container such as Tomcat? This would also be the case
 if someone were to want to use the software offline using localhost. I
 understand this isn't exactly an ideal scenario. However, I thought I
 would at least ask.

 Thank you,
 Greg

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



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



[appengine-java] Re: App Engine and Spring slow start up

2010-02-19 Thread luijar
I believe my development environment was on 1.3.0. That might be
something to look at, although it seems that probably it's a very
small overhead, do you have any metrics that would give some evidence
as to how much overhead is offline precompilation adding?

Thanks


On Feb 18, 2:04 pm, Don Schwarz schwa...@google.com wrote:
 Have you deployed your application with the 1.3.1 SDK?  That release turned
 on offline precompilation by default, which is an optimization that may
 help.

 On Thu, Feb 18, 2010 at 7:59 AM, Alex chasov...@gmail.com wrote:
  Hi,

  It appeared that long init problem is well known for Grails users:
 http://jira.codehaus.org/browse/GRAILSPLUGINS-1736

  I wasted couple of weeks to create app I cannot run. Hope that
  SpringSource and Google can solve the issue.

  On Feb 17, 7:41 pm, Stephan Hartmann hartm...@metamesh.de wrote:
   The problem is that the initialization of your app takes longer than 30
   seconds.
   Pinging your app doesn't help when the app is restarted due to
  redeployment
   or maintenance, or when high traffic demands a second instance.

   You should try to reduce your startup time.

   regards,
   Stephan

   2010/2/17 luijar luis.j.aten...@gmail.com

Great, all of our projects are Spring enabled lol. But I guess it's
good that we are not the only ones seeing this, hopefully it gets a
little more visibility. We have a cron job (1 min) that tries to keep
our application alive by hitting a URL, but it does not do a very good
job. It's frustrating and we don't even have access to the 500 page to
tell the user to retry or go somewhere else.

On Feb 17, 11:21 am, oth other...@gmail.com wrote:
 Yes we have seen this problem a lot. Per our tests, an application
 becomes idle after a minute of non activity. So, the unfortunate
 reality is that you need to keep your app alive by simulating
  activity
 on it. Or go the non Spring route.

 Thanks

 On Feb 16, 4:14 pm, luijar luis.j.aten...@gmail.com wrote:

  Hello Google App Engine forum,

    We have been seeing ever since we deployed our applications
  (currently 3 of them) that when our application instances become
  idle
  (they have not been hit for x amount of seconds) subsequent
  requests
  return with a 500 response. Logs show a hard deadline exceeded
  error

  com.google.apphosting.runtime.HardDeadlineExceededError: This
  request
  (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and was
  still executing at 2010/02/12 20:39:41.225 UTC.
          at

  com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java)

  And the first line of the log message has the following :

  02-12 12:39PM 14.088

  javax.servlet.ServletContext log: Initializing Spring root
  WebApplicationContext

  Question:
  Has anyone else seen this behavior? How long does it take for an
  application instance to become idle?

  Thanks

--
You received this message because you are subscribed to the Google
  Groups
Google App Engine for Java group.
To post to this group, send email to
google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to
google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
  google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%252bunsubscr...@googlegroups.com

.
For more options, visit this group at
   http://groups.google.com/group/google-appengine-java?hl=en.

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

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



[appengine-java] Re: Google Apps Support in GAE

2010-02-19 Thread Peter Ondruska
I use http://code.google.com/p/gdata-java-client/

On Feb 19, 5:16 pm, g3 insight insigh...@gmail.com wrote:
 I want to provide Google Apps search and document upload service in my
 GAE application.
 Is there any API/Service can support this function in GAE application?

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



Re: [appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance

2010-02-19 Thread Ikai L (Google)
The configuration changes have been made and should be live shortly if not
immediately. Can you check and let me know if they are working? I'd give it
about ~30 minutes if it doesn't work right away.

On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote:

 I think there's a version in the main group. I'll post to that one first if
 it exists.


 On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.comwrote:

 Hey guys,

 I just wanted to let everyone know that I'm working on this. Stay tuned.
 I'll post to this thread when I have updates.


 On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.orgwrote:

 It helps to have some links... please star these issues!

 http://code.google.com/p/googleappengine/issues/detail?id=2806

 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186

 This problem is a really big deal, several features of my app depend
 on reverse geocodes.  It looks like a simple whitelisting issue,
 shouldn't be too hard to fix!

 Jeff

 On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote:
  Same problem here. No problems for 4 months with unchanged mapping
  code and as of the last day mostly 620 results.
 
  I am running on the python appengine but as previously said this is
  probably an issue with the geocoder IP limit.
 
  On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote:
  ive entered this is a bug on the maps api bug tracker.  ive tried on 2
  google apps accounts and ive asked others to confirm.  it looks like
  geocoding is impossible from google apps servers.
 
  On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote:
 
   At least now I can be certain that it's not a problem with my code.
  I
   can only hope that Google can fix this problem ASAP, as my
 application
   is absolutely useless without a working geocoder.
 
   On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote:
 
I'm also seeing 620 errors for most (possibly all) of my reverse
geocode requests.
 
Jeff
 
  --
  You received this message because you are subscribed to the Google
 Groups Google App Engine for Java group.
  To post to this group, send email to
 google-appengine-j...@googlegroups.com.
  To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.
 
 

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




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

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



Re: [appengine-java] Re: Compass on Google App Engine

2010-02-19 Thread yjun hu
i have a blog with compass on GAE, and i implement the searchable function
 here..
http://hapeblog.appspot.com/

On Thu, Feb 18, 2010 at 2:11 AM, a.maza andr.m...@gmail.com wrote:

 did you experience the problems in production environment or already
 in the development environment?

 May the indexing problem be avoided when using task queues?  what do
 you think?

 On 17 Feb., 18:30, Raphael André Bauer raphael.andre.ba...@gmail.com
 wrote:
  On Wed, Feb 17, 2010 at 3:42 PM, John Patterson jdpatter...@gmail.com
 wrote:
   I thought I read somewhere on this list that compass and lucene cannot
   perform well on the datastore due to the number of index segments that
 need
   to be read for every query?
 
  i could not get it up and running one month ago with a large datset. i
  know the compass people are working hard to resolve issues with the
  gae, but i doubt (technically) that lucene is able to run properly on
  the app engine datastore (please correct me).
 
  it might, however, run well with a smaller dataset (100megs, offline
  indexing, and/or using an index file in the war folder)...
 
  ra!
 
 
 
 
 
   On 17 Feb 2010, at 21:23, a.maza wrote:
 
   checkout the latest source from compass. The last commit removes the
   Referencable interface.
 
   On 17 Feb., 14:36, Raphael André Bauer raphael.andre.ba...@gmail.com
 
   wrote:
 
   On Tue, Feb 16, 2010 at 8:15 AM, yonny yon...@googlemail.com
 wrote:
 
Hello Folks,
 I think deploying a compass app on gae is not possible because the
   core compass interface extends javax.naming.Referenceable which is
 not
   on google's whitelist.I encoutered a similar problem when I call
   buildCompass() It throws a NoClassDefFoundError on
   org.compass.core.impl.DefaultCompass  Any thoughts?? anyone?
 
   follow this
   one:http://www.kimchy.org/searchable-google-appengine-with-compass/
   ra
 
   --
   You received this message because you are subscribed to the Google
   Groups Google App Engine for Java group.
   To post to this group, send email to
   google-appengine-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
   For more options, visit this group
   athttp://groups.google.com/group/google-appengine-java?hl=en.-
  Zitierten
   Text ausblenden -
 
   - Zitierten Text anzeigen -
 
   --
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine for Java group.
   To post to this group, send email to
   google-appengine-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.
 
   --
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine for Java group.
   To post to this group, send email to
 google-appengine-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.- Zitierten
 Text ausblenden -
 
  - Zitierten Text anzeigen -

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




-- 
dream or truth

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



Re: [appengine-java] Problem whit upload form multipart

2010-02-19 Thread yjun hu
maybe this will be helpful
http://hapeblog.appspot.com/blog.shtml?id=2002

On Wed, Feb 17, 2010 at 1:01 PM, John Patterson jdpatter...@gmail.comwrote:

 Do you have a different version of the jar in your lib directory to the one
 on your build path?


 On 17 Feb 2010, at 09:11, NIko Judo wrote:

  Hola he probado el codigo siguiente para recibir un formulario
 multipart en mi aplicacion :

 Test folowing code

 import org.apache.commons.fileupload.FileItemStream;
 import org.apache.commons.fileupload.FileItemIterator;
 import org.apache.commons.fileupload.servlet.ServletFileUpload;

 import java.io.InputStream;
 import java.io.IOException;
 import java.util.logging.Logger;

 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;

 public class FileUpload extends HttpServlet {
  private static final Logger log =
 Logger.getLogger(FileUpload.class.getName());


  public void doPost(HttpServletRequest req, HttpServletResponse res)
 throws ServletException, IOException {
   try {
 ServletFileUpload upload = new ServletFileUpload();
 res.setContentType(text/plain);

 FileItemIterator iterator = upload.getItemIterator(req);
 while (iterator.hasNext()) {
   FileItemStream item = iterator.next();
   InputStream stream = item.openStream();

   if (item.isFormField()) {
 log.warning(Got a form field:  + item.getFieldName());
   } else {
 log.warning(Got an uploaded file:  + item.getFieldName() +
 , name =  + item.getName());

 // You now have the filename (item.getName() and the
 // contents (which you can read from stream).  Here we just
 // print them back out to the servlet output stream, but you
 // will probably want to do something more interesting (for
 // example, wrap them in a Blob and commit them to the
 // datastore).
 int len;
 byte[] buffer = new byte[8192];
 while ((len = stream.read(buffer, 0, buffer.length)) != -1)
 {
   res.getOutputStream().write(buffer, 0, len);
 }
   }
 }
   } catch (Exception ex) {
 throw new ServletException(ex);
   }
  }


   @Override
   protected void doGet(HttpServletRequest request,
 HttpServletResponse response)
   throws ServletException, IOException {

   }



 }

 el caso es que simpre me da un error cuando envio el formulario con
 image

 folowing error :

 Error for /FileUpload
 java.lang.NoSuchMethodError:

 org.apache.commons.fileupload.servlet.ServletFileUpload.getItemIterator(Ljavax/
 servlet/http/HttpServletRequest;)Lorg/apache/commons/fileupload/
 FileItemIterator;
at com.ubicacion.servlet.FileUpload.doPost(FileUpload.java:32)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at
 org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
 487)
at org.mortbay.jetty.servlet.ServletHandler
 $CachedChain.doFilter(ServletHandler.java:1093)
at

 com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:
 97)
at org.mortbay.jetty.servlet.ServletHandler
 $CachedChain.doFilter(ServletHandler.java:1084)
at

 com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:
 35)
at org.mortbay.jetty.servlet.ServletHandler
 $CachedChain.doFilter(ServletHandler.java:1084)
at

 com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:
 43)
at org.mortbay.jetty.servlet.ServletHandler
 $CachedChain.doFilter(ServletHandler.java:1084)
at
 org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:
 360)
at
 org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:
 216)
at
 org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:
 181)
at
 org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:
 712)
at
 org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
 405)
at

 com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:
 238)
at
 org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
 139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at
 org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
 506)
at org.mortbay.jetty.HttpConnection
 $RequestHandler.headerComplete(HttpConnection.java:830)
at

 com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:
 76)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at

 com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:
 135)

Re: [appengine-java] log4j init fails

2010-02-19 Thread Rusty Wright

I think you can simply put the log4j.properties file in the WEB-INF/classes dir and you 
don't need any appengine-web.xml stuff for it.  Log4j looks for its configuration file 
on the classpath which means it looks in WEB-INF/classes (and also in all of 
the jars in the lib directory).


AJ Chen wrote:

I have  log4j config in appengine-web.xml,
system-properties
property name=java.util.logging.config.file 
value=WEB-INF/logging.properties/
property name=log4j.configuration 
value=file:WEB-INF/classes/log4j.properties/
property name=monitor.config.file 
value=WEB-INF/monitor.properties/

/system-properties
   
but GAE still complains about it:

log4j:WARN No appenders could be found for logger (DataNucleus.Connection).
log4j:WARN Please initialize the log4j system properly.

Is there anything else that should be set?

thanks,
-aj

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

To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.


--
0x2B | ~0x2b  --  Hamlet

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



Re: [appengine-java] Re: Google maps geocoder responds with 620 error since last nights server maintenance

2010-02-19 Thread Jeff Schnitzer
It doesn't seem to be working.

Not only am I still seeing a ton of 620s, but half the time I'm also
getting something that doesn't parse as JSON.  It contains an
unexpected ''.  I'm guessing it's some sort of error message getting
rendered in html or xml.

org.codehaus.jackson.JsonParseException: Unexpected character (''
(code 60)): expected a valid value (number, String, array, object,
'true', 'false' or 'null')
 at [Source: java.io.bytearrayinputstr...@908faf; line: 1, column: 2]

When I try the same URL from my desktop, it works fine.

Jeff

On Fri, Feb 19, 2010 at 2:16 PM, Ikai L (Google) ika...@google.com wrote:
 The configuration changes have been made and should be live shortly if not
 immediately. Can you check and let me know if they are working? I'd give it
 about ~30 minutes if it doesn't work right away.

 On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com wrote:

 I think there's a version in the main group. I'll post to that one first
 if it exists.

 On Fri, Feb 19, 2010 at 10:56 AM, Ikai L (Google) ika...@google.com
 wrote:

 Hey guys,
 I just wanted to let everyone know that I'm working on this. Stay tuned.
 I'll post to this thread when I have updates.

 On Fri, Feb 19, 2010 at 10:51 AM, Jeff Schnitzer j...@infohazard.org
 wrote:

 It helps to have some links... please star these issues!

 http://code.google.com/p/googleappengine/issues/detail?id=2806

 http://code.google.com/p/gmaps-api-issues/issues/detail?id=2186

 This problem is a really big deal, several features of my app depend
 on reverse geocodes.  It looks like a simple whitelisting issue,
 shouldn't be too hard to fix!

 Jeff

 On Fri, Feb 19, 2010 at 12:26 AM, Anders anders.ny...@gmail.com wrote:
  Same problem here. No problems for 4 months with unchanged mapping
  code and as of the last day mostly 620 results.
 
  I am running on the python appengine but as previously said this is
  probably an issue with the geocoder IP limit.
 
  On 19 Feb, 07:21, Ivan Pardo trux...@gmail.com wrote:
  ive entered this is a bug on the maps api bug tracker.  ive tried on
  2
  google apps accounts and ive asked others to confirm.  it looks like
  geocoding is impossible from google apps servers.
 
  On Feb 18, 6:25 pm, Ivan Pardo trux...@gmail.com wrote:
 
   At least now I can be certain that it's not a problem with my code.
    I
   can only hope that Google can fix this problem ASAP, as my
   application
   is absolutely useless without a working geocoder.
 
   On Feb 18, 5:44 pm, Jeff Schnitzer j...@infohazard.org wrote:
 
I'm also seeing 620 errors for most (possibly all) of my reverse
geocode requests.
 
Jeff
 
  --
  You received this message because you are subscribed to the Google
  Groups Google App Engine for Java group.
  To post to this group, send email to
  google-appengine-j...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine-java+unsubscr...@googlegroups.com.
  For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.
 
 

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




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine



 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine



 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

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


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



[appengine-java] Re: Parsing files uses too much cpu loading

2010-02-19 Thread Blake
Create a task (for the task queue) - we'll call it SomeTaskServlet
that imports a section of the file between two line numbers that are
passed into it.

In this task above, here's what you'd do:
1. count how many lines are in the file - let's say 105
2. divide that by ten (make sure to handle the remainder!!)
3. kick off/queue 10 SomeTaskServlet tasks:
   - lines 1-10
   - lines 11-20
   - lines 21-30
   ...
   - lines 100-105
4. Make sure that your queued task is idempotent (http://
en.wikipedia.org/wiki/Idempotence), and to throw an exception if
there's a problem.  That way, the queue processor will retry it on
error, and you'll never have to worry about a thing.

The one big gotcha is that you really should know how many records you
have to process up front, or you'll have a hard time knowing when to
stop chunking.  This is tough when you're dealing with databases in
App Engine, because (afaik), you can't SELECT COUNT(*), but you're
working with a file.

Simple!

If that file grows, and you wanna make sure you're scalable, then the
SomeTaskServlet handles a max number of lines - say 10.  If the range
that was passed into it is larger than 10, then queue off the work
that it was given into 10 batches back to another instance of itself.
By the time you have a small enough batch, you'll have a chunk of data
that you can process in 1/10 second.  I'd recommend giving this task
its own queue so you can throttle it so that you don't eat up your
dynamic concurrent thread count (or whatever they call that).

Reply whether this makes sense.  I just did this to import 5,000
records from another system via REST.  The first several rounds keep
forking off more and more threads to chunk the data down into smaller
bits.  At the end, each of the hundreds of threads has SUCH a small
job to do, you can throttle it, and they retry themselves on error.

- Blake

On Feb 18, 4:31 pm, novarse stephenmwi...@gmail.com wrote:
 Hello,
 I'm trying to get data from csv files into my datastore tables. My app
 is showing cpu loadings of
  30356ms 20023cpu_ms 11480api_cpu_ms from the dash board and I was
 wondering if someone could see how I could improve this situation. I'm
 pretty new to Java.

 sample line from file:
 -470,16/12/2008 0:00:00,125

 this parses the file:
         private void processEvents(String fileName) {
                 try {
                         previousLineNumber = 0;
                         i = 1;
                         file = new File(fileName);
                         CSVParser shredder = new CSVParser(new 
 FileInputStream(file));
                         while ((t = shredder.nextValue()) != null) {
                                 if (previousLineNumber != 
 shredder.getLastLineNumber()) {
                                         if (previousLineNumber != 0) { // 
 save event
                                                 saveData(jdoEvent);
                                         }
                                         previousLineNumber = 
 shredder.getLastLineNumber();
                                         i = 1;
                                 } else
                                         i++;
                                 switch (i) {
                                 case 1:
                                         
 jdoEvent.setPKeyEventID(Long.parseLong(t));
                                         break;
                                 case 2:
                                         try {
                                                 Date d = processDate(t);
                                                 jdoEvent.setDate(d);
                                         } catch (ParseException e) {
                                                 
 System.out.println(e.getMessage());
                                         }
                                         break;
                                 case 3:
                                         
 jdoEvent.setFKeyRaceDescription(Long.parseLong(t));
                                         break;
                                 }
                         }

                         if (previousLineNumber != 0) {
                                 saveData(jdoEvent);
                         }
                 } catch (Exception e) {
                         System.err.println(e.getMessage());
                 }
         }

 this saves the object:
         private J void saveData(J jdoObject) {
                 PersistenceManager pm = PMF.get().getPersistenceManager();
                 try {
                         pm.makePersistent(jdoObject);
                 } finally {
                         pm.close();
                 }
         }

 this is my data object:

 package com.myproj.client;

 import java.util.Date;

 import javax.jdo.annotations.IdGeneratorStrategy;
 import javax.jdo.annotations.IdentityType;
 import javax.jdo.annotations.PersistenceCapable;
 import javax.jdo.annotations.Persistent;
 import 

[appengine-java] Re: Using GAE Platform Outside of Google

2010-02-19 Thread Greg Marine
Thanks Jeff! I'll have a look at this. I really appreciate it!

Greg

On Feb 19, 1:59 pm, Jeff Schnitzer j...@infohazard.org wrote:
 There is this:

 http://appscale.cs.ucsb.edu/http://code.google.com/p/appscale/

 I have no idea how mature or stable it is.

 JeffOn Thu, Feb 18, 2010 at 2:58 PM, Greg Marine gregmar...@iccnet.org 
 wrote:
  Hello All!

  I am evaluating GAE/Java for some of my projects and came across a
  scenario I can't seem to find any information on. I am porting an
  application I would normally have available through GAE, but have a
  client who wants to keep everything housed onsite. I'm assuming the
  development server would not be appropriate for such an
  implementation. So, is there a version of GAE available to install on
  a server in such an environment or can the GAE classes be used in
  another servlet container such as Tomcat? This would also be the case
  if someone were to want to use the software offline using localhost. I
  understand this isn't exactly an ideal scenario. However, I thought I
  would at least ask.

  Thank you,
  Greg

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

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



Re: [appengine-java] Null Pointer Exception at the time of transaction commit.

2010-02-19 Thread Sushama Khadilkar
Thanks,
But i'm not getting wat are u saying so can u plz explain clearly...

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



[appengine-java] Re: What CPU times should I expect in the logs?

2010-02-19 Thread Blake
Thanks John.  I did do that, but after reading the documentation, it
seems that if you query for 10 objects with || key=='abc' ||
key=='def' || key=='ghi', then it'll actually perform 10 queries
under the hood.

I'm noticing a lot of slow-down in my app from these GAE exceptions
that I think are due to my app starting up in new JVMs.  That might be
part of the problem.  The other part is that my entities were a little
screwy.  I flattened the children into the parent since there's always
three children, and each child only has a couple properties.  That
helped.

After that, I implemented caching, which makes it scream now.  I'm
caching the display DTOs rather than the entities, because just
building the DTOs was taking about 250 cpu ms.

So, with *nothing* in cache, my original takes 2 cpu seconds, 1 api
second. With the supporting entities in cache, it comes down to 800ms/
500ms.  After cleaning up my query and the entities as mentioned
above, I brought that down to 500ms/200.  And then, after caching the
objects I'm querying for here, I'm down to 50-90 cpu ms with no API
ms.

Okay, as I was finishing this post, I hit the app a few more times...
It's funny/frustrating how sporadic the system is.  Sometimes the
optimized path still takes up to 7 seconds, just to pull from
cache!!!  A few more refreshes and it's back down to 55 cpu ms and no
api ms.

Oh well, I guess this is just the nature of the beast.  Some users are
going to have pages take a few seconds to load at times, but at least
I know that if I had to scale this up, it would still work, right? :)

On Feb 19, 1:36 pm, John Patterson jdpatter...@gmail.com wrote:
 You could try to batch the get of your ObjectBeingFollowed entities  
 so you only do two gets.  Is most of your cpu time api_cpu?

 On 19 Feb 2010, at 12:29, Blake wrote:



  I'm relatively new to GAE.  My queries so far have for single entities
  with owned relationships, queried by key, which has been great - no
  orange or red screaming in my logs.  More recently, I've been working
  on a simple page that does this:

  1. get a list of 10 of the user's Following entities - each contain
  a key to an object the user is following, and some extra metadata
  about the relationship

  2. get each of the ObjectBeingFollowed entities by key in the
  Following entity

  Easy enough to get working, but the logs are screaming at me with CPU
  times up around 0.5-1.0 seconds.  Is this just what to expect?  Do you
  guys have pages that always return red or orange log messages?

  Thanks!

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

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



[google-appengine] Re: how to upgrade my sdk from 1.3.0 to 1.3.1 in eclipse

2010-02-19 Thread Seth
For some reason, I also continue to get this warning from my Eclipse.
I have run the upgrade via the normal Eclipse software update, and it
claims I have the latest 1.3.1 version.  However, I still see the
following notice when I start up the embedded server via Eclipse:


There is a new version of the SDK available.
---
Latest SDK:
Release: 1.3.1
Timestamp: Mon Feb 08 13:00:41 HST 2010
API versions: [1.0]

---
Your SDK:
Release: 1.3.0
Timestamp: Mon Dec 14 08:47:37 HST 2009
API versions: [1.0]

---
Please visit http://code.google.com/appengine for the latest SDK.


On Feb 18, 12:46 pm, Ikai L (Google) ika...@google.com wrote:
 The SDK update works for me. SDK 1.3.1 is available. Can you check again?

 On Tue, Feb 16, 2010 at 1:01 PM, Warren Goldman 
 warren.gold...@gmail.comwrote:





  Receiving this message when debugging my google app in eclipse;

  
  There is a new version of the SDK available.
  ---
  Latest SDK:
  Release: 1.3.1
  Timestamp: Mon Feb 08 17:00:41 CST 2010
  API versions: [1.0]

  ---
  Your SDK:
  Release: 1.3.0
  Timestamp: Mon Dec 14 12:47:37 CST 2009
  API versions: [1.0]

  ---
  Please visithttp://code.google.com/appenginefor the latest SDK.
  

  Not sure what to do about this.

  Using this update url in eclipse (galileo 3.5);
 http://dl.google.com/eclipse/plugin/3.5(doing update has no affect)

  The download of the sdk for 1.3.1 (http://
  googleappengine.googlecode.com/files/appengine-java-sdk-1.3.1.zip) is
  quite different that 1.3.0  folder structure in eclipse
  has folder com.google.appengine.eclipse.sdkbundle.
  1.3.0_1.3.0.v200912141120
  in plugins dir.

  any help is appreciated.

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

 --
 Ikai Lan
 Developer Programs Engineer, Google App 
 Enginehttp://googleappengine.blogspot.com|http://twitter.com/app_engine

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



[google-appengine] Re: how to upgrade my sdk from 1.3.0 to 1.3.1 in eclipse

2010-02-19 Thread Seth
Try manually uninstalling all your google plugins.

If you are using Galileo (as it sounds like you are because you
mentioned the 3.5 plugin repository), then you can use this link:

http://eclipse.dzone.com/articles/ten-tips-installing-plugins

which helps you uninstall plugins.  Then, reinstall the Google plugins
as normal.

On Feb 16, 11:01 am, Warren Goldman warren.gold...@gmail.com wrote:
 Receiving this message when debugging my google app in eclipse;

 
 There is a new version of the SDK available.
 ---
 Latest SDK:
 Release: 1.3.1
 Timestamp: Mon Feb 08 17:00:41 CST 2010
 API versions: [1.0]

 ---
 Your SDK:
 Release: 1.3.0
 Timestamp: Mon Dec 14 12:47:37 CST 2009
 API versions: [1.0]

 ---
 Please visithttp://code.google.com/appenginefor the latest SDK.
 

 Not sure what to do about this.

 Using this update url in eclipse (galileo 
 3.5);http://dl.google.com/eclipse/plugin/3.5(doing update has no affect)

 The download of the sdk for 1.3.1 (http://
 googleappengine.googlecode.com/files/appengine-java-sdk-1.3.1.zip) is
 quite different that 1.3.0  folder structure in eclipse
 has folder com.google.appengine.eclipse.sdkbundle.
 1.3.0_1.3.0.v200912141120
 in plugins dir.

 any help is appreciated.

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



[google-appengine] Re: how to upgrade my sdk from 1.3.0 to 1.3.1 in eclipse

2010-02-19 Thread Seth
So I tried what I said, and I'm not in any better shape.

I uninstalled all the google plugins, restarted, and then reinstalled
the google plugins (gwt, appengine).

Now when I try to start my webapp from within Eclipse, I get this
error:

Error occurred during initialization of VM
agent library failed to init: instrument
Error opening zip file or JAR manifest missing : /Users/sethladd/
eclipse/plugins/com.google.appengine.eclipse.sdkbundle.
1.3.0_1.3.0.v200912141120/appengine-java-sdk-1.3.0/lib/agent/appengine-
agent.jar

Not sure why it's trying to reference 1.3.0

Might have to uninstall Eclipse and try a completely fresh install.

On Feb 18, 10:24 pm, Seth sethl...@gmail.com wrote:
 Try manually uninstalling all your google plugins.

 If you are using Galileo (as it sounds like you are because you
 mentioned the 3.5 plugin repository), then you can use this link:

 http://eclipse.dzone.com/articles/ten-tips-installing-plugins

 which helps you uninstall plugins.  Then, reinstall the Google plugins
 as normal.

 On Feb 16, 11:01 am, Warren Goldman warren.gold...@gmail.com wrote:



  Receiving this message when debugging my google app in eclipse;

  
  There is a new version of the SDK available.
  ---
  Latest SDK:
  Release: 1.3.1
  Timestamp: Mon Feb 08 17:00:41 CST 2010
  API versions: [1.0]

  ---
  Your SDK:
  Release: 1.3.0
  Timestamp: Mon Dec 14 12:47:37 CST 2009
  API versions: [1.0]

  ---
  Please visithttp://code.google.com/appengineforthe latest SDK.
  

  Not sure what to do about this.

  Using this update url in eclipse (galileo 
  3.5);http://dl.google.com/eclipse/plugin/3.5(doingupdate has no affect)

  The download of the sdk for 1.3.1 (http://
  googleappengine.googlecode.com/files/appengine-java-sdk-1.3.1.zip) is
  quite different that 1.3.0  folder structure in eclipse
  has folder com.google.appengine.eclipse.sdkbundle.
  1.3.0_1.3.0.v200912141120
  in plugins dir.

  any help is appreciated.

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



Re: [google-appengine] GAE/J Low Level API Transaction management.

2010-02-19 Thread Patrick Twohig
I had that suspicion, but, I wasn't 100% sure.  I wonder if it's an issue
that shows up in production or just local datastore.

Pat.

On Thu, Feb 18, 2010 at 1:34 PM, Jeff Schnitzer j...@infohazard.org wrote:

 I just created a unit test for this case (there wasn't one before) and
 sure enough, it fails.  Looks like a bug in appengine.  Create an
 issue, I'll star it.

 The failing unit test is the last one in this file:

 http://code.google.com/p/objectify-appengine/source/browse/trunk/src/com/googlecode/ob
 jectify/test/QueryTests.java

 FWIW, our implementation is the ancestor() method:

 http://code.google.com/p/objectify-appengine/source/browse/trunk/src/com/googlecode/objectify/impl/QueryImpl.java

 Javadocs are on the interface class:

 http://objectify-appengine.googlecode.com/svn/trunk/javadoc/com/googlecode/objectify/Query.html

 Jeff

 On Thu, Feb 18, 2010 at 11:22 AM, Patrick Twohig
 patr...@namazustudios.com wrote:
  Duly noted.  However, I'm not about to rewrite a bulk of my code over a
  single issue I'm having.  At the time I started this, I hadn't realized
  Objectify existed and tried using JDO which turned out to be a gigantic
  nightmare, so I slimmed it down and wrote my own wrapper similar to
  Objectify.  Right now the only pressing issue is that ancestor queries
  aren't working as expected and it's driving me nuts.  Could you perhaps
  point me to some source in Objectify that executes an ancestor query that
 I
  may be able to see?
 
  On Wed, Feb 17, 2010 at 10:05 PM, Jeff Schnitzer j...@infohazard.org
  wrote:
 
  The documentation I wrote up here might help:
 
  http://code.google.com/p/objectify-appengine/wiki/Concepts
 
  You might consider using something like Objectify (or Twig, or
  SimpleDS, etc) instead of the Low-Level API.
 
  Jeff
 
  On Wed, Feb 17, 2010 at 9:23 PM, Patrick Twohig
  patr...@namazustudios.com wrote:
   Aside from the Javadocs, does there exist any further documentation on
   the
   GAE/J low-level API.  I've had a handfull of issues with it so far and
   I'm
   at a bit of a loss.  I'm having trouble with ancestor queries.
   Specifically, I'm not getting any child entities when I look for
 objects
   with no kind specified and just an ancestor.  However, the equivalent
   code
   in python performs as expected.
  
   I was also curious how GAE/J organizes transactions.  From what I
 gather
   in
   the documentation, each transaction is organized in a ThreadLocal
 stack.
   Every time you call DatastoreService.beginTransaction() it creates a
 new
   transaction, pushes it on the thread local stack then when it's done,
   it's
   popped of.  I was curious if it may be possible to add a method that
 can
   provide the current transaction given a particular key somehow.
  
  
   --
   Patrick H. Twohig.
  
   Namazu Studios
   P.O. Box 34161
   San Diego, CA 92163-4161
  
   --
   You received this message because you are subscribed to the Google
   Groups
   Google App Engine group.
   To post to this group, send email to
 google-appeng...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
   For more options, visit this group at
   http://groups.google.com/group/google-appengine?hl=en.
  
 
  --
  You received this message because you are subscribed to the Google
 Groups
  Google App Engine group.
  To post to this group, send email to google-appeng...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 
 
 
 
  --
  Patrick H. Twohig.
 
  Namazu Studios
  P.O. Box 34161
  San Diego, CA 92163-4161
 
  --
  You received this message because you are subscribed to the Google Groups
  Google App Engine group.
  To post to this group, send email to google-appeng...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 

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




-- 
Patrick H. Twohig.

Namazu Studios
P.O. Box 34161
San Diego, CA 92163-4161

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to 

[google-appengine] indexes in building state for quite a while ...

2010-02-19 Thread Prawyn
Hi,
I updated set of indexes and it was in building state for more
than one and half days now. I tried to use vacuum_indexes but it
didn't solve the
problem.. Any help guys..

My app id is os247test

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



[google-appengine] Re: Google maps usage

2010-02-19 Thread nickmilon
The only thing you can do to address your problem is through some kind
of ajax, which is quite feasible if you have to plot your values once
a minute or so.

Happy coding ;)

Nick

On Feb 18, 12:25 pm, Avis developer sivaram.subb...@gmail.com wrote:
 I need to develop a application which uses a GPS mobile to get the
 latitude and longitude coordinates of a person and plot in Google
 maps. I will be using google AppEngine to deploy the site, so i will
 be using datastore provided by GAE. I need to know how to plot the
 values in maps asynchronously , i.e as the value in the datastore
 changes,without the user requesting again and again through the
 browser, it needs to be updated asynchronously like cricinfo does for
 updating scores  . What event should i use to the above cause..  Am a
 beginner in programming, so pls consider my level n help me..

 thanks for the reply in advance

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



[google-appengine] Re: pygooglechart

2010-02-19 Thread nickmilon
Sure you can after installing the library and including the files in
your application provided this library does not depend on anything but
python.
Also since data passing mechanism for google visualization api is
quite easy to implement in python you can avoid the burden of one more
import and write your own interface.
For an example of using visualization api from gae you can take a look
at:  http://www.geognos.com/geo/en/cc/no.html#Economy
Unfortunately i did not have the time to document the code but feel
free to examine the page source code and the relative javascript
files.

Happy coding;)



On Feb 18, 2:30 pm, Massimiliano massimiliano.pietr...@gmail.com
wrote:
 Dear All,
 I'm trying to learn using python and Google App Engine. Can I use this
 library on the appengine? Just importing this in the python application
 (from pygooglechart import *)?

 Massimiliano

 --

 My email: massimiliano.pietr...@gmail.com
 My Google Wave: massimiliano.pietr...@googlewave.com

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



[google-appengine] Error 500 on Datastore Viewer

2010-02-19 Thread Stefano Ciccarelli
In the last couple of hours every time I try to access the Datastore
Viewer or the Datastore Statistics I get always the error 500.

Someone could help me? Thx.

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



Re: [google-appengine] Re: pygooglechart

2010-02-19 Thread Massimiliano
Sure you can after installing the library on my PC?

2010/2/19 nickmilon nickmi...@gmail.com

 Sure you can after installing the library and including the files in
 your application provided this library does not depend on anything but
 python.
 Also since data passing mechanism for google visualization api is
 quite easy to implement in python you can avoid the burden of one more
 import and write your own interface.
 For an example of using visualization api from gae you can take a look
 at:  http://www.geognos.com/geo/en/cc/no.html#Economy
 Unfortunately i did not have the time to document the code but feel
 free to examine the page source code and the relative javascript
 files.

 Happy coding;)



 On Feb 18, 2:30 pm, Massimiliano massimiliano.pietr...@gmail.com
 wrote:
  Dear All,
  I'm trying to learn using python and Google App Engine. Can I use this
  library on the appengine? Just importing this in the python application
  (from pygooglechart import *)?
 
  Massimiliano
 
  --
 
  My email: massimiliano.pietr...@gmail.com
  My Google Wave: massimiliano.pietr...@googlewave.com

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




-- 

My email: massimiliano.pietr...@gmail.com
My Google Wave: massimiliano.pietr...@googlewave.com

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



[google-appengine] Re: Strange traffic Charts after the last maintenance

2010-02-19 Thread matic
I can also confirm that the problem is fixed.

On Feb 19, 4:12 am, gwstuff gwsa...@gmail.com wrote:
 OK. The request chat in my dashboard just spiked into the normal
 range:http://corewars.org/spike.png. Looks like this problem is
 fixed.

 On Feb 18, 8:51 pm, gwstuff gwsa...@gmail.com wrote:



  Confirmed. My request/second rate has changed from 1.5-2.5 to 0.5-1.0
  on an average. I chart my request data separately and can see that the
  load is the same as before, so this has something to do with the
  calculation.

  Sapan

  On Feb 18, 3:05 pm, matic mytix.m...@gmail.com wrote:

   After the last GAE maintenance yesterday, our traffic (req/sec)
   lowered dramatically and all the charts (req/sec, milisec/req, errors/
   sec) are very 
   strange:http://img.skitch.com/20100218-bqfa4pdhgefyf6hir8e3swbwq7.jpg
   Is this just a charts problem or is something seriously wrong?

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



[google-appengine] Model class of a Query instance?

2010-02-19 Thread Nickolas Daskalou
Is there an official way to get the Model class from a Query instance? I
had a look through the online docs and couldn't find anything.

In the SDK code however, the Model class of a Query instance can be
retrieved from the _model_class attribute of the Query instance, eg:

q = MyModel.all()

model_class = q._model_class # == MyModel

I don't really want to do it this way because since this is not documented
anywhere, I'm afraid that this implementation may change in the future.

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



Re: [google-appengine] Re: Question on key design: Datastore errors and tablets

2010-02-19 Thread Nick Johnson (Google)
On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote:

 What about keynames like:

 counter_standard_dbf
 counter_standard_clo

 or would something like

 dbfo01la_counter_standard
 clo091b_counter_standard

 work better?

 I'm thinking of cases where you may use keynames that can in some way
 be constructed/predicted for fast access later.
 like..username_counter_standard

 Would the common pre-fix or post-fix make for close distribution? :|


Either one will work fine - Bigtable will split tablets based on key to
ensure no tablet gets too big. Long identical prefixes just mean that the
split will be based on later characters in the string.

What's important for key distribution for really high update rates is the
distribution of key names/IDs for those updates: If they all go to a single
tablet (eg, they make up a small proportion of the total range of IDs you're
employing), they will be limited by what that tablet server can support. If
they are widely spread out within the range you're using, regardless of what
that range is, you'll be fine.

-Nick Johnson





 On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com
 wrote:
  Hi Eli,
 
  Using a randomly generated ID like a uuid is perfectly satisfactory to
  achieve an even distribution.
 
  On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote:
   I understand the process of evenly distributing IDs since they are
 Integer
   values.. is there a canonized appengine way to evenly distribute
 key_names?
 
   Just make sure key_name1 and key_name2 don't have their i-th letters
 too
   close too eachother? How far is far enough?
 
   Does doing even distribution matter if you aren't using auto-generated
 IDs?
 
  It certainly can - if you insert, in order, , aaab, aaac, etc,
  you'll encounter the same problem at very high volumes as you'd see with
  auto generated IDs.
 
  -Nick Johnson
 
 
 
 
 
 
 
   Thanks for information.
 
   On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) 
   nick.john...@google.com wrote:
 
   Hi Ulrich,
 
   On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com
 wrote:
 
   Hi,
 
   I have read the following
   Timeouts due to datastore issues --- [...] The most common example
 of
   this occurs when you are rapidly inserting a large number of entities
   of the same kind, with auto-generated IDs. In this case, most inserts
   hit the same range of the same tablet, and the single tablet server
 is
   overwhelmed with writes. [...] If this does affect your app, the
   easiest solution is to use more evenly distributed IDs instead of the
   auto-allocated ones  [...]
   (
  
 http://code.google.com/appengine/articles/handling_datastore_errors.html
   )
 
   Let's say I am having a model Parent and a model Child. For
 Parent
   entities, I use key names that are evenly distributed. For Child
   entities, I use auto-generated key IDs and _no_ key names, but all
   Child entities are children of Parent entities, so the paths to the
   children contain the evenly distributes key names of the parents.
   If I have many write operations on children that are in the same
   entity group, the described error could occur. But what happens if my
   write operations are on children that are in different entity groups?
   Their IDs are auto-generated and not evenly distributed, but their
   paths contain the evenly distributed key names.
 
   Good question! The point being made in the article refers to the
 global
   distribution of the complete key, so writes to these children will be
 well
   distributed, and you won't have to worry about this source of
 contention.
 
   -Nick Johnson
 
   --
 
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine group.
   To post to this group, send email to
 google-appeng...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 
   --
   Nick Johnson, Developer Programs Engineer, App Engine
   Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration
 Number:
   368047
 
--
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine group.
   To post to this group, send email to
 google-appeng...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 
--
   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] Re: MMS to Email Gateway failures

2010-02-19 Thread A1programmer
This is still not working.

I may also point out that when I do get emails that are sent from app
engine, to me phone as SMS, they are from a huge string, like so:

3-
yf9swuod0qgjsotigskxxoloi.iusjkxxoiq.yosvyutmsgor@apphosting.bounces.google.com

Therefore, I think this is something that Google needs to fix,
including fixing SPF records (or whatever).  It would be nice if the
email actually appeared to be from who's sending it.

- Derrick

On Feb 17, 10:25 pm, Andrew Chilton andychil...@gmail.com wrote:
 Hi Derrick,

 On 18 February 2010 10:20, A1programmer derrick.simp...@gmail.com wrote:

  [snip]
  Does anyone have any idea why this may be, or can offer suggestions?
  As it looks now, if I can get this to work nicely on another platform,
  I'm going to have to move my stuff off of my GAE (paid account).

 Might this 
 help?http://www.google.com/support/a/bin/answer.py?hl=enanswer=33786

 It might help it look less like spam (if indeed that is what is happening).

 Cheers,
 Andy

 --
 contact: Andrew Chilton
 website:http://www.chilts.org/blog/

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



[google-appengine] Re: Question on key design: Datastore errors and tablets

2010-02-19 Thread peterk
Thanks Nick, I understand now. So I guess the easiest thing to do is
to have a random component in your keynames...at least for apps I'm
considering I don't think I'd have any other way to reasonably ensure
the range of keynames in a given (batch) update were well distributed.

On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com
wrote:
 On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote:
  What about keynames like:

  counter_standard_dbf
  counter_standard_clo

  or would something like

  dbfo01la_counter_standard
  clo091b_counter_standard

  work better?

  I'm thinking of cases where you may use keynames that can in some way
  be constructed/predicted for fast access later.
  like..username_counter_standard

  Would the common pre-fix or post-fix make for close distribution? :|

 Either one will work fine - Bigtable will split tablets based on key to
 ensure no tablet gets too big. Long identical prefixes just mean that the
 split will be based on later characters in the string.

 What's important for key distribution for really high update rates is the
 distribution of key names/IDs for those updates: If they all go to a single
 tablet (eg, they make up a small proportion of the total range of IDs you're
 employing), they will be limited by what that tablet server can support. If
 they are widely spread out within the range you're using, regardless of what
 that range is, you'll be fine.

 -Nick Johnson







  On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com
  wrote:
   Hi Eli,

   Using a randomly generated ID like a uuid is perfectly satisfactory to
   achieve an even distribution.

   On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com wrote:
I understand the process of evenly distributing IDs since they are
  Integer
values.. is there a canonized appengine way to evenly distribute
  key_names?

Just make sure key_name1 and key_name2 don't have their i-th letters
  too
close too eachother? How far is far enough?

Does doing even distribution matter if you aren't using auto-generated
  IDs?

   It certainly can - if you insert, in order, , aaab, aaac, etc,
   you'll encounter the same problem at very high volumes as you'd see with
   auto generated IDs.

   -Nick Johnson

Thanks for information.

On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) 
nick.john...@google.com wrote:

Hi Ulrich,

On Wed, Feb 17, 2010 at 5:30 PM, Ulrich mierendo...@googlemail.com
  wrote:

Hi,

I have read the following
Timeouts due to datastore issues --- [...] The most common example
  of
this occurs when you are rapidly inserting a large number of entities
of the same kind, with auto-generated IDs. In this case, most inserts
hit the same range of the same tablet, and the single tablet server
  is
overwhelmed with writes. [...] If this does affect your app, the
easiest solution is to use more evenly distributed IDs instead of the
auto-allocated ones  [...]
(

 http://code.google.com/appengine/articles/handling_datastore_errors.html
)

Let's say I am having a model Parent and a model Child. For
  Parent
entities, I use key names that are evenly distributed. For Child
entities, I use auto-generated key IDs and _no_ key names, but all
Child entities are children of Parent entities, so the paths to the
children contain the evenly distributes key names of the parents.
If I have many write operations on children that are in the same
entity group, the described error could occur. But what happens if my
write operations are on children that are in different entity groups?
Their IDs are auto-generated and not evenly distributed, but their
paths contain the evenly distributed key names.

Good question! The point being made in the article refers to the
  global
distribution of the complete key, so writes to these children will be
  well
distributed, and you won't have to worry about this source of
  contention.

-Nick Johnson

--

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

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

 --
You received this message because you are subscribed to the Google
  Groups
Google App Engine group.
To post to this group, send email to
  google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to

Re: [google-appengine] Re: Question on key design: Datastore errors and tablets

2010-02-19 Thread Nick Johnson (Google)
Hi Peter,

On Fri, Feb 19, 2010 at 1:04 PM, peterk peter.ke...@gmail.com wrote:

 Thanks Nick, I understand now. So I guess the easiest thing to do is
 to have a random component in your keynames...at least for apps I'm
 considering I don't think I'd have any other way to reasonably ensure
 the range of keynames in a given (batch) update were well distributed.


Bear in mind that you only have to even worry about this if you're expecting
hundreds of QPS of inserts to the same model.

If you are in this situation, hashing some stable information from your
model may be sufficient to generate a well distributed key name.

-Nick Johnson


 On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com
 wrote:
  On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote:
   What about keynames like:
 
   counter_standard_dbf
   counter_standard_clo
 
   or would something like
 
   dbfo01la_counter_standard
   clo091b_counter_standard
 
   work better?
 
   I'm thinking of cases where you may use keynames that can in some way
   be constructed/predicted for fast access later.
   like..username_counter_standard
 
   Would the common pre-fix or post-fix make for close distribution? :|
 
  Either one will work fine - Bigtable will split tablets based on key to
  ensure no tablet gets too big. Long identical prefixes just mean that the
  split will be based on later characters in the string.
 
  What's important for key distribution for really high update rates is the
  distribution of key names/IDs for those updates: If they all go to a
 single
  tablet (eg, they make up a small proportion of the total range of IDs
 you're
  employing), they will be limited by what that tablet server can support.
 If
  they are widely spread out within the range you're using, regardless of
 what
  that range is, you'll be fine.
 
  -Nick Johnson
 
 
 
 
 
 
 
   On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com
   wrote:
Hi Eli,
 
Using a randomly generated ID like a uuid is perfectly satisfactory
 to
achieve an even distribution.
 
On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com
 wrote:
 I understand the process of evenly distributing IDs since they are
   Integer
 values.. is there a canonized appengine way to evenly distribute
   key_names?
 
 Just make sure key_name1 and key_name2 don't have their i-th
 letters
   too
 close too eachother? How far is far enough?
 
 Does doing even distribution matter if you aren't using
 auto-generated
   IDs?
 
It certainly can - if you insert, in order, , aaab, aaac,
 etc,
you'll encounter the same problem at very high volumes as you'd see
 with
auto generated IDs.
 
-Nick Johnson
 
 Thanks for information.
 
 On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) 
 nick.john...@google.com wrote:
 
 Hi Ulrich,
 
 On Wed, Feb 17, 2010 at 5:30 PM, Ulrich 
 mierendo...@googlemail.com
   wrote:
 
 Hi,
 
 I have read the following
 Timeouts due to datastore issues --- [...] The most common
 example
   of
 this occurs when you are rapidly inserting a large number of
 entities
 of the same kind, with auto-generated IDs. In this case, most
 inserts
 hit the same range of the same tablet, and the single tablet
 server
   is
 overwhelmed with writes. [...] If this does affect your app, the
 easiest solution is to use more evenly distributed IDs instead of
 the
 auto-allocated ones  [...]
 (
 
  
 http://code.google.com/appengine/articles/handling_datastore_errors.html
 )
 
 Let's say I am having a model Parent and a model Child. For
   Parent
 entities, I use key names that are evenly distributed. For Child
 entities, I use auto-generated key IDs and _no_ key names, but
 all
 Child entities are children of Parent entities, so the paths to
 the
 children contain the evenly distributes key names of the parents.
 If I have many write operations on children that are in the same
 entity group, the described error could occur. But what happens
 if my
 write operations are on children that are in different entity
 groups?
 Their IDs are auto-generated and not evenly distributed, but
 their
 paths contain the evenly distributed key names.
 
 Good question! The point being made in the article refers to the
   global
 distribution of the complete key, so writes to these children will
 be
   well
 distributed, and you won't have to worry about this source of
   contention.
 
 -Nick Johnson
 
 --
 
 You received this message because you are subscribed to the
 Google
   Groups
 Google App Engine group.
 To post to this group, send email to
   google-appeng...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 

[google-appengine] Error while deleting a version

2010-02-19 Thread Satya
My App Id is teluguobserver

Presently I have 2 versions of code deployed. Version 2 and 3.

When I am trying to delete the version 2, I am getting server error
without any details.
Server Error
A server error has occurred.

Please help me in deleting this version.

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



[google-appengine] Re: Question on key design: Datastore errors and tablets

2010-02-19 Thread peterk
Say I did a batch update of 500 entities all of the same model...could
this breach the '100s of qps' requirement that could lead to tablets
getting too hot? I've seen benches (http://blog.dantup.com/pi/
bm_put_perf.png) that show 500 entities being batch put in ~4s which
suggests an average put rate that might be in the 100+ per second in
such a case.

Or would that be 'ok'? :) I'm guessing if I were in a situation where
multiple such batch updates could be occurring simultaneously or in a
tight timeframe, then I'd be more likely to run into this...depending
on how busy my app became, I'd possibly need to start doing that (i.e.
lots of such large batch updates happening in short timeframes).


On Feb 19, 1:12 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
 Hi Peter,

 On Fri, Feb 19, 2010 at 1:04 PM, peterk peter.ke...@gmail.com wrote:
  Thanks Nick, I understand now. So I guess the easiest thing to do is
  to have a random component in your keynames...at least for apps I'm
  considering I don't think I'd have any other way to reasonably ensure
  the range of keynames in a given (batch) update were well distributed.

 Bear in mind that you only have to even worry about this if you're expecting
 hundreds of QPS of inserts to the same model.

 If you are in this situation, hashing some stable information from your
 model may be sufficient to generate a well distributed key name.

 -Nick Johnson





  On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com
  wrote:
   On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com wrote:
What about keynames like:

counter_standard_dbf
counter_standard_clo

or would something like

dbfo01la_counter_standard
clo091b_counter_standard

work better?

I'm thinking of cases where you may use keynames that can in some way
be constructed/predicted for fast access later.
like..username_counter_standard

Would the common pre-fix or post-fix make for close distribution? :|

   Either one will work fine - Bigtable will split tablets based on key to
   ensure no tablet gets too big. Long identical prefixes just mean that the
   split will be based on later characters in the string.

   What's important for key distribution for really high update rates is the
   distribution of key names/IDs for those updates: If they all go to a
  single
   tablet (eg, they make up a small proportion of the total range of IDs
  you're
   employing), they will be limited by what that tablet server can support.
  If
   they are widely spread out within the range you're using, regardless of
  what
   that range is, you'll be fine.

   -Nick Johnson

On Feb 18, 5:59 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
 Hi Eli,

 Using a randomly generated ID like a uuid is perfectly satisfactory
  to
 achieve an even distribution.

 On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com
  wrote:
  I understand the process of evenly distributing IDs since they are
Integer
  values.. is there a canonized appengine way to evenly distribute
key_names?

  Just make sure key_name1 and key_name2 don't have their i-th
  letters
too
  close too eachother? How far is far enough?

  Does doing even distribution matter if you aren't using
  auto-generated
IDs?

 It certainly can - if you insert, in order, , aaab, aaac,
  etc,
 you'll encounter the same problem at very high volumes as you'd see
  with
 auto generated IDs.

 -Nick Johnson

  Thanks for information.

  On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) 
  nick.john...@google.com wrote:

  Hi Ulrich,

  On Wed, Feb 17, 2010 at 5:30 PM, Ulrich 
  mierendo...@googlemail.com
wrote:

  Hi,

  I have read the following
  Timeouts due to datastore issues --- [...] The most common
  example
of
  this occurs when you are rapidly inserting a large number of
  entities
  of the same kind, with auto-generated IDs. In this case, most
  inserts
  hit the same range of the same tablet, and the single tablet
  server
is
  overwhelmed with writes. [...] If this does affect your app, the
  easiest solution is to use more evenly distributed IDs instead of
  the
  auto-allocated ones  [...]
  (

 http://code.google.com/appengine/articles/handling_datastore_errors.html
  )

  Let's say I am having a model Parent and a model Child. For
Parent
  entities, I use key names that are evenly distributed. For Child
  entities, I use auto-generated key IDs and _no_ key names, but
  all
  Child entities are children of Parent entities, so the paths to
  the
  children contain the evenly distributes key names of the parents.
  If I have many write operations on children that are in the same
  entity group, the described error could occur. But what happens
  if my
  write operations are on children that 

Re: [google-appengine] Model class of a Query instance?

2010-02-19 Thread Nickolas Daskalou
Hi Nick,

I have something like this:


class Foo(db.Model):
  name = db.StringProperty()
  ...

class Bar(db.Model):
  foo = db.ReferenceProperty(Foo, collection_name='bars')
  foo_name = db.StringProperty()

class Baz(db.Model):
  foo = db.ReferenceProperty(Foo, collection_name='bazs')
  foo_name = db.StringProperty()


I have added a hook in my application which calls a post_put() method on all
instances that are put() into the Datastore (after they are put, obviously).

In the post_put() of a Foo entity, I want to get all reverse referenced
Bar and Baz entities, and update their foo_name with the Foo entity's name.
However, I only need to update the Bar and Baz entities who's foo_name value
!= the Foo entity's name. So I could do something like:


class Foo(db.Model):
  ...
  def post_put():
for collection_name in ('bars', 'bazs'):
  q = getattr(self, collection_name)
  q.filter('foo_name !=', self.name)
  # Fetch, then update.


This works fine, except I need to add a new index each time I do this, since
q has two filters, one equality (an implied filter('foo =', self)) and one
inequality.

Instead, I would like to get the Model class associated with each
collection_name and just add one inequality filter, ie:


class Foo(db.Model):
  ...
  def post_put():
for collection_name in ('bars', 'bazs'):
  model_class = self.get_model_class_for_collection(collection_name)
  q = model_class.all().filter('foo_name !=', self.name)
  # Fetch, then update.
  def get_model_class_for_collection(collection_name):
q = getattr(self, collection_name)
return q.model_class() # This is the Query method I want


This way I do not need to create a new index each time I do this.

Can you suggest a similar no-new-index way of doing this?

I also thought about doing this (only get_model_class_for_collection() has
changed):


class Foo(db.Model):
  ...
  def post_put():
for collection_name in ('bars','bazs'):
  model_class = self.get_model_class_for_collection(collection_name)
  q = model_class.all().filter('foo_name !=', self.name)
  # Fetch, then update.
  def get_model_class_for_collection(collection_name):
q = getattr(self, collection_name)
entity = g.get()
return entity.__class__


Forgetting about the extra Datastore get() required, the method above could
cause problems when it comes to PolyModel entities, because (correct me if I
am wrong) when PolyModel entities come back from the Datastore they are
instances of the deepest subclass in the entity's inheritance chain, so
returning entity.__class__ (in the last line above) will limit the results
of the query (with the single inequality filter) to entity's of the original
entity's PolyModel subclass. I hope that makes sense.

Nick, I would love to get your ideas on this. Also, I'm no Python expert so
if I'm overcomplicating things please let me know.

Cheers,

Nick


On 19 February 2010 22:50, Nick Johnson (Google) nick.john...@google.comwrote:

 Hi Nickolas,

 There's no public interface for this. Why do you need to do it?

 -Nick Johnson

 On Fri, Feb 19, 2010 at 11:28 AM, Nickolas Daskalou n...@daskalou.comwrote:

 Is there an official way to get the Model class from a Query instance? I
 had a look through the online docs and couldn't find anything.

 In the SDK code however, the Model class of a Query instance can be
 retrieved from the _model_class attribute of the Query instance, eg:

 q = MyModel.all()
 
 model_class = q._model_class # == MyModel

 I don't really want to do it this way because since this is not documented
 anywhere, I'm afraid that this implementation may change in the future.

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




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

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


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 

Re: [google-appengine] Problems with my AppEngine Account

2010-02-19 Thread Guido Kämper

Hi Ikai,

i deaktivated the account in the meanwhile, but I decided to give it a  
further chance and re-registered today. But it's still the same:
* I can create an application, but afterwards I don't see it in the  
apps list. eg. exclamation-iphone


I already reset the IP address of my domain to point to the server, I  
used before. I wanted to use Google app-engine, because I wanted to  
have a well scaling homepage. But all in all I probably won't use it,  
as it is not even possible for me to upload the app..


thank you,
Guido



Am 17.02.2010 um 22:46 schrieb Ikai L (Google):


Guido, are you still having issues with this?

2010/2/12 Guido Kämper g...@spreadshirt.net
Hello,

I have a serious problem with my app engine account. Seems to be  
related to rights management issues or login problems.


I added one application without problems, I could upload it using  
appcfg.sh update


But now I made some changes at the domain and added the application  
to Google Apps. First I got redirect errors, when accessing the  
Appengine portal - these problems somehow got solved. The app works  
as expected,it is now available at www.exclamation.de.


But: I am not allowed to update the application with further  
versions. Output:

403 Forbidden
You do not have permission to modify this app (app_id=u'exclam123').

And: If I add a new application, I get the message, that I don't  
have access to the new application, and it does not show up in the  
applications overview. But the count of available applications (10  
at account creation) was decreased by 1.


I am writing from my second email address, as the MX records of my  
primary email address is currently changing to google mail.  
Unfortunately I already wrote the group admin of this group, because  
I could not find any contact information for server problems.


Is anyone in this group able to help me with my problems? The  
account is gk(at)exclamation.de


Or can anyone give me a contact info of the google administration?

thank you very much,
Guido

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





--
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

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


___

Teamlead IT Backend

Tel.: 0341 594 00 5561

sprd.net AG

Gießerstraße 27 · 04229 Leipzig · Germany

Vorstand/Executive Board: Jana Eggers (Vorsitzende/CEO)
Matthias Spieß

Aufsichtsratsvorsitzender/
Chairman of the Supervisory Board: Lukasz Gadowski

Handelsregister/Trade Register: Amtsgericht Leipzig, HRB 22478
Umsatzsteuer-IdentNummer/VAT-ID: DE 8138 7149 4


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



[google-appengine] must i install Visual Studio for python ssl module?

2010-02-19 Thread saintthor
for ssl module, i downloaded ssl-1.15.tar.gz from 
http://pypi.python.org/pypi/ssl.
but it is source, no exe file. i tried to install it, message as
below.

D:\Python25\ssl-1.15setup.py install
running install
running build
running build_py
running build_ext
building 'ssl._ssl2' extension
error: Python was built with Visual Studio version 7.1, and extensions
need to b
e built with the same version of the compiler, but it isn't installed.

where can i get a exe file or how can i install this module in other
way?

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



Re: [google-appengine] Model class of a Query instance?

2010-02-19 Thread Nick Johnson (Google)
Hi Nickolas,

On Fri, Feb 19, 2010 at 2:14 PM, Nickolas Daskalou n...@daskalou.comwrote:

 Hi Nick,

 I have something like this:


 class Foo(db.Model):
   name = db.StringProperty()
   ...

 class Bar(db.Model):
   foo = db.ReferenceProperty(Foo, collection_name='bars')
   foo_name = db.StringProperty()

 class Baz(db.Model):
   foo = db.ReferenceProperty(Foo, collection_name='bazs')
   foo_name = db.StringProperty()


 I have added a hook in my application which calls a post_put() method on
 all instances that are put() into the Datastore (after they are put,
 obviously).

 In the post_put() of a Foo entity, I want to get all reverse referenced
 Bar and Baz entities, and update their foo_name with the Foo entity's name.
 However, I only need to update the Bar and Baz entities who's foo_name value
 != the Foo entity's name.


Will this be an all-or-nothing proposition? Eg, if the put of 'foo' changed
the foo_name, they'll all need updating, otherwise none of them will? In
that case, you'd be better off checking if it's changed, and updating them
all (without the inequality filter) if it did change.


 So I could do something like:


 class Foo(db.Model):
   ...
   def post_put():
 for collection_name in ('bars', 'bazs'):
   q = getattr(self, collection_name)
   q.filter('foo_name !=', self.name)
   # Fetch, then update.


 This works fine, except I need to add a new index each time I do this,
 since q has two filters, one equality (an implied filter('foo =', self))
 and one inequality.

 Instead, I would like to get the Model class associated with each
 collection_name and just add one inequality filter, ie:


 class Foo(db.Model):
   ...
   def post_put():
 for collection_name in ('bars', 'bazs'):
   model_class = self.get_model_class_for_collection(collection_name)
   q = model_class.all().filter('foo_name !=', self.name)
   # Fetch, then update.
   def get_model_class_for_collection(collection_name):
 q = getattr(self, collection_name)
 return q.model_class() # This is the Query method I want


 This way I do not need to create a new index each time I do this.


The above will change every single Bar and Baz entity that doesn't match
foo's entity name, though, including those that have nothing to do with the
foo you modified.



 Can you suggest a similar no-new-index way of doing this?


Depending on how many Bar and Baz entities there are per Foo, you could just
drop the inequality and filter them out once they're fetched.



 I also thought about doing this (only get_model_class_for_collection() has
 changed):


 class Foo(db.Model):
   ...
   def post_put():
 for collection_name in ('bars','bazs'):
   model_class = self.get_model_class_for_collection(collection_name)
   q = model_class.all().filter('foo_name !=', self.name)
   # Fetch, then update.
   def get_model_class_for_collection(collection_name):
 q = getattr(self, collection_name)
 entity = g.get()
 return entity.__class__


Given that you're already hard-coding in the list of collections, you could
avoid the need for a 'get_model_class_for_collection' method by replacing
the loop with:

for model_class in (Bar, Baz):



 Forgetting about the extra Datastore get() required, the method above could
 cause problems when it comes to PolyModel entities, because (correct me if I
 am wrong) when PolyModel entities come back from the Datastore they are
 instances of the deepest subclass in the entity's inheritance chain, so
 returning entity.__class__ (in the last line above) will limit the results
 of the query (with the single inequality filter) to entity's of the original
 entity's PolyModel subclass. I hope that makes sense.

 Nick, I would love to get your ideas on this. Also, I'm no Python expert so
 if I'm overcomplicating things please let me know.

 Cheers,

 Nick


 On 19 February 2010 22:50, Nick Johnson (Google) 
 nick.john...@google.comwrote:

 Hi Nickolas,

 There's no public interface for this. Why do you need to do it?

 -Nick Johnson

 On Fri, Feb 19, 2010 at 11:28 AM, Nickolas Daskalou n...@daskalou.comwrote:

 Is there an official way to get the Model class from a Query
 instance? I had a look through the online docs and couldn't find anything.

 In the SDK code however, the Model class of a Query instance can be
 retrieved from the _model_class attribute of the Query instance, eg:

 q = MyModel.all()
 
 model_class = q._model_class # == MyModel

 I don't really want to do it this way because since this is not
 documented anywhere, I'm afraid that this implementation may change in the
 future.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appeng...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group 

Re: [google-appengine] Re: Question on key design: Datastore errors and tablets

2010-02-19 Thread Nick Johnson (Google)
Hi peterk,

On Fri, Feb 19, 2010 at 2:02 PM, peterk peter.ke...@gmail.com wrote:

 Say I did a batch update of 500 entities all of the same model...could
 this breach the '100s of qps' requirement that could lead to tablets
 getting too hot? I've seen benches (http://blog.dantup.com/pi/
 bm_put_perf.png) that show 500 entities being batch put in ~4s which
 suggests an average put rate that might be in the 100+ per second in
 such a case.


Only if you're doing such puts at a high rate. It's the sustained rate that
matters, not the instantaneous rate.

-Nick Johnson



 Or would that be 'ok'? :) I'm guessing if I were in a situation where
 multiple such batch updates could be occurring simultaneously or in a
 tight timeframe, then I'd be more likely to run into this...depending
 on how busy my app became, I'd possibly need to start doing that (i.e.
 lots of such large batch updates happening in short timeframes).


 On Feb 19, 1:12 pm, Nick Johnson (Google) nick.john...@google.com
 wrote:
  Hi Peter,
 
  On Fri, Feb 19, 2010 at 1:04 PM, peterk peter.ke...@gmail.com wrote:
   Thanks Nick, I understand now. So I guess the easiest thing to do is
   to have a random component in your keynames...at least for apps I'm
   considering I don't think I'd have any other way to reasonably ensure
   the range of keynames in a given (batch) update were well distributed.
 
  Bear in mind that you only have to even worry about this if you're
 expecting
  hundreds of QPS of inserts to the same model.
 
  If you are in this situation, hashing some stable information from your
  model may be sufficient to generate a well distributed key name.
 
  -Nick Johnson
 
 
 
 
 
   On Feb 19, 11:58 am, Nick Johnson (Google) nick.john...@google.com
   wrote:
On Fri, Feb 19, 2010 at 12:28 AM, peterk peter.ke...@gmail.com
 wrote:
 What about keynames like:
 
 counter_standard_dbf
 counter_standard_clo
 
 or would something like
 
 dbfo01la_counter_standard
 clo091b_counter_standard
 
 work better?
 
 I'm thinking of cases where you may use keynames that can in some
 way
 be constructed/predicted for fast access later.
 like..username_counter_standard
 
 Would the common pre-fix or post-fix make for close distribution?
 :|
 
Either one will work fine - Bigtable will split tablets based on key
 to
ensure no tablet gets too big. Long identical prefixes just mean that
 the
split will be based on later characters in the string.
 
What's important for key distribution for really high update rates is
 the
distribution of key names/IDs for those updates: If they all go to a
   single
tablet (eg, they make up a small proportion of the total range of IDs
   you're
employing), they will be limited by what that tablet server can
 support.
   If
they are widely spread out within the range you're using, regardless
 of
   what
that range is, you'll be fine.
 
-Nick Johnson
 
 On Feb 18, 5:59 pm, Nick Johnson (Google) 
 nick.john...@google.com
 wrote:
  Hi Eli,
 
  Using a randomly generated ID like a uuid is perfectly
 satisfactory
   to
  achieve an even distribution.
 
  On Wed, Feb 17, 2010 at 7:02 PM, Eli Jones eli.jo...@gmail.com
   wrote:
   I understand the process of evenly distributing IDs since they
 are
 Integer
   values.. is there a canonized appengine way to evenly
 distribute
 key_names?
 
   Just make sure key_name1 and key_name2 don't have their i-th
   letters
 too
   close too eachother? How far is far enough?
 
   Does doing even distribution matter if you aren't using
   auto-generated
 IDs?
 
  It certainly can - if you insert, in order, , aaab,
 aaac,
   etc,
  you'll encounter the same problem at very high volumes as you'd
 see
   with
  auto generated IDs.
 
  -Nick Johnson
 
   Thanks for information.
 
   On Wed, Feb 17, 2010 at 1:32 PM, Nick Johnson (Google) 
   nick.john...@google.com wrote:
 
   Hi Ulrich,
 
   On Wed, Feb 17, 2010 at 5:30 PM, Ulrich 
   mierendo...@googlemail.com
 wrote:
 
   Hi,
 
   I have read the following
   Timeouts due to datastore issues --- [...] The most common
   example
 of
   this occurs when you are rapidly inserting a large number of
   entities
   of the same kind, with auto-generated IDs. In this case, most
   inserts
   hit the same range of the same tablet, and the single tablet
   server
 is
   overwhelmed with writes. [...] If this does affect your app,
 the
   easiest solution is to use more evenly distributed IDs
 instead of
   the
   auto-allocated ones  [...]
   (
 
  
 http://code.google.com/appengine/articles/handling_datastore_errors.html
   )
 
   Let's say I am having a model Parent and a model Child.
 For
 Parent
   entities, I use key names that are evenly distributed. For
 Child
   entities, I use auto-generated key 

[google-appengine] Local datastore is slow once loaded up, any suggestions?

2010-02-19 Thread obvious
I've loaded up a local datastore with 40,000+ entries.  Unfortunately,
recalling any data from it at all is very slow on my fairly new
Macbook Pro.  Any suggestions on speeding things up, short of buying a
new piece of hardware?

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



Re: [google-appengine] Local datastore is slow once loaded up, any suggestions?

2010-02-19 Thread Nick Johnson (Google)
Hi,

Unfortunately, the App Engine SDK datastore isn't really designed for
testing with such a large amount of data. You should try testing with a much
smaller dataset, if that's remotely possible.

-Nick Johnson


On Fri, Feb 19, 2010 at 5:19 PM, obvious c...@obviousdiversion.com wrote:

 I've loaded up a local datastore with 40,000+ entries.  Unfortunately,
 recalling any data from it at all is very slow on my fairly new
 Macbook Pro.  Any suggestions on speeding things up, short of buying a
 new piece of hardware?

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




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

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



Re: [google-appengine] Re: Lucene/Compass

2010-02-19 Thread Patrick Twohig
I run it in my app that's on the App Engine right now, app's in staging so
I have it blocked off to people not in my domain.  Shay Banon has a video
clip of it running on his blog, and then I submitted a patch to the compass
project that prevents transactions from butting heads when writing the index
to the datastore.  I've seen it working with mine own two eyes, as they
say.  It's also listed as working in the will it play in app engine
page.  Unfortunately, I'm concerned about the scalability of it.  It seems
to take quite a while to index a single object and every so often the search
index gets corrupted because a request to index an object gets shut down by
a deadline exceeded exception.  I try to recover by rolling back the work in
progress and releasing all locks, but the request still gets terminated
before that can happen.  This is with 4-5 users using it just to do
testing/tuning of the app.  I can't imagine how it would work under any
actual load.  It's also using quite a bit of CPU usage.

On Wed, Feb 17, 2010 at 7:21 AM, uo yon...@googlemail.com wrote:

 I too encountered challenges and I still cante believe anyone runs
 compass on gae... on close inspection of some of the core compass
 classes like org.compass.core.Compass implements
 javax.naming.referenceable which isnt in Google's whitelist.




 On Feb 16, 3:33 am, Patrick Twohig patr...@namazustudios.com wrote:
  Yeah.  I know.  The beta version of Compass supports GAE
 
 
 
  On Mon, Feb 15, 2010 at 1:13 AM, Tonny 12br...@gmail.com wrote:
   Not having access to the file system on GAE will prevent you from
   using the out-of-the-box Lucene Index implementations (which uses the
   filesystem).
 
   On Feb 13, 12:40 am, Patrick Twohig patr...@namazustudios.com wrote:
I was curious if anybody is using Lucene and Compass and how well it
   works
in the app engine. I've seen some other posts indicating that it
 actually
manages to handle quite a bit of data, but I was curious if anybody
 else
   out
there could attest to how well it works.
 
   --
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine group.
   To post to this group, send email to google-appengine@googlegroups.com
 .
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 google-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%252bunsubscr...@googlegroups.com
 
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.
 
  --
  Patrick H. Twohig.
 
  Namazu Studios
  P.O. Box 34161
  San Diego, CA 92163-4161

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




-- 
Patrick H. Twohig.

Namazu Studios
P.O. Box 34161
San Diego, CA 92163-4161

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



Re: [google-appengine] Protobuf Version on GAE

2010-02-19 Thread Nick Johnson (Google)
Hi Davide,

The Protocol Buffers we use on App Engine are built using a different
version of the Protocol Buffer library to the one that was open sourced. If
you want to use Protocol Buffers yourself, you'll need to include the
library with your app.

-Nick Johnson


On Thu, Feb 18, 2010 at 2:44 PM, Davide Cerbo davidece...@gmail.com wrote:


 Hi everyone,


 someone use Google Protobuf on GAE? And know what version is installed? I 
 have deploy a project that use it and I have the follow exception:


 java.lang.NoSuchMethodError: 
 com.google.protobuf.Descriptors$FileDescriptor.internalBuildGeneratedFileFrom(Ljava/lang/String;[Lcom/google/protobuf/Descriptors$FileDescriptor;Lcom/google/protobuf/Descriptors$FileDescriptor$InternalDescriptorAssigner;)V


 Searching around the web I've found that is a problem of version. I use 
 version 2.2.0 while GAE doesn't use it :(


 I have deployed it with my WAR but it is ignored.


 Someone can tell me what version user GAE?


 Thanks in advance.


 Davide


 --
 --
 Davide Cerbo

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




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

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



Re: [google-appengine] implementing asynchronous http in java

2010-02-19 Thread Conor Power
apologies if I'm a little vague in my reply but I remember receiving
something similar when I first started using the URLFetchService and I think
it was related to the fact that I had imported the incorrect classes for
HTTPRequest or header or something like like. I think I just chose the first
one offered to me by the IDE ...

It was a while ago so I hope I'm not sending you on a wild goose chase.


On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 
david.jonathan.nel...@gmail.com wrote:

 Hi,

 I'm trying to implement async http in java.  Here is the important
 part of the code:

for (String urlString : urls)
{
// TODO: try and get rid of these two heap
 allocations
url = new URL(urlString);
request = new HTTPRequest(url);
request.addHeader(userAgentHeader);
request.addHeader(authorizationHeader);
request.addHeader(acceptEncodingHeader);
request.addHeader(acceptCharsetHeader);


 responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(request));
apiCallsMade++;
}
for (FutureHTTPResponse futureResponse :
 responses)
{
parseResponse(new
 String(futureResponse.get().getContent()));
}

 I keep getting this error:  com.google.apphosting.api.ApiProxy
 $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
 was not found..  I looked around for any jars that were missing from
 the classpath but didn't see anything missing.  Do you know which jar
 that code is in?  I googled the error and also searched through this
 group but found nothing.

 Thanks,
 David

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



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



[google-appengine] Datastore Viewer gql query problem

2010-02-19 Thread Stefano
Hi everybody,

frow a few days a simply gql query such as this one will throw an
exception.
SELECT * FROM Station order by synced

Synced it's just a not null timestamp field.

Since it's happening in the admin panel I don't have any log
explaining why it's not working anymore.

https://appengine.google.com/datastore/explorer?submitted=1app_id=prezzi-benzinaviewby=gqlkind=Stationquery=SELECT+*+FROM+Station+order+by+synced

Stefano

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



[google-appengine] problem with working on google app engine

2010-02-19 Thread Bhavana
i have installed my google app engine and did a program of hello
world,but while i am making changes on this during run time no changes
is reflected and i am getting the same output as previous..please help
me out

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



[google-appengine] Documentation contribution

2010-02-19 Thread Alexander Orlov
I'd like to add an important detail to 
http://code.google.com/appengine/docs/java/config/cron.html
How can I do it? I haven't found any accessible SVN/Wiki version of
this page.

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



[google-appengine] Datastore Statistics page not updating (over 3 days now)

2010-02-19 Thread Eli Jones
Is there a backlog on getting Datastore Statistics calculated?

When I go to the Datastore Statistics page for my application, it
indicates that Last Updated = 3 days, 3:35:42 ago

Which is accurate since there are no stats for entities or Models created
since then.

Is anyone else having this issue or am I the only lucky one?

IF this is not related to the Maintenance performed earlier this week, then
it could be related to the fact that I generated a new Model with ALOT of
new entities (around 500,000) the night before Maintenance .. so much so
that my Total Stored Data jumped from .03 to .27 GB (granted, all of the
properties on the entities are Indexed=False).

Could the addition of so much new data make Statistics take a long time to
update?

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



[google-appengine] Re: Problems with my AppEngine Account

2010-02-19 Thread Wooble
Try logging in at http://appengine.google.com/a/spreadshirt.net

On Feb 19, 10:03 am, Guido Kämper g...@spreadshirt.net wrote:
 Hi Ikai,

 i deaktivated the account in the meanwhile, but I decided to give it a  
 further chance and re-registered today. But it's still the same:
 * I can create an application, but afterwards I don't see it in the  
 apps list. eg. exclamation-iphone

 I already reset the IP address of my domain to point to the server, I  
 used before. I wanted to use Google app-engine, because I wanted to  
 have a well scaling homepage. But all in all I probably won't use it,  
 as it is not even possible for me to upload the app..

 thank you,
 Guido

 Am 17.02.2010 um 22:46 schrieb Ikai L (Google):



  Guido, are you still having issues with this?

  2010/2/12 Guido Kämper g...@spreadshirt.net
  Hello,

  I have a serious problem with my app engine account. Seems to be  
  related to rights management issues or login problems.

  I added one application without problems, I could upload it using  
  appcfg.sh update

  But now I made some changes at the domain and added the application  
  to Google Apps. First I got redirect errors, when accessing the  
  Appengine portal - these problems somehow got solved. The app works  
  as expected,it is now available atwww.exclamation.de.

  But: I am not allowed to update the application with further  
  versions. Output:
  403 Forbidden
  You do not have permission to modify this app (app_id=u'exclam123').

  And: If I add a new application, I get the message, that I don't  
  have access to the new application, and it does not show up in the  
  applications overview. But the count of available applications (10  
  at account creation) was decreased by 1.

  I am writing from my second email address, as the MX records of my  
  primary email address is currently changing to google mail.  
  Unfortunately I already wrote the group admin of this group, because  
  I could not find any contact information for server problems.

  Is anyone in this group able to help me with my problems? The  
  account is gk(at)exclamation.de

  Or can anyone give me a contact info of the google administration?

  thank you very much,
  Guido

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

  --
  Ikai Lan
  Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com|http://twitter.com/app_engine

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

 ___

 Teamlead IT Backend

 Tel.: 0341 594 00 5561

 sprd.net AG

 Gießerstraße 27 · 04229 Leipzig · Germany

 Vorstand/Executive Board: Jana Eggers (Vorsitzende/CEO)
 Matthias Spieß

 Aufsichtsratsvorsitzender/
 Chairman of the Supervisory Board: Lukasz Gadowski

 Handelsregister/Trade Register: Amtsgericht Leipzig, HRB 22478
 Umsatzsteuer-IdentNummer/VAT-ID: DE 8138 7149 4

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



[google-appengine] Re: first app upload - blank page

2010-02-19 Thread ameyp
I'm having the same issue. I have three different scripts in the same
file, one which is mapped to /, one to /blog and one to /blog/
admin/
My app.yaml has the following handlers:

handlers:
- url: /static
  static_dir: static

- url: /favicon.ico
  static_files: static/favicon.ico
  upload: static/favicon.ico

- url: /about-me
  static_files: static/about-me.html
  upload: static/about-me.html

- url: /blog
  script: blog.py

- url: /blog/admin
  script: admin.py
  login: required

- url: /blog/admin/.*
  script: admin.py
  login: required

- url: /blog/.*
  script: blog.py

- url: /.*
  script: site.py

and site.py has:

class FrontPageHandler(webapp.RequestHandler):
def get(self):
self.response.out.write(
  html
body
  Hello
/body
  /html)

application = webapp.WSGIApplication(
[('/', FrontPageHandler)],
debug=True)

def main():
util.run_wsgi_app(application)

if __name__ == __main__:
main()

/ Works fine on local server, shows a blank page on appengine's
server. /blog and /blog/admin work fine. Please help, I've been going
at this for the past two hours :(

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



[google-appengine] Google Data Store

2010-02-19 Thread Prasad
hi
I have just started to learn Google datastore. I am just doin one
small application as an experiment and tht needs a database and for
this reason I am using datastore. I just have a fundamental doubt.
Does for small application and few queries will need to pay. I mean is
it free and if yes how much i.e what is the limit? I read that it is
CPU time how is that calculated?

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



[google-appengine] Google Data Store

2010-02-19 Thread Prasad
hi
I have just started to learn Google datastore. I am just doin one
small application as an experiment and tht needs a database and for
this reason I am using datastore. I just have a fundamental doubt.
Does for small application and few queries will need to pay. I mean is
it free and if yes how much i.e what is the limit? I read that it is
CPU time how is that calculated?

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



[google-appengine] Re: Google Data Store

2010-02-19 Thread Wooble


On Feb 19, 1:35 pm, Prasad pra...@rediffmail.com wrote:
 hi
 I have just started to learn Google datastore. I am just doin one
 small application as an experiment and tht needs a database and for
 this reason I am using datastore. I just have a fundamental doubt.
 Does for small application and few queries will need to pay. I mean is
 it free and if yes how much i.e what is the limit? I read that it is
 CPU time how is that calculated?

If it's really a small application, it will almost certainly be
free.  If you don't enable billing, it's free regardless, you'd just
start hitting over quota exceptions once the quota was used up.  I
believe all of the free quotas are intended to work within the 1.3
million requests per day for typical applications.  IMO if you're
seeing a significant % of that you're probably outside of most
reasonable definitions of small. :)

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



Re: [google-appengine] Documentation contribution

2010-02-19 Thread Ikai L (Google)
What's the detail? Create a new issue in our issues tracker and post the
link:

http://code.google.com/p/googleappengine/issues/list

On Thu, Feb 18, 2010 at 10:14 PM, Alexander Orlov alexander.or...@loxal.net
 wrote:

 I'd like to add an important detail to
 http://code.google.com/appengine/docs/java/config/cron.html
 How can I do it? I haven't found any accessible SVN/Wiki version of
 this page.

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




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

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



[google-appengine] Re: pygooglechart

2010-02-19 Thread nickmilon
Yes in your PC - follow the instructions of the library for that.
Later on I will take a look at the library my self.


On Feb 19, 1:09 pm, Massimiliano massimiliano.pietr...@gmail.com
wrote:
 Sure you can after installing the library on my PC?

 2010/2/19 nickmilon nickmi...@gmail.com





  Sure you can after installing the library and including the files in
  your application provided this library does not depend on anything but
  python.
  Also since data passing mechanism for google visualization api is
  quite easy to implement in python you can avoid the burden of one more
  import and write your own interface.
  For an example of using visualization api from gae you can take a look
  at:  http://www.geognos.com/geo/en/cc/no.html#Economy
  Unfortunately i did not have the time to document the code but feel
  free to examine the page source code and the relative javascript
  files.

  Happy coding;)

  On Feb 18, 2:30 pm, Massimiliano massimiliano.pietr...@gmail.com
  wrote:
   Dear All,
   I'm trying to learn using python and Google App Engine. Can I use this
   library on the appengine? Just importing this in the python application
   (from pygooglechart import *)?

   Massimiliano

   --

   My email: massimiliano.pietr...@gmail.com
   My Google Wave: massimiliano.pietr...@googlewave.com

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

 --

 My email: massimiliano.pietr...@gmail.com
 My Google Wave: massimiliano.pietr...@googlewave.com

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



Re: [google-appengine] must i install Visual Studio for python ssl module?

2010-02-19 Thread Eli Jones
You could download the free version of Visual Studio and then try to compile
it with that.. but... you'd be on your own figuring out how to get it to
compile after installing Visual Studio.

On Fri, Feb 19, 2010 at 10:39 AM, saintthor saintt...@gmail.com wrote:

 for ssl module, i downloaded ssl-1.15.tar.gz from
 http://pypi.python.org/pypi/ssl.
 but it is source, no exe file. i tried to install it, message as
 below.

 D:\Python25\ssl-1.15setup.py install
 running install
 running build
 running build_py
 running build_ext
 building 'ssl._ssl2' extension
 error: Python was built with Visual Studio version 7.1, and extensions
 need to b
 e built with the same version of the compiler, but it isn't installed.

 where can i get a exe file or how can i install this module in other
 way?

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



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



[google-appengine] Re: implementing asynchronous http in java

2010-02-19 Thread davidnelson
guess I'll post on stackoverflow...

On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote:
 apologies if I'm a little vague in my reply but I remember receiving
 something similar when I first started using the URLFetchService and I think
 it was related to the fact that I had imported the incorrect classes for
 HTTPRequest or header or something like like. I think I just chose the first
 one offered to me by the IDE ...

 It was a while ago so I hope I'm not sending you on a wild goose chase.

 On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 



 david.jonathan.nel...@gmail.com wrote:
  Hi,

  I'm trying to implement async http in java.  Here is the important
  part of the code:

                         for (String urlString : urls)
                         {
                                 // TODO: try and get rid of these two heap
  allocations
                                 url = new URL(urlString);
                                 request = new HTTPRequest(url);
                                 request.addHeader(userAgentHeader);
                                 request.addHeader(authorizationHeader);
                                 request.addHeader(acceptEncodingHeader);
                                 request.addHeader(acceptCharsetHeader);

  responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques 
  t));
                                 apiCallsMade++;
                         }
                         for (FutureHTTPResponse futureResponse :
  responses)
                         {
                                 parseResponse(new
  String(futureResponse.get().getContent()));
                         }

  I keep getting this error:  com.google.apphosting.api.ApiProxy
  $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
  was not found..  I looked around for any jars that were missing from
  the classpath but didn't see anything missing.  Do you know which jar
  that code is in?  I googled the error and also searched through this
  group but found nothing.

  Thanks,
  David

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

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



[google-appengine] Re: implementing asynchronous http in java

2010-02-19 Thread davidnelson
weird, I get the same error even when I pin objects and call urlfetch
synchronously:

url = new URL(urlString);
request = new HTTPRequest(url);
request.addHeader(userAgentHeader);
request.addHeader(authorizationHeader);
request.addHeader(acceptEncodingHeader);
request.addHeader(acceptCharsetHeader);
// undo pinning after debug
HTTPResponse response = 
urlFetchService.fetch(request);
byte[] responseBytes = response.getContent();
String responseString = new 
String(responseBytes);
parseResponse(responseString);
apiCallsMade++;

On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote:
 apologies if I'm a little vague in my reply but I remember receiving
 something similar when I first started using the URLFetchService and I think
 it was related to the fact that I had imported the incorrect classes for
 HTTPRequest or header or something like like. I think I just chose the first
 one offered to me by the IDE ...

 It was a while ago so I hope I'm not sending you on a wild goose chase.

 On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 



 david.jonathan.nel...@gmail.com wrote:
  Hi,

  I'm trying to implement async http in java.  Here is the important
  part of the code:

                         for (String urlString : urls)
                         {
                                 // TODO: try and get rid of these two heap
  allocations
                                 url = new URL(urlString);
                                 request = new HTTPRequest(url);
                                 request.addHeader(userAgentHeader);
                                 request.addHeader(authorizationHeader);
                                 request.addHeader(acceptEncodingHeader);
                                 request.addHeader(acceptCharsetHeader);

  responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques 
  t));
                                 apiCallsMade++;
                         }
                         for (FutureHTTPResponse futureResponse :
  responses)
                         {
                                 parseResponse(new
  String(futureResponse.get().getContent()));
                         }

  I keep getting this error:  com.google.apphosting.api.ApiProxy
  $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
  was not found..  I looked around for any jars that were missing from
  the classpath but didn't see anything missing.  Do you know which jar
  that code is in?  I googled the error and also searched through this
  group but found nothing.

  Thanks,
  David

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

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



Re: [google-appengine] Re: implementing asynchronous http in java

2010-02-19 Thread Eli Jones
I don't code in Java.. but my guess is you're making a silly mistake in
there somewhere..

Copy pasting some other person's posted code from the Java AppEngine group I
see it done this way:

URL url = new URL(urlStr);
URLFetchService urlFetchService =
URLFetchServiceFactory.getURLFetchService();
HTTPRequest httpRequest = new
HTTPRequest(url, HTTPMethod.GET,followRedirects());
HTTPResponse response = urlFetchService.fetch(httpRequest);

On Fri, Feb 19, 2010 at 4:27 PM, davidnelson 
david.jonathan.nel...@gmail.com wrote:

 weird, I get the same error even when I pin objects and call urlfetch
 synchronously:

url = new URL(urlString);
request = new HTTPRequest(url);
request.addHeader(userAgentHeader);
request.addHeader(authorizationHeader);
request.addHeader(acceptEncodingHeader);
request.addHeader(acceptCharsetHeader);
 // undo pinning after debug
HTTPResponse response =
 urlFetchService.fetch(request);
byte[] responseBytes =
 response.getContent();
String responseString = new
 String(responseBytes);
parseResponse(responseString);
apiCallsMade++;

 On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote:
  apologies if I'm a little vague in my reply but I remember receiving
  something similar when I first started using the URLFetchService and I
 think
  it was related to the fact that I had imported the incorrect classes for
  HTTPRequest or header or something like like. I think I just chose the
 first
  one offered to me by the IDE ...
 
  It was a while ago so I hope I'm not sending you on a wild goose chase.
 
  On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 
 
 
 
  david.jonathan.nel...@gmail.com wrote:
   Hi,
 
   I'm trying to implement async http in java.  Here is the important
   part of the code:
 
  for (String urlString : urls)
  {
  // TODO: try and get rid of these two
 heap
   allocations
  url = new URL(urlString);
  request = new HTTPRequest(url);
  request.addHeader(userAgentHeader);
  request.addHeader(authorizationHeader);
  request.addHeader(acceptEncodingHeader);
  request.addHeader(acceptCharsetHeader);
 
  
 responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques
 t));
  apiCallsMade++;
  }
  for (FutureHTTPResponse futureResponse :
   responses)
  {
  parseResponse(new
   String(futureResponse.get().getContent()));
  }
 
   I keep getting this error:  com.google.apphosting.api.ApiProxy
   $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
   was not found..  I looked around for any jars that were missing from
   the classpath but didn't see anything missing.  Do you know which jar
   that code is in?  I googled the error and also searched through this
   group but found nothing.
 
   Thanks,
   David
 
   --
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine group.
   To post to this group, send email to google-appengine@googlegroups.com
 .
   To unsubscribe from this group, send email to
   google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.comgoogle-appengine%2Bunsubscrib
 e...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine?hl=en.

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



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



[google-appengine] Re: pygooglechart

2010-02-19 Thread nickmilon
I have taken a look in the library.

It seems it imports the following python packages

import os
import urllib
import math
import random
import re

Now I am not sure it will work on GAE since as far as I know math is a
wraper around c math and this is no no in GAE.
Hope some body else who is more familiar with the above libraries can
advice.

Happy coding ;-)


Yes in your PC - follow the instructions of the library for that so
you ca test it with the local server.
Also include the whole library on your project files so it will be
uploaded in GAE.


On Feb 19, 10:21 pm, nickmilon nickmi...@gmail.com wrote:
 Yes in your PC - follow the instructions of the library for that.
 Later on I will take a look at the library my self.

 On Feb 19, 1:09 pm, Massimiliano massimiliano.pietr...@gmail.com
 wrote:



  Sure you can after installing the library on my PC?

  2010/2/19 nickmilon nickmi...@gmail.com

   Sure you can after installing the library and including the files in
   your application provided this library does not depend on anything but
   python.
   Also since data passing mechanism for google visualization api is
   quite easy to implement in python you can avoid the burden of one more
   import and write your own interface.
   For an example of using visualization api from gae you can take a look
   at:  http://www.geognos.com/geo/en/cc/no.html#Economy
   Unfortunately i did not have the time to document the code but feel
   free to examine the page source code and the relative javascript
   files.

   Happy coding;)

   On Feb 18, 2:30 pm, Massimiliano massimiliano.pietr...@gmail.com
   wrote:
Dear All,
I'm trying to learn using python and Google App Engine. Can I use this
library on the appengine? Just importing this in the python application
(from pygooglechart import *)?

Massimiliano

--

My email: massimiliano.pietr...@gmail.com
My Google Wave: massimiliano.pietr...@googlewave.com

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

  --

  My email: massimiliano.pietr...@gmail.com
  My Google Wave: massimiliano.pietr...@googlewave.com

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



[google-appengine] Re: implementing asynchronous http in java

2010-02-19 Thread davidnelson
At this point I'm feeling not so smart :-(

I can't even get synchronous urlfetch to work via the low level api:

URL url = new URL(http://www.google.com;);
URLFetchService urlFetchService =
URLFetchServiceFactory.getURLFetchService();
FetchOptions options = 
FetchOptions.Builder.followRedirects();
HTTPRequest httpRequest = new
HTTPRequest(url, HTTPMethod.GET,options);
HTTPResponse response = 
urlFetchService.fetch(httpRequest);

it throws a nullpointerexception with no stack trace and no source
code available to debug it.

On Feb 19, 1:37 pm, Eli Jones eli.jo...@gmail.com wrote:
 I don't code in Java.. but my guess is you're making a silly mistake in
 there somewhere..

 Copy pasting some other person's posted code from the Java AppEngine group I
 see it done this way:

 URL url = new URL(urlStr);
 URLFetchService urlFetchService =
 URLFetchServiceFactory.getURLFetchService();
 HTTPRequest httpRequest = new
 HTTPRequest(url, HTTPMethod.GET,followRedirects());
 HTTPResponse response = urlFetchService.fetch(httpRequest);

 On Fri, Feb 19, 2010 at 4:27 PM, davidnelson 



 david.jonathan.nel...@gmail.com wrote:
  weird, I get the same error even when I pin objects and call urlfetch
  synchronously:

                                 url = new URL(urlString);
                                 request = new HTTPRequest(url);
                                 request.addHeader(userAgentHeader);
                                 request.addHeader(authorizationHeader);
                                 request.addHeader(acceptEncodingHeader);
                                 request.addHeader(acceptCharsetHeader);
                                  // undo pinning after debug
                                 HTTPResponse response =
  urlFetchService.fetch(request);
                                 byte[] responseBytes =
  response.getContent();
                                 String responseString = new
  String(responseBytes);
                                 parseResponse(responseString);
                                 apiCallsMade++;

  On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote:
   apologies if I'm a little vague in my reply but I remember receiving
   something similar when I first started using the URLFetchService and I
  think
   it was related to the fact that I had imported the incorrect classes for
   HTTPRequest or header or something like like. I think I just chose the
  first
   one offered to me by the IDE ...

   It was a while ago so I hope I'm not sending you on a wild goose chase.

   On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 

   david.jonathan.nel...@gmail.com wrote:
Hi,

I'm trying to implement async http in java.  Here is the important
part of the code:

                       for (String urlString : urls)
                       {
                               // TODO: try and get rid of these two
  heap
allocations
                               url = new URL(urlString);
                               request = new HTTPRequest(url);
                               request.addHeader(userAgentHeader);
                               request.addHeader(authorizationHeader);
                               request.addHeader(acceptEncodingHeader);
                               request.addHeader(acceptCharsetHeader);

  responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques
  t));
                               apiCallsMade++;
                       }
                       for (FutureHTTPResponse futureResponse :
responses)
                       {
                               parseResponse(new
String(futureResponse.get().getContent()));
                       }

I keep getting this error:  com.google.apphosting.api.ApiProxy
$CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
was not found..  I looked around for any jars that were missing from
the classpath but didn't see anything missing.  Do you know which jar
that code is in?  I googled the error and also searched through this
group but found nothing.

Thanks,
David

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

  --
  You received this message because you are subscribed to the Google Groups
  Google 

[google-appengine] Re: implementing asynchronous http in java

2010-02-19 Thread davidnelson
more info, I tried using the app engine version 1.3.0 and that's when
I get nullpointerexceptions.  switching back to 1.3.1 and I get the
first exception I initially posted, sync or async.

On Feb 19, 1:37 pm, Eli Jones eli.jo...@gmail.com wrote:
 I don't code in Java.. but my guess is you're making a silly mistake in
 there somewhere..

 Copy pasting some other person's posted code from the Java AppEngine group I
 see it done this way:

 URL url = new URL(urlStr);
 URLFetchService urlFetchService =
 URLFetchServiceFactory.getURLFetchService();
 HTTPRequest httpRequest = new
 HTTPRequest(url, HTTPMethod.GET,followRedirects());
 HTTPResponse response = urlFetchService.fetch(httpRequest);

 On Fri, Feb 19, 2010 at 4:27 PM, davidnelson 



 david.jonathan.nel...@gmail.com wrote:
  weird, I get the same error even when I pin objects and call urlfetch
  synchronously:

                                 url = new URL(urlString);
                                 request = new HTTPRequest(url);
                                 request.addHeader(userAgentHeader);
                                 request.addHeader(authorizationHeader);
                                 request.addHeader(acceptEncodingHeader);
                                 request.addHeader(acceptCharsetHeader);
                                  // undo pinning after debug
                                 HTTPResponse response =
  urlFetchService.fetch(request);
                                 byte[] responseBytes =
  response.getContent();
                                 String responseString = new
  String(responseBytes);
                                 parseResponse(responseString);
                                 apiCallsMade++;

  On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote:
   apologies if I'm a little vague in my reply but I remember receiving
   something similar when I first started using the URLFetchService and I
  think
   it was related to the fact that I had imported the incorrect classes for
   HTTPRequest or header or something like like. I think I just chose the
  first
   one offered to me by the IDE ...

   It was a while ago so I hope I'm not sending you on a wild goose chase.

   On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 

   david.jonathan.nel...@gmail.com wrote:
Hi,

I'm trying to implement async http in java.  Here is the important
part of the code:

                       for (String urlString : urls)
                       {
                               // TODO: try and get rid of these two
  heap
allocations
                               url = new URL(urlString);
                               request = new HTTPRequest(url);
                               request.addHeader(userAgentHeader);
                               request.addHeader(authorizationHeader);
                               request.addHeader(acceptEncodingHeader);
                               request.addHeader(acceptCharsetHeader);

  responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques
  t));
                               apiCallsMade++;
                       }
                       for (FutureHTTPResponse futureResponse :
responses)
                       {
                               parseResponse(new
String(futureResponse.get().getContent()));
                       }

I keep getting this error:  com.google.apphosting.api.ApiProxy
$CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
was not found..  I looked around for any jars that were missing from
the classpath but didn't see anything missing.  Do you know which jar
that code is in?  I googled the error and also searched through this
group but found nothing.

Thanks,
David

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

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

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to 

[google-appengine] Re: implementing asynchronous http in java

2010-02-19 Thread davidnelson
problem solved.  I was referencing the app engine/gwt project from a
console app.  apparently you can't do this.  when I debug it as a
google app project, it works.   hope this minor pain and lesson will
help someone else someday.  thanks, David

On Feb 19, 2:13 pm, davidnelson david.jonathan.nel...@gmail.com
wrote:
 more info, I tried using the app engine version 1.3.0 and that's when
 I get nullpointerexceptions.  switching back to 1.3.1 and I get the
 first exception I initially posted, sync or async.

 On Feb 19, 1:37 pm, Eli Jones eli.jo...@gmail.com wrote:



  I don't code in Java.. but my guess is you're making a silly mistake in
  there somewhere..

  Copy pasting some other person's posted code from the Java AppEngine group I
  see it done this way:

  URL url = new URL(urlStr);
  URLFetchService urlFetchService =
  URLFetchServiceFactory.getURLFetchService();
  HTTPRequest httpRequest = new
  HTTPRequest(url, HTTPMethod.GET,followRedirects());
  HTTPResponse response = urlFetchService.fetch(httpRequest);

  On Fri, Feb 19, 2010 at 4:27 PM, davidnelson 

  david.jonathan.nel...@gmail.com wrote:
   weird, I get the same error even when I pin objects and call urlfetch
   synchronously:

                                  url = new URL(urlString);
                                  request = new HTTPRequest(url);
                                  request.addHeader(userAgentHeader);
                                  request.addHeader(authorizationHeader);
                                  request.addHeader(acceptEncodingHeader);
                                  request.addHeader(acceptCharsetHeader);
                                   // undo pinning after debug
                                  HTTPResponse response =
   urlFetchService.fetch(request);
                                  byte[] responseBytes =
   response.getContent();
                                  String responseString = new
   String(responseBytes);
                                  parseResponse(responseString);
                                  apiCallsMade++;

   On Feb 19, 7:33 am, Conor Power iamco...@gmail.com wrote:
apologies if I'm a little vague in my reply but I remember receiving
something similar when I first started using the URLFetchService and I
   think
it was related to the fact that I had imported the incorrect classes for
HTTPRequest or header or something like like. I think I just chose the
   first
one offered to me by the IDE ...

It was a while ago so I hope I'm not sending you on a wild goose chase.

On Fri, Feb 19, 2010 at 4:52 AM, davidnelson 

david.jonathan.nel...@gmail.com wrote:
 Hi,

 I'm trying to implement async http in java.  Here is the important
 part of the code:

                        for (String urlString : urls)
                        {
                                // TODO: try and get rid of these two
   heap
 allocations
                                url = new URL(urlString);
                                request = new HTTPRequest(url);
                                request.addHeader(userAgentHeader);
                                request.addHeader(authorizationHeader);
                                
 request.addHeader(acceptEncodingHeader);
                                request.addHeader(acceptCharsetHeader);

   responses.add(URLFetchServiceFactory.getURLFetchService().fetchAsync(reques
   t));
                                apiCallsMade++;
                        }
                        for (FutureHTTPResponse futureResponse :
 responses)
                        {
                                parseResponse(new
 String(futureResponse.get().getContent()));
                        }

 I keep getting this error:  com.google.apphosting.api.ApiProxy
 $CallNotFoundException: The API package 'urlfetch' or call 'Fetch()'
 was not found..  I looked around for any jars that were missing from
 the classpath but didn't see anything missing.  Do you know which jar
 that code is in?  I googled the error and also searched through this
 group but found nothing.

 Thanks,
 David

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

   --
   You received this message because you are subscribed to the Google Groups
   Google App Engine group.
   To post to this group, send email to google-appeng...@googlegroups.com.
   To unsubscribe from this group, send email to
   

[google-appengine] HELP! Stored Data Quota Weirdness- My Site is Down!

2010-02-19 Thread jay
Yesterday after I updated our quotas though Google checkout because we
were regularly getting close to some of our limits.

About 1am last night, my site started throwing  OverQuotaError: The
API call datastore_v3.Put() required more quota than is available.

This morning I quickly jumped online and purchased more allowance,
thinking we had a spike in traffic and my new quotas have kicked in
but it seems my site is still throwing the error.

Also, It seems that i'm able to store data now, but other users
cannot. Are admins treated differently?

Also, My dashboard seem a little weird as its Free Quota Bar is
siting on 0 for stored data?
http://www.imged.org/121/capture0.png

One other question, is there a better place than this for me to
contact a Google support staff to help? Is there such a thing?

Jay.

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



[google-appengine] Re: pygooglechart

2010-02-19 Thread Sylvain
I think it's easier not to use a lib for Google Chart.
Each time I tried to use one, I spent a lot of time to understand /
debug it.

There is a good example how to use GChart from scratch here :
http://gpxplot.googlecode.com/svn/trunk/gpxplot.py

And there is a perfect func to generate extended data :

def google_ext_encode(i):
Google Charts' extended encoding,
see http://code.google.com/apis/chart/mappings.html#extended_values;
enc='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
enc=enc+enc.lower()+'0123456789-.'
i=int(i)%4096 # modulo 4096
figure=enc[int(i/len(enc))]+enc[int(i%len(enc))]
return figure

I think this is the only thing you need.


On Feb 19, 10:39 pm, nickmilon nickmi...@gmail.com wrote:
 I have taken a look in the library.

 It seems it imports the following python packages

 import os
 import urllib
 import math
 import random
 import re

 Now I am not sure it will work on GAE since as far as I know math is a
 wraper around c math and this is no no in GAE.
 Hope some body else who is more familiar with the above libraries can
 advice.

 Happy coding ;-)

 Yes in your PC - follow the instructions of the library for that so
 you ca test it with the local server.
 Also include the whole library on your project files so it will be
 uploaded in GAE.

 On Feb 19, 10:21 pm, nickmilon nickmi...@gmail.com wrote:

  Yes in your PC - follow the instructions of the library for that.
  Later on I will take a look at the library my self.

  On Feb 19, 1:09 pm, Massimiliano massimiliano.pietr...@gmail.com
  wrote:

   Sure you can after installing the library on my PC?

   2010/2/19 nickmilon nickmi...@gmail.com

Sure you can after installing the library and including the files in
your application provided this library does not depend on anything but
python.
Also since data passing mechanism for google visualization api is
quite easy to implement in python you can avoid the burden of one more
import and write your own interface.
For an example of using visualization api from gae you can take a look
at:  http://www.geognos.com/geo/en/cc/no.html#Economy
Unfortunately i did not have the time to document the code but feel
free to examine the page source code and the relative javascript
files.

Happy coding;)

On Feb 18, 2:30 pm, Massimiliano massimiliano.pietr...@gmail.com
wrote:
 Dear All,
 I'm trying to learn using python and Google App Engine. Can I use this
 library on the appengine? Just importing this in the python 
 application
 (from pygooglechart import *)?

 Massimiliano

 --

 My email: massimiliano.pietr...@gmail.com
 My Google Wave: massimiliano.pietr...@googlewave.com

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

   --

   My email: massimiliano.pietr...@gmail.com
   My Google Wave: massimiliano.pietr...@googlewave.com

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



[google-appengine] Re: HELP! Stored Data Quota Weirdness- My Site is Down!

2010-02-19 Thread jay
Also note that the dashboard reports total stored data in the database
as 1GB when there should be about 6 gig of data.

On Feb 20, 9:54 am, jay kyburz@gmail.com wrote:
 Yesterday after I updated our quotas though Google checkout because we
 were regularly getting close to some of our limits.

 About 1am last night, my site started throwing  OverQuotaError: The
 API call datastore_v3.Put() required more quota than is available.

 This morning I quickly jumped online and purchased more allowance,
 thinking we had a spike in traffic and my new quotas have kicked in
 but it seems my site is still throwing the error.

 Also, It seems that i'm able to store data now, but other users
 cannot. Are admins treated differently?

 Also, My dashboard seem a little weird as its Free Quota Bar is
 siting on 0 for stored data?http://www.imged.org/121/capture0.png

 One other question, is there a better place than this for me to
 contact a Google support staff to help? Is there such a thing?

 Jay.

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



Re: [google-appengine] Re: HELP! Stored Data Quota Weirdness- My Site is Down!

2010-02-19 Thread Eli Jones
Well, the screencapture you posted is just reflecting that.. 1 GB out of 400
GB is much less than 1%.. so.. it just shows 0% usage (or that is my guess).

Though, I have bee seeing wierd behaviour with the Total Stored Data
number.. like you, mine was showing less usage that was there.  (It showed
.03 GB when I was using .27 GB.. it eventually corrected itself).



On Fri, Feb 19, 2010 at 6:04 PM, jay kyburz@gmail.com wrote:

 Also note that the dashboard reports total stored data in the database
 as 1GB when there should be about 6 gig of data.

 On Feb 20, 9:54 am, jay kyburz@gmail.com wrote:
  Yesterday after I updated our quotas though Google checkout because we
  were regularly getting close to some of our limits.
 
  About 1am last night, my site started throwing  OverQuotaError: The
  API call datastore_v3.Put() required more quota than is available.
 
  This morning I quickly jumped online and purchased more allowance,
  thinking we had a spike in traffic and my new quotas have kicked in
  but it seems my site is still throwing the error.
 
  Also, It seems that i'm able to store data now, but other users
  cannot. Are admins treated differently?
 
  Also, My dashboard seem a little weird as its Free Quota Bar is
  siting on 0 for stored data?http://www.imged.org/121/capture0.png
 
  One other question, is there a better place than this for me to
  contact a Google support staff to help? Is there such a thing?
 
  Jay.

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



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



[google-appengine] Re: HELP! Stored Data Quota Weirdness- My Site is Down!

2010-02-19 Thread jay
is it possible that I'm experiencing the same problem as these people
here..

http://groups.google.com/group/google-appengine/browse_thread/thread/d9553ff5a42ce122/e9cc07c63aedb65c?lnk=gstq=Over+Quota+Error#e9cc07c63aedb65c

On Feb 20, 10:04 am, jay kyburz@gmail.com wrote:
 Also note that the dashboard reports total stored data in the database
 as 1GB when there should be about 6 gig of data.

 On Feb 20, 9:54 am, jay kyburz@gmail.com wrote:



  Yesterday after I updated our quotas though Google checkout because we
  were regularly getting close to some of our limits.

  About 1am last night, my site started throwing  OverQuotaError: The
  API call datastore_v3.Put() required more quota than is available.

  This morning I quickly jumped online and purchased more allowance,
  thinking we had a spike in traffic and my new quotas have kicked in
  but it seems my site is still throwing the error.

  Also, It seems that i'm able to store data now, but other users
  cannot. Are admins treated differently?

  Also, My dashboard seem a little weird as its Free Quota Bar is
  siting on 0 for stored data?http://www.imged.org/121/capture0.png

  One other question, is there a better place than this for me to
  contact a Google support staff to help? Is there such a thing?

  Jay.

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



[google-appengine] Application Logs

2010-02-19 Thread Sandeep
My output from System.out is not showing under INFO in the Admin
Console Logs. Has anyone else faced similar issue?

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



[google-appengine] Re: HELP! Stored Data Quota Weirdness- My Site is Down!

2010-02-19 Thread jay

hah, oh yeah I was confused because it wan't reporting any of my data
in the datastore.

On Feb 20, 10:12 am, Eli Jones eli.jo...@gmail.com wrote:
 Well, the screencapture you posted is just reflecting that.. 1 GB out of 400
 GB is much less than 1%.. so.. it just shows 0% usage (or that is my guess).

 Though, I have bee seeing wierd behaviour with the Total Stored Data
 number.. like you, mine was showing less usage that was there.  (It showed
 .03 GB when I was using .27 GB.. it eventually corrected itself).



 On Fri, Feb 19, 2010 at 6:04 PM, jay kyburz@gmail.com wrote:
  Also note that the dashboard reports total stored data in the database
  as 1GB when there should be about 6 gig of data.

  On Feb 20, 9:54 am, jay kyburz@gmail.com wrote:
   Yesterday after I updated our quotas though Google checkout because we
   were regularly getting close to some of our limits.

   About 1am last night, my site started throwing  OverQuotaError: The
   API call datastore_v3.Put() required more quota than is available.

   This morning I quickly jumped online and purchased more allowance,
   thinking we had a spike in traffic and my new quotas have kicked in
   but it seems my site is still throwing the error.

   Also, It seems that i'm able to store data now, but other users
   cannot. Are admins treated differently?

   Also, My dashboard seem a little weird as its Free Quota Bar is
   siting on 0 for stored data?http://www.imged.org/121/capture0.png

   One other question, is there a better place than this for me to
   contact a Google support staff to help? Is there such a thing?

   Jay.

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

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



[google-appengine] Re: Datastore Statistics page not updating (over 3 days now)

2010-02-19 Thread Eli Jones
Hmm.. I suppose I could have hit the 1MB limit for stats that is mentioned
here:

http://code.google.com/appengine/kb/adminconsole.html#datastore_stats

http://code.google.com/appengine/kb/adminconsole.html#datastore_statsIs
there a rule of thumb for estimating stats usage?  I'm at .3 GB of Datastore
usage so that would mean that somewhere around 0.3% of that went to stats..
which pushed me over the limit possibly?

I have only 5 defined Models that are in use.. and those models have a total
of 16 defined properties and 12 of those properties have indexed=False.

Anyway, this is low on the pile of important issues.. but it'll be nice when
I can keep an eye on stats for my entities since it helps me optimize any
poorly defined models.

On Fri, Feb 19, 2010 at 1:17 PM, Eli Jones eli.jo...@gmail.com wrote:

 Is there a backlog on getting Datastore Statistics calculated?

 When I go to the Datastore Statistics page for my application, it
 indicates that Last Updated = 3 days, 3:35:42 ago

 Which is accurate since there are no stats for entities or Models created
 since then.

 Is anyone else having this issue or am I the only lucky one?

 IF this is not related to the Maintenance performed earlier this week, then
 it could be related to the fact that I generated a new Model with ALOT of
 new entities (around 500,000) the night before Maintenance .. so much so
 that my Total Stored Data jumped from .03 to .27 GB (granted, all of the
 properties on the entities are Indexed=False).

 Could the addition of so much new data make Statistics take a long time to
 update?


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



[google-appengine] Re: Datastore Statistics page not updating (over 3 days now)

2010-02-19 Thread Eli Jones
Hooray, the magic appengine elves have updated my stats.

Thank you App Engine Infrastructure.

On Fri, Feb 19, 2010 at 7:16 PM, Eli Jones eli.jo...@gmail.com wrote:

 Hmm.. I suppose I could have hit the 1MB limit for stats that is mentioned
 here:

 http://code.google.com/appengine/kb/adminconsole.html#datastore_stats

 http://code.google.com/appengine/kb/adminconsole.html#datastore_statsIs
 there a rule of thumb for estimating stats usage?  I'm at .3 GB of Datastore
 usage so that would mean that somewhere around 0.3% of that went to stats..
 which pushed me over the limit possibly?

 I have only 5 defined Models that are in use.. and those models have a
 total of 16 defined properties and 12 of those properties have
 indexed=False.

 Anyway, this is low on the pile of important issues.. but it'll be nice
 when I can keep an eye on stats for my entities since it helps me optimize
 any poorly defined models.


 On Fri, Feb 19, 2010 at 1:17 PM, Eli Jones eli.jo...@gmail.com wrote:

 Is there a backlog on getting Datastore Statistics calculated?

 When I go to the Datastore Statistics page for my application, it
 indicates that Last Updated = 3 days, 3:35:42 ago

 Which is accurate since there are no stats for entities or Models created
 since then.

 Is anyone else having this issue or am I the only lucky one?

 IF this is not related to the Maintenance performed earlier this week,
 then it could be related to the fact that I generated a new Model with ALOT
 of new entities (around 500,000) the night before Maintenance .. so much so
 that my Total Stored Data jumped from .03 to .27 GB (granted, all of the
 properties on the entities are Indexed=False).

 Could the addition of so much new data make Statistics take a long time to
 update?




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



Re: [google-appengine] Local datastore is slow once loaded up, any suggestions?

2010-02-19 Thread Eli Jones
I noticed this issue as well when working from a bulkloaded backup up my
live datastore (around the same number of entities).  For me, it seems that
db.delete() takes forever.. db.puts() seem tolerable.  (I'm on Windows).

I see that Nick is indicating that this may just be the way it is.

It'd be nice to do offline processing and development working against a
snapshot of my current datastore.. but I'm not going to whine too much for
that.  I'd rather the App Engine Team keep focusing on sweetening the live
store.

One potential way around this (if you reay, really wanted to use the
development environment with a large datastore).. you could cook up a way to
have the datastore stuff loaded into a global Dictionary object.. and you
could put(), delete() stuff from it while testing.

That might work well since the development environment seems to run only one
instance or thread or whatever they call it.. so as long as you didn't fill
up the memory, it seems that maybe the global object would be there for long
enough to do several tests..

Then again, you'd probably need uncoupled Models.. where no class was
related to any other one through references or ancestors or parents or
children etc.  So, like I said, you'd have to really want to do this..

For me, this would work since I want to do lots of cycling through 10s of
thousands of entities.. updating and deleting them in memory (Model entities
are relate to others only through their key_names and not through any
defined properties)... then when I was done.. I could just have some process
sync the ram datastore with the one on disk.. and go have a beer or whatever
while it took its sweet time.

There be dragons in the details though.

On Fri, Feb 19, 2010 at 12:19 PM, obvious c...@obviousdiversion.com wrote:

 I've loaded up a local datastore with 40,000+ entries.  Unfortunately,
 recalling any data from it at all is very slow on my fairly new
 Macbook Pro.  Any suggestions on speeding things up, short of buying a
 new piece of hardware?

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



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



Re: [google-appengine] Application Logs

2010-02-19 Thread Ikai L (Google)
Is there a reason you're using this mechanism instead of using the Logger?

http://code.google.com/appengine/articles/logging.html

http://code.google.com/appengine/articles/logging.htmlIn general, you
shouldn't rely on having access to STDOUT in production.

On Fri, Feb 19, 2010 at 3:57 PM, Sandeep sandeep.sath...@gmail.com wrote:

 My output from System.out is not showing under INFO in the Admin
 Console Logs. Has anyone else faced similar issue?

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




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

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



[google-appengine] Frustrating tutorials

2010-02-19 Thread Manny
several of the tutorials leave out steps that leave the reader very
very confused as to why the heck they dont work.
Mainly this- 
http://code.google.com/appengine/docs/java/datastore/creatinggettinganddeletingdata.html
fails to adress in anyway the difficulties of using Key or KeyFactory.
The error - The import com.google.appengine cannot be resolved
should be addressed.
If anyone has this working WITHOUT ANY HACKS let me know I keys to
JUST WORK. i'm just gonna use strings. This point of Frustration
encounted MUST be indicated
before wasting other peoples time trying to make their own keys
withought the source from appengine.

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



Re: [google-appengine] Local datastore is slow once loaded up, any suggestions?

2010-02-19 Thread Eli Jones
I did some preliminary testing on this.. mainly, I used the cachepy.py from
here:

http://appengine-cookbook.appspot.com/recipe/cachepy-faster-than-memcache-and-unlimited-quota/

http://appengine-cookbook.appspot.com/recipe/cachepy-faster-than-memcache-and-unlimited-quota/I
created a test page.. that I used to load 400,000 entities from one of my
Models whenever it received a flag from me to fill up the cache (I created
the entities on the fly and gave them key_names and values and then called
cachepy.set() on each one).

Then.. i removed the cache flag.. and just used the test page to get
entities from the cachepy cache by keyname to see how long they hung around.

I then went into the Interactive Console and began grabbing entities from
the cache as well.

The entities could be got from both locations.

I then started doing this:

result = cachepy.get(keyname)
result.prop1 = newvalue

etc..

I would then use my test page to check the cache for that keyname, and I
would see the newvalue for prop1.

It looks like.. as long as you are actively using the cache from the global
dictionary object that cachpy uses.. it will stay in memory. (It has for 60
minutes so far, and I'm guessing it will persist as long as you are using it
and you don't stick too many new objects into the cache.)

Since you aren't pickling the objects before sticking them in the global
dict.. you're able to use the Model entities with all the datastore type
checking etc.. so.. you have some sanity to what can and can't be done to
the entities in memory and you get proper error reporting if you do
something un-kosher to one of your entity properties like trying to set an
IntegerProperty to a String.. etc.

So, if you have a setup where you do a lot of accessing entities by key_name
and then doin thangs to that stuff.. this could work in the development
server.  You'd just need a bootstrap process to stuff your datastore into
the cache when you were ready to get to testing.. and then.. create some
process to dump that info to the datastore once you were done mucking
around.

Loading up the 400,000 entities into the cache gobbled up an extra 270MB of
RAM in the pythonw.exe process on my machine... and I'm guessing you can
just keep adding objects to the cache until Python crashes...

I guess if you really wanted to get punk rock... you could emulate searching
by entity properties by just having a function that looped through all
entities of a given Model and had it return the ones that matched your
query.  That would be plenty fast.

On Fri, Feb 19, 2010 at 8:44 PM, Eli Jones eli.jo...@gmail.com wrote:

 I noticed this issue as well when working from a bulkloaded backup up my
 live datastore (around the same number of entities).  For me, it seems that
 db.delete() takes forever.. db.puts() seem tolerable.  (I'm on Windows).

 I see that Nick is indicating that this may just be the way it is.

 It'd be nice to do offline processing and development working against a
 snapshot of my current datastore.. but I'm not going to whine too much for
 that.  I'd rather the App Engine Team keep focusing on sweetening the live
 store.

 One potential way around this (if you reay, really wanted to use the
 development environment with a large datastore).. you could cook up a way to
 have the datastore stuff loaded into a global Dictionary object.. and you
 could put(), delete() stuff from it while testing.

 That might work well since the development environment seems to run only
 one instance or thread or whatever they call it.. so as long as you didn't
 fill up the memory, it seems that maybe the global object would be there for
 long enough to do several tests..

 Then again, you'd probably need uncoupled Models.. where no class was
 related to any other one through references or ancestors or parents or
 children etc.  So, like I said, you'd have to really want to do this..

 For me, this would work since I want to do lots of cycling through 10s of
 thousands of entities.. updating and deleting them in memory (Model entities
 are relate to others only through their key_names and not through any
 defined properties)... then when I was done.. I could just have some process
 sync the ram datastore with the one on disk.. and go have a beer or whatever
 while it took its sweet time.

 There be dragons in the details though.


 On Fri, Feb 19, 2010 at 12:19 PM, obvious c...@obviousdiversion.com wrote:

 I've loaded up a local datastore with 40,000+ entries.  Unfortunately,
 recalling any data from it at all is very slow on my fairly new
 Macbook Pro.  Any suggestions on speeding things up, short of buying a
 new piece of hardware?

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appeng...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.comgoogle-appengine%2bunsubscr...@googlegroups.com
 .
 For 

Re: [google-appengine] Model class of a Query instance?

2010-02-19 Thread Nickolas Daskalou
Thanks for your advice Nick.

My actual app is a bit more complex than the example I gave. I'll explain
more in my response to your comments below.

Will this be an all-or-nothing proposition? Eg, if the put of 'foo' changed
 the foo_name, they'll all need updating, otherwise none of them will? In
 that case, you'd be better off checking if it's changed, and updating them
 all (without the inequality filter) if it did change.


Yes, indeed it's all-or-nothing.

The above will change every single Bar and Baz entity that doesn't match
 foo's entity name, though, including those that have nothing to do with the
 foo you modified.


Yep, that's true. In my real app though, I don't want to query on foo's
name, but instead on foo's metadata signature, which is a hash of a
combination of foo's key and properties (or rather, the properties that
reverse-referenced entities duplicate, such as foo's name).

 Depending on how many Bar and Baz entities there are per Foo, you could
 just drop the inequality and filter them out once they're fetched.


I have ReferenceProperty properties all over the place in my model design,
so there are many Foo-type Models, some with up to a dozen different
reverse-referenced Bar/Baz-type Models, with each of those Foo-Bar/Baz
relations potentially having thousands of entities.

Given that you're already hard-coding in the list of collections, you could
 avoid the need for a 'get_model_class_for_collection' method by replacing
 the loop with:

 for model_class in (Bar, Baz):


In my real app I'm not hard-coding these (due to the maintenance required as
the model design evolves), I'm trying to get them dynamically, see this
other thread I created:

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

However, I may indeed need to hard-code these if I can't find any
satisfactory way of getting all the collection_names dynamically.

Now more about my real app...

I have a mixin class for Models to inherit from, which looks like this:

class ModelCommons(object):

  def get_metadata_signature(self):
return hashlib.sha1('Kind:%s|ID:%s|KeyName:%s|Prop:%s' % (
  self.kind(), self.key().id(), self.key().name(),
repr(self.get_current_metadata(.hexdigest()

  def get_current_metadata(self):
meta = []
for prop_name in self.__class__.meta_property_names:
  meta.append((prop_name, getattr(self.__class__,
prop_name).get_value_for_datastore(self)))
return meta

  def update_collections_metadata(self):
current_metadata_signature = self.get_metadata_signature()
for collection_name in self.get_collection_names() # In a perfect world
  model_class =
self.get_model_class_from_collection_name(collection_name) # The magic
method I was looking for
  reference_prop_name =
self.get_reverse_reference_property_name_from_collection_name(collection_name)
# Another magic method that I need
  metadatasig_prop_name = '%s_metadata_signature' % reference_prop_name
  while True:
# BEGIN TRANSACTION (not shown)
entity = model_class.all().filter('%s !='
% metadatasig_prop_name, current_metadata_signature).get()
if not entity:
  break
setattr(entity, reference_prop_name, self)

 entity.update_reference_property_metadata_for_property(reference_prop_name)
entity.put()
# END TRANSACTION

  def update_reference_property_metadata_for_property(self, prop_name):
# Implementation not shown, but assume this method also
# updates the {{prop_name}}_metadata_signature property.

  def post_put(self):
if self.get_metadata_signature() != self._initial_metadata_signature
  from google.appengine.ext import deferred
  deferred.defer(self.update_collections_metadata) # Haven't tried to
see if this works, but that's the idea

# For the ever-so-boring Author - Article example:

class Author(db.Model, ModelCommons):
  name = db.StringProperty()
  avatar_url = db.StringProperty()
  permissions = db.StringListProperty()

  meta_property_names = ('name', 'avatar_url')

  # Yuck way to set the initial state. Is there a better way?
  def __init__(self, *args, **kwds):
super(self.__class__, self).__init__(*args, **kwds)
self._initial_metadata_signature = self.get_metadata_signature()

class Article(db.Model, ModelCommons):
  title = db.StringProperty()
  content = db.BlobProperty()
  author = db.ReferenceProperty(Author, collection_name = 'articles')
  author_metadata_signature = db.StringProperty()
  author_name = db.StringProperty()
  author_avatar_url = db.StringProperty()
  pre_put():
self.update_reference_property_metadata_for_property('author')

I'll also have clean-up tasks just in case the deferred task in post_put()
isn't successfully added.

If you've followed all that code, when this happens:

author = Author(key_name = 'BillyJoel123', name='Billy Joel',
  avatar_url='http://whatever.com/billy.png', permissions =
['editor','admin'])
author.put()

article = 

  1   2   >