1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
samba-mirror/lib/ldb
Gary Lockyer 89041a6d18 lib ldb: lmdb clear stale readers on write txn start
In use process failures and Bind9 shut downs leave stale entries in the
lmdb reader table.  This can result in lmdb filling it's database file, as
the free list can not be reclaimed due to the stale reader.

In this fix we call mdb_reader_check at the start of each transaction,
to free any stale readers.  As the default maximum number of readers is
127, this should not impact on performance to any great extent.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14330

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Tue Mar 31 01:26:07 UTC 2020 on sn-devel-184
2020-03-31 01:26:07 +00:00
..
ABI ldb: change the version to 2.2.0 for Samba 4.13 2020-02-26 23:11:39 +00:00
common ldb: Use ARRAY_DEL_ELEMENT() in ldb_dn_set_extended_component() 2020-03-26 14:43:32 +00:00
docs
examples
include ldb: Change pack format defines to enum 2019-08-20 03:40:29 +00:00
ldb_key_value ldb: Use ARRAY_DEL_ELEMENT() in ldb_kv_index_del_value() 2020-03-26 14:43:32 +00:00
ldb_ldap ldb_ldap: use ldb_msg API to add elements 2019-05-10 01:15:18 +00:00
ldb_ldb ldb: Add MDB support to ldb:// 2018-05-23 02:27:12 +02:00
ldb_map ldb_map: check a return value (CID 241354) 2019-05-09 22:39:27 +00:00
ldb_mdb lib ldb: lmdb clear stale readers on write txn start 2020-03-31 01:26:07 +00:00
ldb_sqlite3 CVE-2018-1140 ldb: Check for ldb_dn_get_casefold() failure in ldb_sqlite 2018-08-14 13:57:15 +02:00
ldb_tdb lib ldb key value backends: Add nested txn support 2019-06-21 04:27:12 +00:00
man Spelling fixes s/overrided/overridden/ 2019-04-02 01:12:11 +00:00
modules ldb modules: paged_search checks control is not NULL (CID 241355) 2019-05-09 22:39:27 +00:00
nssldb
tests lib ldb: lmdb clear stale readers on write txn start 2020-03-31 01:26:07 +00:00
tools ldb: ensure that ldbedit operates like ldbmodify: set DONT_CREATE_DB 2020-03-02 02:47:30 +00:00
web
_ldb_text.py ldb/tests/_ldb_text: remove unused imports 2018-10-25 21:45:55 +02:00
configure build: Move python detection back into waf (instead of in configure and Makefile) 2018-12-14 14:40:19 +01:00
Doxyfile
examples.dox
ldb.pc.in
mainpage.dox
Makefile Search for location of waf script 2019-02-26 10:39:24 +01:00
pyldb_util.c pyldb: rename pyldb_Dn_AsDn() to pyldb_Dn_AS_DN() 2019-07-10 04:32:13 +00:00
pyldb-util.pc.in lib/ldb: Enable use of a python3 pyldb-util system library 2017-03-10 07:31:10 +01:00
pyldb.c py3: Remove #define PyInt_FromLong PyLong_FromLong 2020-03-23 19:12:43 +00:00
pyldb.h pyldb: rename pyldb_Dn_AsDn() to pyldb_Dn_AS_DN() 2019-07-10 04:32:13 +00:00
README_gcov.txt
wscript ldb build: Remove some PEP8 warnings from wscript 2020-03-22 04:39:36 +00:00