Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 May 2008 17:02:41 -0400
From:      "Kurt J. Lidl" <lidl@pix.net>
To:        Peter Jeremy <peterjeremy@optushome.com.au>
Cc:        Garrett Cooper <yanefbsd@gmail.com>, freebsd-hackers@freebsd.org
Subject:   Re: BDB corrupt
Message-ID:  <20080514210240.GB28827@pix.net>
In-Reply-To: <20080514192026.GY64804@server.vk2pj.dyndns.org>
References:  <200805121153.00809.jonathan%2Bfreebsd-hackers@hst.org.za> <1663320218.20080512223531@mail.ru> <20080512152430.3720683e@mbook.local> <2117635718.20080513154406@mail.ru> <20080513121452.GA70860@eos.sc1.parodius.com> <20080513154137.GA28842@pix.net> <482A02CD.7040308@mansionfamily.plus.com> <D10ACB9D-8D1D-4696-BF7E-DBB0E9D74262@gmail.com> <20080514135051.GA21370@pix.net> <20080514192026.GY64804@server.vk2pj.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, May 15, 2008 at 05:20:26AM +1000, Peter Jeremy wrote:
> On 2008-May-14 09:50:52 -0400, "Kurt J. Lidl" <lidl@pix.net> wrote:
> >One other thing to watch for in SQLite is the lack of atomicity
> >in updates.  It's not ACID, just like BDB 1.8x isn't ACID.
> 
> This isn't true.  SQLite does provide full ACID.  One difference from
> (eg) Oracle is that you need to explicitly begin a transaction, rather
> than a transaction implicitly commencing with the first DML statement.
> (I don't know what the SQL standard requires).

Generally, you get either implicit transactions, or you need
to put your database handle into explicit transaction mode,
typically by bracketing your sql with:

	begin transaction;
	stuff;
	stuff;
	commit;
	if (error) { rollback; whine() }

> >Without a write-ahead log,
> 
> It does have a log to record incomplete transactions.

Well, thanks for the various pointers.  I see that it grew a
transaction log since the last time I bothered to look at it
in depth.  That's a very good thing.

I'll retract my assertion that it doesn't have a commit log.

-Kurt



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080514210240.GB28827>