BDB corrupt
Kurt J. Lidl
lidl at pix.net
Wed May 14 21:02:45 UTC 2008
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 at 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
More information about the freebsd-hackers
mailing list