On Wed, Feb 8, 2017 at 3:18 PM, Vincent Massol <[email protected]> wrote:
Hi Thomas,
On 8 Feb 2017, at 14:33, Thomas Mortagne <[email protected]> wrote:
Hi devs,
We have a unintended regression in the standard import: if what you import is identical to what is already in the database (including the author) it won't add a new version (if you use the default option "Add a new version to the existing page").
What happen in practice is that if you keep calling XWikiDocument#set* methods with the same data it won't update the metadata or content dirty flags. This flags are what hibernate store look at to know if it should add a new version or not.
You can reproduce the same behavior with a simple script which load a document, always set the same content and save. You will notice that the history of that document does not change.
So the question is do we force metadata dirty to true all the time in the instance output filter or do we keep this feature (in which case we should optimize it a bit to not do the useless XWiki#saveDocument but that's another subject).
WDYT ?
It could be seen as a nice feature but in practice my first reaction was WTF and you often want to be sure the import actually did something so I'm +1 to force metadata dirty. But I'm +0 to keep the current behavior if there is a majority for it.
It’s hard to decide...
Same as you, I also thought it was a nice feature when I learnt that this was what was happening :)
Actually something I’ve always wanted was to avoid generating new revisions when users edit a page and click save without changing any content instead of clicking cancel (a lot of users do this, generating unnecessary revisions and when you’re the owner of a wiki, it’s a pain to check the diffs to find out that there was no changes). But this could be a feature implemented at the level of the editor save button I guess. It’s a bit different since the author would be different but we wouldn’t want a save in this case.
The reason it does that is because we force it. See https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwik....
So I’m +0 for both behaviours with a slight preference toward forcing a rev to be created.
Thanks -Vincent
-- Thomas Mortagne
-- Thomas Mortagne