Use of database for SCM

John A Meinel john at
Fri Jun 24 15:54:48 BST 2005

tnorth at wrote:

>>>I was just wondering why nobody (as far as I know) uses a database like
>>>SQLite to stock patches and/or patches informations.
>>Subversion uses an in-process database as its backend. Although recently
>>file-based backend has been developed and seems to be quite popular.
>>The DB backend is known to cause some problems, with databases sometimes
>>getting corrupted and otherwise in a funny state.
>>Good discussion here:
>Ok thanks.
>>>I know the use of a DB would certainly bring more complications, but what
>>>about speed ? (is maybe the only profit we could have)
>>>SQLite seems to be very very quick...
>>Where are your benchmarks? :D The only example I'm aware of is Subversion
>>bdb and that is *not* very fast.
>I mentionned SQLite alone ... i never had a look at subversion, which dies
>with a segfault at home, so I cannot compare it with bzr :)
>I don`t mean bzr is slow :D and if I use it know it is because darcs was
>too slow for me (well... if it is politically correct here, else just read
>"unappropriated for my use")
Actually, monotone uses an SQLite backend. But most people do not call
it "fast". In fact I think Linus called it "glacially slow"...
 From my experience with monotone it is more the certificate mechanism.
Where *everything* has a signature attached. Each individual item of
information. So the 'date' of a commit has a separate signature from the
'committer' field.

Bzr is very hackable, and to prove a point, it would probably be pretty
easy to co-opt the "ImmutableStore" class, such that it stored the
values in a database.

As has been said, though, a db tends hide the information, versus a
filesystem. Also, one very nice property of having plain files, is that
they can be downloaded over http with no external help.
Right now you can already 'bzr pull' a bzr repository over http. You
can't push to http (since plain http doesn't support that), and the
backend is getting revised to be faster over a network connection.

But it is a feature that is cheap to develop, simply because we use just
a filesystem.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 253 bytes
Desc: OpenPGP digital signature
Url : 

More information about the bazaar mailing list