X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=Documentation%2Flei_design_notes.txt;h=b5180374ad0599f76f47b60890e43c00f34a6247;hb=ba1a1efbcd23ab472b3c5c030082a9064462680b;hp=a5606c05f1dc7cac76695f57d9adce591ee166c3;hpb=ba0c73ae03214e57004af4192b57141c1a0fff9f;p=public-inbox.git diff --git a/Documentation/lei_design_notes.txt b/Documentation/lei_design_notes.txt index a5606c05..b5180374 100644 --- a/Documentation/lei_design_notes.txt +++ b/Documentation/lei_design_notes.txt @@ -6,7 +6,7 @@ Daemon architecture The use of a persistent daemon works around slow startup time of Perl. This is especially important for built-in support for -shell completion. It will eventually support inotify and EVFILT_VNODE +shell completion. It attempts to support inotify and EVFILT_VNODE background monitoring of Maildir keyword changes. If lei were reimplemented in a language with faster startup @@ -18,3 +18,15 @@ SQLite, and Xapian across multiple processes. The coupling of IMAP and NNTP network latency to local storage is a current weakness of public-inbox-watch. Therefore, -watch will likely adopt the daemon architecture of lei in the future. + +Read/write vs read-only storage +------------------------------- + +public-inboxes are intended to be written and read by different +Unix users. Commonly, a single Unix user or group will write to +a public-inbox, but the inbox will be served by a user with +read-only permissions (e.g. "www-data" or "nobody"). + +lei/store is intended to be read and written by a single user, +thus we can rely on the Write-Ahead-Log journal of SQLite to +improve performance: