aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@gnu.kitenet.net>2009-10-05 22:59:33 -0400
committerJoey Hess <joey@gnu.kitenet.net>2009-10-05 22:59:33 -0400
commit9f4c5d2466b71d6a80fc1af3c1d0367aafde3112 (patch)
treed921c57d7840a3eb12d3024585f285ef8b842912
parentcdd7334c3185eb7c35237e1ea1c11ed0da494029 (diff)
downloadikiwiki-9f4c5d2466b71d6a80fc1af3c1d0367aafde3112.tar
ikiwiki-9f4c5d2466b71d6a80fc1af3c1d0367aafde3112.tar.gz
new todo
-rw-r--r--doc/todo/cache_backlinks.mdwn25
1 files changed, 25 insertions, 0 deletions
diff --git a/doc/todo/cache_backlinks.mdwn b/doc/todo/cache_backlinks.mdwn
new file mode 100644
index 000000000..dc13d464e
--- /dev/null
+++ b/doc/todo/cache_backlinks.mdwn
@@ -0,0 +1,25 @@
+I'm thinking about caching the backlinks between runs. --[[Joey]]
+
+* It would save some time (spent resolving every single link
+ on every page, every run). The cached backlinks could be
+ updated by only updating backlinks from changed pages.
+ (Saved time is less than 1/10th of a second for docwiki.)
+
+* It may allow attacking [[bugs/bestlink_change_update_issue]],
+ since that seems to need a copy of the old backlinks.
+ Actually, just the next change will probably solve that:
+
+* It should allow removing the `%oldlink_targets`, `%backlinkchanged`,
+ and `%linkchangers` calculation code. Instead, just generate
+ a record of which pages' backlinks have changed when updating
+ the backlinks, and then rebuild those pages.
+
+Proposal:
+
+* Store a page's backlinks in the index, same as everything else.
+
+* Do *something* to generate or store the `%brokenlinks` data.
+ This is currently generated when calculating backlinks, and
+ is only used by the brokenlinks plugin. It's not the right
+ "shape" to be stored in the index, but could be changed around
+ to fit.