Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 May 2008 15:44:06 +0400
From:      Anthony Pankov <ap00@mail.ru>
To:        freebsd-hackers@freebsd.org
Subject:   Re[2]: BDB corrupt
Message-ID:  <2117635718.20080513154406@mail.ru>
In-Reply-To: <20080512152430.3720683e@mbook.local>
References:  <op.uavxx8ip2n4ijf@duckjen.nextgentel.no> <9FC19AC2-DAD8-418C-8B9C-F129DEC58CEF@gmail.com> <15336578.20080512123806@mail.ru> <200805121153.00809.jonathan%2Bfreebsd-hackers@hst.org.za> <1663320218.20080512223531@mail.ru> <20080512152430.3720683e@mbook.local>

next in thread | previous in thread | raw e-mail | index | archive | help

Monday, Mike Meyer May 12, 2008, 11:24:30 PM, you wrote:

MM> On Mon, 12 May 2008 22:35:31 +0400 Anthony Pankov <ap00@mail.ru> wrote:
>> Because BDB:
>> 1. do not need additional installation
>> 2. is part of base system which mean it is mature, reliable and stable

MM> BDB in the base system is mature, reliable and stable *for what it's
MM> used for in the base system.* So long as your requirements are covered
MM> by that usage, you'll be ok.

MM> The uses I know of for BDB in the base system all consist of databases
MM> of relatively small items that are changed infrequently, and usually
MM> with a locking mechanism. From what you've said, this doesn't describe
MM> your requirements.

MM> More importantly, from what other people are saying, your requirements
MM> are ones for which it's known that BDB is *not* reliable, or otherwise
MM> unsuitable. In particular, an effort is underway to allow parallel
MM> ports builds, which implies concurrent access to the database, which
MM> is a known source of problems for BDB.

MM>           <mike

My requirements is
1. there is no need for SQL
2. processes are sharing db file in concurrent mode
3. reading/writing = 60%/40%

With BDB
clause 1 - satisfied
clause 3 - satisfied (databases of relatively small items that are
changed infrequently).

Is there a problem with concurrent access? And, most important, is
this the ONLY problem? (I still don't understand because of blurred
mention of "data corruption".)


If concurrency is the only problem then:
1. Ņan data corruption be avoided? Or this is impossible?
2. How?

If all BDB readers would use O_SHLOCK and all writers O_EXLOCK is it
guarantee for data integrity?


-- 
Best regards,
 Anthony                            mailto:ap00@mail.ru





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