JDO schema change nightmare, app going live

59 views
Skip to first unread message

miwcoder

unread,
Jul 31, 2011, 12:47:52 AM7/31/11
to Google App Engine
Hi,
We are in the process of going live with our app but struggling
with schema changes. We intentionally adopted JDO as we wanted to keep
changes minimum in case we need to port. But it is biting us now as it
is a nightmare to change the schema. We are trying to add only Object
types as suggested in one stackoverflow post but the changes still
throws tons of exceptions.

How do we handle it? Also is Objectify the only way out? If so how
much work it is to port objectify code?

any help is appreciated.

Johan Euphrosine

unread,
Aug 2, 2011, 11:01:59 AM8/2/11
to google-a...@googlegroups.com
Hi Manish,

Can you link the corresponding Stack Overflow question so we can get a
bit more context.

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

--
Johan Euphrosine (proppy)
Developer Programs Engineer
Google Developer Relations

Jeff Schnitzer

unread,
Aug 2, 2011, 12:10:50 PM8/2/11
to google-a...@googlegroups.com
Sorry, just noticed this.  Yeah, schema changes really don't seem to have been a design consideration for the JDO/datanucleus integration.  If you want help with JDO, best to describe the exact changes you are making.

If you want to port to Objectify, it shouldn't be too hard since Objectify directly models the low-level data.  It will probably be just rote replacement of your JDO calls.  How much work this is just depends on how much code you have.

Jeff

nischalshetty

unread,
Aug 2, 2011, 6:04:33 PM8/2/11
to google-a...@googlegroups.com
I would recommend you to scrap JDO completely and use objectify. We were in a similar situation as you, changing over to objectify was the best thing ever! And it's easier than you could ever imagine.

Pascal Voitot Dev

unread,
Aug 2, 2011, 6:18:22 PM8/2/11
to google-a...@googlegroups.com
You can also give a try to Siena http://www.sienaproject.com
It provides the same level of features as Objectify just above Datastore.
But it's not specialized to GAE and aims at providing a bridge between NoSQL DB (and also SQL DB when it's possible).
Currently we support GAE (sync/async) + MySQL/Postgres/H2.
We also provide high-level features around iteration, pagination (based on cursors, forward & backward)...
We also recently added GAE entity groups and entity direct embedding support.

SimpleDB is being coded right now and is already quite advanced!
Redis is under preparation.

regards
Pascal

PS: i'm lead dev of Siena, don't hesitate to contact me if you have questions!

On Wed, Aug 3, 2011 at 12:04 AM, nischalshetty <nischal...@gmail.com> wrote:
I would recommend you to scrap JDO completely and use objectify. We were in a similar situation as you, changing over to objectify was the best thing ever! And it's easier than you could ever imagine.

--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/8DgsKuEO1jwJ.

tempy

unread,
Aug 3, 2011, 9:56:56 AM8/3/11
to Google App Engine
+1 to getting away from JDO. I know I'm not helping you specifically
so sorry about that, but GAE development for me was one struggle after
another until I tossed JDO. GAE and JDO are NOT a good fit.

On Aug 3, 12:18 am, Pascal Voitot Dev <pascal.voitot....@gmail.com>
wrote:
> You can also give a try to Sienahttp://www.sienaproject.com
> It provides the same level of features as Objectify just above Datastore.
> But it's not specialized to GAE and aims at providing a bridge between NoSQL
> DB (and also SQL DB when it's possible).
> Currently we support GAE (sync/async) + MySQL/Postgres/H2.
> We also provide high-level features around iteration, pagination (based on
> cursors, forward & backward)...
> We also recently added GAE entity groups and entity direct embedding
> support.
>
> SimpleDB is being coded right now and is already quite advanced!
> Redis is under preparation.
>
> regards
> Pascal
>
> PS: i'm lead dev of Siena, don't hesitate to contact me if you have
> questions!
>

miwcoder

unread,
Aug 4, 2011, 6:17:32 PM8/4/11
to Google App Engine
http://stackoverflow.com/questions/2196465/app-engine-jdo-schema-change-updating-new-non-nullable-value

The above was the post i was referring too.

we wanted to keep our options open and hence didn't get married to
objectify. Now its a pain. Siena looks pretty good, but third party
tools would be painful. Any news if GAE will listen to the please by
DataNucleus folks and allow support for defaults as it looks they
already support it.

On Aug 2, 11:01 am, Johan Euphrosine <pro...@google.com> wrote:
> Hi Manish,
>
> Can you link the corresponding Stack Overflow question so we can get a
> bit more context.
>
> Thanks in advance.
>
>
>
>
>
>
>
>
>
> On Sun, Jul 31, 2011 at 6:47 AM, miwcoder <man...@myindianway.com> wrote:
> > Hi,
> >   We are in the process of going live with our app but struggling
> > with schema changes. We intentionally adopted JDO as we wanted to keep
> > changes minimum in case we need to port. But it is biting us now as it
> > is a nightmare to change the schema. We are trying to add only Object
> > types as suggested in one stackoverflow post but the changes still
> > throws tons of exceptions.
>
> > How do we handle it? Also is Objectify the only way out? If so how
> > much work it is to port objectify code?
>
> > 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-a...@googlegroups.com.
> > To unsubscribe from this group, send email to google-appengi...@googlegroups.com.
> > For more options, visit this group athttp://groups.google.com/group/google-appengine?hl=en.
Reply all
Reply to author
Forward
0 new messages