[dokuwiki] Changelog and page revisions

  • From: Ben Coburn <btcoburn@xxxxxxxxxxxxx>
  • To: DokuWiki List <dokuwiki@xxxxxxxxxxxxx>
  • Date: Thu, 25 May 2006 03:29:01 -0700

I just sent a patch that makes viewing the revisions list for a DokuWiki page much faster. The changelog system still needs to be rewritten, but this should make it better in the meantime.

The main problem is that all the changelog items are stored in one monolithic file. This file gets loaded into memory (and split into lines) by PHP, at least once every page access. As 'changes.log' grows without bound I suspect it will eventually clobber PHP.

The approach I would suggest is to keep one changelog file for each wiki page. These files could be kept under the 'data/meta/' directory as '<id>.changes'. There also needs to be a function for quickly loading the last line without reading the whole file into memory. The global changes file could be kept as 'data/meta/_dokuwiki.changes', however it should only store enough changes to quickly render the RSS feed and 'Recent Changes' page.

Regards, Ben Coburn


------------------- silicodon.net -------------------

--
DokuWiki mailing list - more info at
http://wiki.splitbrain.org/wiki:mailinglist

Other related posts:

  • » [dokuwiki] Changelog and page revisions