monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] mtn: error: sqlite error: database is locked


From: Markus Schiltknecht
Subject: Re: [Monotone-devel] mtn: error: sqlite error: database is locked
Date: Wed, 02 Jan 2008 14:52:54 +0100
User-agent: Mozilla-Thunderbird 2.0.0.6 (X11/20071008)

Hi Chad,

Chad Walstrom wrote:
How deep does the rabbit hole go?  Now we're getting into questions
about whether or not the database should do work other than storing and
retrieving data.  Personally, I'm not a fan of programming in-database,
but there are times when it makes sense to do so.

Well, SQLite doesn't offer you much there. But for most other databases, I'd certainly recommend implementing as much of the logic as possible in a way the database understands. It saves you a lot of duplicate work and allows you to make full use of the very good optimizers of todays database systems. The more the database knows about your data, the better it can optimize queries.

Obviously, the
database cannot understand those higher-order objects, it's up to
Monotone to draw meaning from them.  Likewise, it's up to Monotone to
decide what is a safe transaction and an unsafe transaction relative to
those objects.

That's certainly bogus. Source code can be equally clever, no matter if it's running within the database or not. I'd rather argue that lots of the logic would profit from a tight integration into the database.

It's up to the database to make sure that the decisions
Monotone makes become permanent, safely.

You are ignoring most of what todays databases offer. Take another look at the acronym ACID, only the last 'd' stands for durability.

As it was stated earlier in
this thread, making montone friendly to different types of transactions
is going to take some API changes.

Sure. The question is, how to change it...

Regards

Markus




reply via email to

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