ページを保存する時に、不要なデータを抱え込んだままになっていると思うので提案します。
cvs:lib/file.php (1.88)
function page_write($page, $postdata, $notimestamp = FALSE) { global $autoalias, $aliaspage; if (PKWK_READONLY) return; // Do nothing $postdata = make_str_rules($postdata); // Create and write diff $oldpostdata = is_page($page) ? get_source($page, TRUE, TRUE) : ''; $diffdata = do_diff($oldpostdata, $postdata); file_write(DIFF_DIR, $page, $diffdata); + unset($oldpostdata, $diffdata);
雑談のようにサイズの大きなページだと、変更前のデータ($oldpostdata) と差分データ($diffdata) を、
差分を書き込んだ後にも保持し続けるのは負担になる(特にAutoLink を使っている時)と思うので、unset() を追加しただけです。
サイズが10k のページにコメントを追加する場合を例にしても、
変更前(10k) + 差分データ(10k + コメント) + 変更後のデータ(10k + コメント) の合計約30k が、
変更後のデータ約10k ですむようになるだけなので、
BugTrack2/159 ほどは大きな効果が無いかもしれません。