From 2518a7231a72c8d778cd1f85fea976429a761a98 Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Wed, 4 Jun 2014 22:20:34 +0200 Subject: [PATCH] Add rationale --- docs/vdir.rst | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/docs/vdir.rst b/docs/vdir.rst index c552d50..0d510c8 100644 --- a/docs/vdir.rst +++ b/docs/vdir.rst @@ -61,3 +61,23 @@ Reading from vdirs - The ``ident`` part of the filename *should not* be parsed to improve the speed of item lookup. + +Rationale +========= + +Performance +----------- + +Currently, vdirs suffer from a rather major performance problem, one which +current implementations try to mitigate by building up indices of the +collections for faster search and lookup. + +The reason items' filenames don't contain any extra information is simple: The +solutions presented induced duplication of data, where one duplicate might +become out of date because of bad implementations. As it stands right now, a +index format could be formalized separately though. + +vdirsyncer doesn't really have to bother about efficient item lookup, because +its synchronization algorithm needs to fetch the whole list of items anyway. +Detecting changes is easily implemented by checking the files' modification +time.