Eric,

On 16.03.2012 18:02, no-re...@cfengine.com wrote:

> We'd like to investigate the problems you were having. To that end, I was 
> hoping someone could answer the following questions:
>
> 1. I see you have 2 products, CFE Community and CFE Nova. Which one(s) was 
> BDB being used in?

CFE Community had four different DB backends, one of them is Berkeley 
DB. Our pre-built packages for CFE Community use Tokyo Cabinet.

CFE Nova uses Tokyo Cabinet (QDBM on Windows).

> 3. What version of Berkeley DB does CFEngine use?

CFEngine is open source software, and we don't bundle Berkeley DB, so it 
it depends on the compilation environment of the user -- most likely the 
one coming with Linux distribution / ports system, or random download 
from Oracle site if the OS does not have vendor-provided packages 
distribution system.

> 4. What type of Berkeley DB do you use?

> Maybe the simplest way to figure this out; could you share the 
> ../dist/configure command line you use to build Berkeley DB for use with 
> CFEngine (I assume you’re not using BDB JE)
>
> I looked through the forums and only found one thread about a BDB issue:
> https://cfengine.com/forum/read.php?3,22382,22382
> 5. Is there any other information available for us to review?
> BDB comes in multiple variants, not all of them offer transaction guarantees.

> If you are using BDB TDS, or Transactional Data Store, you should never run 
> into database corruption issues.

We used Data Storage. I know, it's the wrong type, and the cause of the 
database corruption issues: the primary reason to drop Berkeley DB 
backend is recent large refactoring, which highlighted the following facts:

1) having another two backends is a waste of (very limited) development 
resources.
2) Converting existing BDB-related code to use TDS is not a trivial task
3) TC and QDBM work pretty well for our purposes

Having said that, I would gladly accept patches which add another 
database backends (reinstantiation of Berkeley DB, adding TDB, plain 
text files or anything else) -- after the recent refactoring CFEngine DB 
API is well-defined. OTOH, we would not spend time maintaining those 
backends. It is unlikely DB API will undergo another radical 
transformation in future, but it any breakages will slip unnoticed by us.

-- 
Mikhail Gusarov
_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to