jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting" <jukka.zitt...@gmail.com>
Subject Re: Jackrabbit version numbers/names
Date Thu, 19 Jun 2008 11:35:20 GMT
Hi,

On Thu, Jun 19, 2008 at 12:55 PM, Alexander Klimetschek
<aklimets@day.com> wrote:
> I think Pulla refers to the version numbering in the JCR API, not the
> Jackrabbit release versioning scheme.

Ah, you're right! I've been thinking about release versioning too much lately...

> Which I find to be weird, too, since the leading "1." never changes
> and is redundant information. It's not a difficult thing for an application
> to remove that prefix for displaying simpler version numbers or to
> simply count the versions themselves, but I wonder if there was
> any reason for this decision. A  future feature maybe? Something
> like branching?

Here's the relevant documentation from
AbstractVersionManager.calculateCheckinVersionName:

The name is determined as follows:

* first the predecessor version with the shortes name is searched.
* if that predecessor version is the root version, the new version
gets the name "{number of successors}+1" + ".0"
* if that predecessor version has no successor, the last digit of it's
version number is incremented.
* if that predecessor version has successors but the incremented name
does not exist, that name is used.
* otherwise a ".0" is added to the name until a non conflicting name is found.

Example Graph:

     jcr:rootVersion
      |     |
     1.0   2.0
      |
     1.1
      |
     1.2 ---\  ------\
      |      \        \
     1.3   1.2.0   1.2.0.0
      |      |
     1.4   1.2.1 ----\
      |      |        \
     1.5   1.2.2   1.2.1.0
      |      |        |
     1.6     |     1.2.1.1
      |-----/
     1.7

BR,

Jukka Zitting

Mime
View raw message