[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: 2.1.17 performance issues



Today at 9:15am, John Madden wrote:

> > Not only is it dangerous, but since it is UNDOCUMENTED which DB_CONFIG
> > statements override slapd configuration options, it is bound to happen
> > that someone is going to use checkpoint in their slapd.conf file and
> > also have it in their DB_CONFIG file.  The dbnosync option is going to
> > cause a similar problem.  It will be commented out in either slapd.conf
> > or DB_CONFIG but not both and someone is going to think it's off when
> > they don't remember to check both places and get a rude surprise.
> 
> No Berkeley config options "override" slapd config options.  BDB is a
> completely separate entity -- imagine you were using back-sql -- you
> wouldn't expect slapd to have anything to do with your SQL backend, would
> you?
> 
> Given this paradigm, I imagine that dbnosync has no effect on filesystem
> syncing with back-bdb unless BDB has hooks to allow client applications to
> request an fsync.  ...Others can confirm that one.

I'm sorry John, but you're just plain wrong.  Setting dbnosync in the 
slapd.conf file causes back-bdb to invoke the DB_ENV->set_flags() 
routine to disable syncing after every transaction.  If you don't set it 
in the slapd.conf file (or have it commented out), but have "set_flags 
DB_TXN_NOSYNC" in your DB_CONFIG file, you have turned off syncing.

>From the DB_ENV->set_flags page:

"Because the DB_CONFIG file is read when the database environment is 
opened, it will silently overrule configuration done before that time."


-- 
Frank Swasey                    | http://www.uvm.edu/~fcs
Systems Programmer              | Always remember: You are UNIQUE,
University of Vermont           |    just like everyone else.
                    === God Bless Us All ===