[Xapian-devel] Full MVCC in Brass

Austin Clements aclements at csail.mit.edu
Thu Aug 21 03:46:24 BST 2014


On Wed, 20 Aug 2014, Adam Sjøgren <asjo at koldfront.dk> wrote:
> Austin Clements <aclements at csail.mit.edu> writes:
>
>> Full MVCC would enable Xapian to keep any database revision valid as
>> long as any reader is using it, thus eliminating the dreaded
>> DatabaseModifiedError and simplifying application logic.
>
> This would also make it easier to spool a consistent backup to tape of
> an index that is being used (updated), right?

As Olly mentioned, this wouldn't ensure that a copy straight from the
filesystem would be a valid database.  However, it would be pretty
close.  The problem is that, even if you're holding a read lock on a
given revision, the database metadata in "iambrass" may no longer be
consistent with that revision.  However, I think if you were to save the
iambrass file as it was when the reader opened and locked its revision,
you could then safely copy the remaining files directly from the file
system.



More information about the Xapian-devel mailing list