NAME
ssllaappdd-bbddbb, ssllaappdd-hhddbb - Berkeley DB backends to ssllaappdd
SYNOPSIS
//eettcc//ooppeennllddaapp//ssllaappdd..ccoonnffDESCRIPTION
The bbddbb backend to ssllaappdd(8) is the recommended primary backend for a normal ssllaappdd database. It uses the Sleepycat Berkeley DB (BDB) package to store data. It makes extensive use of indexing and caching to speed data access. hhddbb is a variant of the bbddbb backend that uses a hierarchical database layout which supports subtree renames. It is otherwise identical to the bbddbb behavior, and all the same configuration options apply. It is noted that these options are intended to complement Berkeley DB configuration options set in the environment's DDBBCCOONNFFIIGG file. See Berkeley DB documentation for details on DDBBCCOONNFFIIGG configurationoptions. Where there is overlap, settings in DDBBCCOONNFFIIGG take prece-
dence. CCOONNFFIIGGUURRAATTIIOONN These ssllaappdd..ccoonnff options apply to the bbddbb and hhddbb backend database. That is, they must follow a "database bdb" or "database hdb" line andcome before any subsequent "backend" or "database" lines. Other data-
base options are described in the ssllaappdd..ccoonnff(5) manual page. ccaacchheessiizzeeSpecify the size in entries of the in-memory entry cache main-
tained by the bbddbb or hhddbb backend database instance. The default is 1000 entries. ccaacchheeffrreeeeSpecify the number of entries to free from the entry cache when the cache reaches the ccaacchheessiizzee limit. The default is 1 entry. cchheecckkppooiinntt Specify the frequency for checkpointing the database transaction log. A checkpoint operation flushes the database buffers to disk and writes a checkpoint record in the log. The checkpoint will occur if either
utes have passed since the last checkpoint. Both arguments default to zero, in which case they are ignored. When thedata has been written or min- argument is non-zero, an internal task will run every
utes to perform the checkpoint. See the Berkeley DB reference guide for more details.min- ddbbccoonnffiigg
Specify a configuration directive to be placed in the DDBBCCOONNFFIIGG file of the database directory. The ddbbccoonnffiigg directive is just a convenience to allow all necessary configuration to be set in the ssllaappdd..ccoonnff file. The options set using this directive will only be written to the DDBBCCOONNFFIIGG file if no such file existed atserver startup time. This allows one to set initial values with-
out overwriting/destroying a DDBBCCOONNFFIIGG file that was already customized through other means. This directive may be specified multiple times, as needed. For example: dbconfig setcachesize 0 1048576 0 dbconfig setlgbsize 2097152 ddbbnnoossyynnccSpecify that on-disk database contents should not be immediately
synchronized with in memory changes. Enabling this option may improve performance at the expense of data security. See the Berkeley DB reference guide for more details. ddiirreeccttoorryySpecify the directory where the BDB files containing this data-
base and associated indexes live. A separate directory must bespecified for each database. The default is //vvaarr//ddbb//ooppeennll-
ddaapp//ooppeennllddaapp-ddaattaa.
ddiirrttyyrreeaadd Allow reads of modified but not yet committed data. Usually transactions are isolated to prevent other operations fromaccessing uncommitted data. This option may improve perfor-
mance, but may also return inconsistent results if the data comes from a transaction that is later aborted. In this case, the modified data is discarded and a subsequent search will return a different result. iiddllccaacchheessiizzeeSpecify the size of the in-memory index cache, in index slots.
The default is zero. A larger value will speed up frequentsearches of indexed entries. An hhddbb database needs a large iiddll-
ccaacchheessiizzee for good search performance, typically three times the ccaacchheessiizzee (entry cache size) or larger. iinnddeexx {|ddeeffaauulltt} [pprreess,eeqq,aapppprrooxx,ssuubb, ] Specify the indexes to maintain for the given attribute (or list of attributes). Some attributes only support a subset of indexes. If only an is given, the indices specified for ddeeffaauulltt are maintained. Note that setting a default does not imply that all attributes will be indexed. Also, for best per-
formance, an eeqq index should always be configured for the oobbjjeeccttCCllaassss attribute. A number of special index parameters may be specified. The index type ssuubb can be decomposed into ssuubbiinniittiiaall, ssuubbaannyy, and ssuubbffiinnaall indices. The special type nnoollaanngg may be specified to disallow use of this index by language subtypes. The special type nnoossuubbttyyppeess may be specified to disallow use of this index by named subtypes. Note: changing iinnddeexx settings in ssllaappdd..ccoonnff(5) requires rebuilding indices, see ssllaappiinnddeexx(8); changing iinnddeexx settings dynamically by LDAPModifying "cn=config"automatically causes rebuilding of the indices online in a back-
ground task. lliinneeaarriinnddeexx Tell ssllaappiinnddeexx to index one attribute at a time. By default, all indexed attributes in an entry are processed at the same time.With this option, each indexed attribute is processed individu-
ally, using multiple passes through the entire database. This option improves ssllaappiinnddeexx performance when the database size exceeds the ddbbccaacchhee size. When the ddbbccaacchhee is large enough, this option is not needed and will decrease performance. Also by default, ssllaappaadddd performs full indexing and so a separate ssllaappiinnddeexx run is not needed. With this option, ssllaappaadddd does no indexing and ssllaappiinnddeexx must be used. lloocckkddeetteecctt {oollddeesstt|yyoouunnggeesstt|ffeewweesstt|rraannddoomm|ddeeffaauulltt} Specify which transaction to abort when a deadlock is detected. The default is rraannddoomm. mmooddeeSpecify the file protection mode that newly created database index files should have. The default is 0600. sseeaarrcchhssttaacckk Specify the depth of the stack used for search filter evalua-
tion. Search filters are evaluated on a stack to accommodate nested AND / OR clauses. An individual stack is assigned to each server thread. The depth of the stack determines how complex a filter can be evaluated without requiring any additional memory allocation. Filters that are nested deeper than the search stackdepth will cause a separate stack to be allocated for that par-
ticular search operation. These allocations can have a major negative impact on server performance, but specifying too much stack will also consume a great deal of memory. Each search stack uses 512K bytes per level. The default stack depth is 16, thus 8MB per thread is used. sshhmmkkeeyySpecify a key for a shared memory BDB environment. By default the BDB environment uses memory mapped files. If a non-zero
value is specified, it will be used as the key to identify a shared memory region that will house the environment. AACCCCEESSSS CCOONNTTRROOLL The bbddbb and hhddbb backends honor access control semantics as indicated in ssllaappdd..aacccceessss(5). FILES //eettcc//ooppeennllddaapp//ssllaappdd..ccoonnff default ssllaappdd configuration file DDBBCCOONNFFIIGG Berkeley DB configuration fileSEE ALSO
ssllaappdd..ccoonnff(5), ssllaappdd(8), ssllaappaadddd(8), ssllaappccaatt(8), ssllaappiinnddeexx(8), Berkeley DB documentation.OpenLDAP 2.3.27 2006/08/19 SLAPD-BDB(5)