Doubts on versioning


Hi ,

I have created different version on a portfolio.
I have the following doubts


  1. Here when i used update , though the portfolio was shown , it is telling me that the portfolio is deleted. This problem is not shown when i use correct. But then am not able to change the timestamp using setTimeSource in case of using correction.
  2. Whatz the deal with numbering versions. First its 0 , then 10 , then 12 and so on. Its not just that the numbers are sequential , am not getting the pattern of numbering too.


  1. I’m not sure what you’re trying to do, but as I’ve said before, you can’t insert a new entry in the past. You must add the versions you want in time order (using setTimeSource) and you can’t add a new version in the middle of the sequence.

However, as I’ve discussed here before, we do accept this is a shortcoming, so we’re working on a set of implementation and API changes. If you look at the code on the topic/masters branch, you can get an idea of the new API calls available. However this branch is not quite complete so don’t expect it to work fully yet. It should be done this week.

  1. Version numbers are not necessarily sequential, but are ascending (technically they are ‘monotonically increasing’). They are not meant to be ‘human readable’.


Hello @jim ,

Regarding question 1. Eventhough the (non latest versions ) portfolio is told to be deleted , its displaying the past version of portfolio. This was my source of doubt.

If its deleted as it tells us , the old version of portfolio need not be shown or stored.



We never actually delete anything from the database. Deletion is just another stage in the lifecycle of an object. Otherwise, if we needed to refer to the state of a portfolio in the past, we’d find that the older versions had gone, rendering the whole versioning system pointless.


To clarify on the version numbers, the number should be treated as meaningless. It is not guaranteed to increase over time, although our current implementation does. It is even possible in the spec for the version to be a string (letters) rather than a number. This is documented here -