monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] [RFC] Monotone NETSYNC Hook Extension & Abstraction


From: Markus Schiltknecht
Subject: Re: [Monotone-devel] [RFC] Monotone NETSYNC Hook Extension & Abstraction Layer
Date: Mon, 24 Sep 2007 10:40:55 +0200
User-agent: Icedove 1.5.0.12 (X11/20070730)

Hi,

Thomas Keller wrote:
http://www.sqlite.org/cvstrac/wiki?p=UndoRedo might be a good starting point.

Doesn't this violate the ACID properties of a normal transaction

Uh huh? The above link describes a temporary table "holding the information needed to undo/redo changes to the database". That certainly does not pose any problems regarding ACID properties.

I'm somewhat concerned about the doubled throughput to disk. As with a growing amount of revisions in the database, the disk quickly becomes the bottleneck during netsync. (Not quite sure, subjective impression, not hard measure).

I'm thinking of the transaction multiplexing as a kind of a hack around sqlite's lack of fine grained locking (which would allow multiple concurrent transactions). Instead of adding yet another hack (manual redo log, sort of) I'd rather add support for a real RDBMS [1]. For the server side part of the netsync story, that would make things simpler and faster.

BTW: is netsync protocol documented somewhere? If not, I'm happy to create such a document, as I'm trying to figure out the details anyway.

Regards

Markus

[1]: Whenever I'm saying this I'm clearly referring to Postgres :-)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]