On 8 Dec 2010, at 16:10, Felix Meschberger wrote:

> Hi,
> 
> Am Mittwoch, den 08.12.2010, 16:19 +0100 schrieb Clemens Wyss: 
>> "Auto Checkin Nodes"  is activated (i.e. true). Hence I would expect that 
>> when I modify (a property) of my mixin:versionable node, a new version is 
>> created. Unfortunately this is not the case.
>> 
>> Looking at AbstractSlingPostOperation#run only CREATE, CHECKOUT or CHECKIN 
>> "trigger" a potential checkin, but not MODIFY. 
>> Shouldn't we?:
>> ...
>> case MODIFY : 
>>    response.onModified(change.getSource());
>>    if ( versionableConfiguration.isAutoCheckin() ) {
>>        nodesToCheckin.add(change.getSource());
>>    }
>>    break;  
>> ...
>> maybe additionally check whether the node is really checked out?
>> 
>> WDYT?
> 
> I think auto-checkin should only be done if the node has been checked
> out as part of the modification operation. Thus:
> 
> -- if the node was checked-out before the op, then it must be
>         checked-out after and no version must be created
> -- if the node was checked-in before the op, and the node was
>         checked out, then it should probably be checked in
> 
> And: we must be very carefull to not create backwards compatibility
> issues around this automatic checkin/checkout.

BTW, under load we have found adding mix:versionable to a node on creation 
creates significant locking problems as the creation of version history items 
tree takes quite a bit of JR resource. We have had to add mix:versionable only 
when absolutely needed.
Ian


> 
> Regards
> Felix
> 

Reply via email to