]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/tips/inside_dot_ikiwiki.mdwn
Merge commit 'upstream/master' into pub/master
[git.ikiwiki.info.git] / doc / tips / inside_dot_ikiwiki.mdwn
index 268910ebcdc75883ecf1aaac0732c39b358ef322..1f76ce4bdd517ffc749ae45b9d0a079284177ef6 100644 (file)
@@ -1,4 +1,4 @@
-[[meta title="inside .ikiwiki"]]
+[[!meta title="inside .ikiwiki"]]
 
 The `.ikiwiki` directory contains ikiwiki's internal state. Normally,
 you don't need to look in it, but here's some tips for how to do so if
 
 The `.ikiwiki` directory contains ikiwiki's internal state. Normally,
 you don't need to look in it, but here's some tips for how to do so if
@@ -63,3 +63,28 @@ To remove that user:
 I've not written actual utilities to do this yet because I've only needed
 to do it rarely, and the data I've wanted has been different each time.
 --[[Joey]]
 I've not written actual utilities to do this yet because I've only needed
 to do it rarely, and the data I've wanted has been different each time.
 --[[Joey]]
+
+## the session database
+
+`.ikiwiki/sessions.db` is the session database. See the [[cpan CGI::Session]]
+documentation for more details.
+
+## lockfiles
+
+In case you're curious, here's what the various lock files do.
+
+* `.ikiwiki/lockfile` is the master ikiwiki lock file. Ikiwiki takes this 
+  lock before reading/writing state.
+* `.ikiwiki/commitlock` is locked as a semophore, to disable the commit hook
+  from doing anything.
+* `.ikiwiki/cgilock` is locked by the cgi wrapper, to ensure that only 
+  one ikiwiki process is run at a time to handle cgi requests.
+
+## plugin state files
+
+Some plugins create other files to store their state. 
+
+* `.ikiwiki/aggregate` is a plain text database used by the aggregate plugin
+  to record feeds and known posts.
+* `.ikiwiki/xapian/` is created by the search plugin, and contains xapian-omega
+  configuration and the xapian database.