jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sridhar Raman" <sridhar.ra...@gmail.com>
Subject Re: Doubt in Versioning
Date Tue, 11 Dec 2007 06:57:10 GMT
This means that in case, I do a save() operation, and the system crashes
before the checkin() happens, the next time I bring up the server, I would
get the non checked-in version (unless of course I do a restore())?

Also, if on bringing up the server, without doing a server, and then making
changes, I save and checkin successfully, the version that I wanted to
checkin (but couldn't because of the crash) will be lost right?

I am just curious.  Would this mean that in my CMS, every time I bring up
the server, do I see to it that all the versionable nodes are restored to
their base versions, if the versioned data is very important to me?  I want
to make sure this is recommended, so that I can proceed with this
implementation.  Or is there any other solution?

Also, just a small thought.  Wouldn't it be more convenient if, for
versionable nodes, a save() operation ALSO did the checkin as well?  Or are
there some issues with this?

Thanks,
Sridhar

On Dec 8, 2007 9:25 PM, Tobias Bocanegra <tobias.bocanegra@day.com> wrote:

> hi,
> what you want is 'Node.restore()'.  checkout just makes as checked-in
> node modifiable.
> in your example the 2nd checkout has no effect since the node is
> already checked out.
>
> regards, toby
>
> On 12/8/07, Sridhar Raman <sridhar.raman@gmail.com> wrote:
> > This is what I have figured out from reading the documentation, and
> testing:
> > The following code,
> > Node A = root.addNode("NODEA", "ATYPE");
> >
> > A.checkout();
> > A.setProperty("PROP1", "some value");
> >
> > A.save();
> > A.checkin();
> >
> > creates a version for the node A, and currently the node is in a
> read-only
> > status.
> >
> > Now if I were to execute the following code,
> > Node A = root.getNode("NODEA");
> >
> > A.checkout();
> > A.setProperty("PROP1", "some other different value");
> >
> > A.save();
> > // NOT DOING ANY CHECK-IN
> >
> > I expected no new version to be created for node A.  And yes, this
> happens
> > as expected.
> > But say, I execute this code now,
> > Node A = root.getNode("NODEA");
> >
> > A.checkout();
> > System.out.println(A.getProperty("PROP1").getString());
> >
> > I expected the value "some value" to be printed.  This was because, I
> > thought the checkout that I do would mean that I get node A's latest
> > version.  But what is printed is "some other different value".
> >
> > I somehow found this a bit counter-intuitive.  Can someone please
> clarify my
> > doubt?
> >
> > Thanks,
> > Sridhar
> >
>
>
> --
> -----------------------------------------< tobias.bocanegra@day.com >---
> Tobias Bocanegra, Day Management AG, Barfuesserplatz 6, CH - 4001 Basel
> T +41 61 226 98 98, F +41 61 226 98 97
> -----------------------------------------------< http://www.day.com >---
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message