Ticket #47409 - allow setting db deadlock rejection policy

https://fedorahosted.org/389/ticket/47409
Reviewed by: nhosoi (Thanks!)
Branch: 389-ds-base-1.2.11
Fix Description: Add the db config attribute nsslapd-db-deadlock-policy.  This
takes values from 1-9.  The values correspond to the deadlock detector modes
in db.h.  These are the valid values to pass to the DBENV->lock_detect
method for the atype parameter.  The default value is 9 (DB_LOCK_YOUNGEST) -
select the youngest locker and reject it.  A value of 0 (DB_LOCK_NORUN) means
to disable deadlock detection and rejection - not recommended except for
testing purposes.  Attempting to use other values will cause an error.
Platforms tested: RHEL6 x86_64
Flag Day: no
Doc impact: yes - document new config parameter
(cherry picked from commit d62cd9b69c8a4a852e7bea0345285dc8c3e1e547)
(cherry picked from commit 42a3ef2644d31355da4d82e1f11b2b2eada554a7)
Ticket #47409 - allow setting db deadlock rejection policy

https://fedorahosted.org/389/ticket/47409
Reviewed by: nhosoi (Thanks!)
Branch: master
Fix Description: Forgot to add flags parameter to last commit.
Platforms tested: RHEL6 x86_64
Flag Day: no
Doc impact: yes - document new config parameter
(cherry picked from commit 67cbb2eac1300ae57acf75f4c3299103046a3323)
(cherry picked from commit ceaa9ac5267c04c23e3fb8e366e17295ffd6b93c)
(cherry picked from commit e535ff5a45601c4279a14e92eaf1d68729866d38)
Ticket #47412 - Modify RUV should be serialized in ldbm_back_modify/add

Bug Description: Current ldbm_back_modify and _add allow RUV to
update without respecting other threads in the backend's critical
area. It gives a chance for 2 threads trying to modify RUV at the
same time in the 2 different transactions which causes the DB
deadlocks.

Fix Description: This patch changes the policy for RUV to skip
the backend serial lock.

https://fedorahosted.org/389/ticket/47412

Reviewed by Rich (Thank you!!)