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 >