TitleImplement Diff Storage for Versioning File provider
Date29-Jun-2006 19:00:23 EEST
JSPWiki version2.4.x and beyond
SubmitterJerome Duprez
Idea CategoryProviderIdea
_cmdlineform='ideaform' category='GenericIdea' status='NewIdea' title= page='Idea' map='title=Title;version=JSPWiki version;url=Reference;category=Idea Category;x;status=Idea Status'
Idea StatusNewIdea

VersioningFileProvider is the preferred provider for MereMortals and for quickest install in general, as it enables page history without requiring any external component (DB, CVS, whatever).

Plus it has additional advantage, such as easy manual edition of pages on disk, for emergency (read coping for ACL mistakes :o)

However, one drawback is that it stores all version of a page in full raw text. So if a 1000 page has two version which differ by one line, all 2000 lines are stored on the disk. This eats up a lot of disk space, especially if the disk cluster size is bigger than the average page size. This surfaces all the more with inexperienced users who edit and save often instead of using preview. Even experienced editors happen to forget a comma or make a typo, and what should be a cheap correction consumes the whole page size.

The ideal storage format would be "reverse-delta" (I don't know if it's the correct term: I mean, the last version is stored in full text, and previous versions are stored as succesive diffs versus their respective successor.

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-1) was last changed on 29-Jun-2006 19:00 by Jerome Duprez