Commit Graph

365 Commits

Author SHA1 Message Date
Leo Yuriev
a15ebc9923 mdbx: Merge branch 'master' into 'nexenta'. 2016-10-27 18:54:37 +03:00
Leo Yuriev
14f49fd278 mdbx: Merge branch 'devel'.
Change-Id: I8d1e96b04421b0c0e4374980027e218fe4f646d7
2016-10-25 11:19:52 +03:00
Hallvard Furuseth
23389c8f6e mdbx: backport - ITS#8505 Clarify fork() caveat, mdb_env_get_fd(), flock->fcntl.
Change-Id: I987c4790e3ac590030c847a1f2f9b24048ce136a
2016-10-25 09:12:38 +03:00
Leo Yuriev
38d57e66c6 mdbx: use O_CLOEXEC/FD_CLOEXEC for me_fd,env_copy as well (ITS#8505).
Change-Id: I1db158f1371e557a78fc11fc0ca9e371d1590067
2016-10-25 09:12:11 +03:00
Hallvard Furuseth
9a8270f427 mdbx: backport - ITS#7682 F_NOCACHE: Allow error, skip any O_DIRECT.
We can run without F_NOCACHE if it fails. And we do not know
what combining it with O_DIRECT means, if a system has both.

Change-Id: Iec12b7097f4ed9f3ea5beae4a2deb874e4118131
2016-10-25 08:27:46 +03:00
Hallvard Furuseth
f3b99004d1 mdbx: backport - Silence warning for initializer "mdb_copy my = {0}".
1st struct member was not a scalar.

Change-Id: If52afc241f30b6af77a608a41178cbe929ceb288
LY: Already fixed in libmdbx, but to be closer to LMDB.
2016-10-25 08:19:21 +03:00
Leo Yuriev
43d87b4d97 mdbx: move to the OpenLDAP Public License.
Finally for https://github.com/ReOpen/libmdbx/issues/3
2016-09-27 13:44:23 +03:00
Leo Yuriev
41fbc0279d mdbx: Merge branch 'master' into 'nexenta'. 2016-09-26 18:26:54 +03:00
Leo Yuriev
491123fcd6 mdbx: Merge branch 'devel'. 2016-09-06 08:20:54 +03:00
Howard Chu
c25b01b5b6 mdbx: backport - reset cursor EOF flag in cursor_set (ITS#8489).
It usually gets done anyway, but one of the fastpath shortcuts
bypassed this step.

Change-Id: I89d3c797ce969524e383b093dcf592579a514de1
2016-09-06 08:19:09 +03:00
Leo Yuriev
5814f408ac mdbx: Merge branch 'master' into 'nexenta'. 2016-08-25 21:13:25 +03:00
Leo Yuriev
950e587742 mdbx: Merge branch 'devel'. 2016-08-25 21:12:45 +03:00
Leo Yuriev
796c4f5bc2 mdbx: fix usage of __attribute__((format(gnu_printf, ...)) for clang.
Change-Id: Iaf3890a9c915f63896822f430b219bc107037540
2016-08-25 21:10:52 +03:00
Leo Yuriev
2500c766b7 mdbx: fix CC and XCFLAGS in 'ci' make-target rules.
Change-Id: I5a658fedd4e5a51c298a0b76e709b1f9cd28a261
2016-08-25 21:09:06 +03:00
Leo Yuriev
8a721f7fef mdbx: fix 'clean' make-target typo.
Change-Id: Ief422bd4ce3fa8800ad0f64702e93391cac5aa94
2016-08-25 21:03:39 +03:00
Hallvard Furuseth
b99cb20483 mdbx: minor fix mdb_page_list() message.
Change-Id: I25697a7123aef182762a91536e54ca118d6a0958
2016-08-25 17:34:07 +03:00
Leo Yuriev
5239bce5e5 mdbx: adds minor assert.
More for ae92d0d671.

Change-Id: I32f8f54ec5888fe794b83d42ed7f5ae0138070d4
2016-08-24 11:52:36 +03:00
Leo Yuriev
7e61c52592 mdbx: Merge branch 'devel'. 2016-08-23 15:14:58 +03:00
Leo Yuriev
a92c4a9c17 mdbx: adds LICENSE note.
More for https://github.com/ReOpen/libmdbx/issues/3

Change-Id: I3606bb7011e705f149b26a610cbd33741c11da25
2016-08-23 15:13:32 +03:00
Leo Yuriev
fed33a943e mdbx: adds Makefile deps from mdbx.c
Fix commit 9407621eba

Change-Id: I16dd4e2d6b3343f0827d7af13a93193ffc22c426
2016-08-23 15:00:58 +03:00
Leo Yuriev
4b373b233d mdbx: minor cleanup mdbx_setup_debug().
Change-Id: I1d246420431518c1e6253fbdc2e6beeedbd8c4b6
2016-08-23 14:56:06 +03:00
Leo Yuriev
ae92d0d671 mdbx: fixes issues detected by PVS-Studio.
See http://www.viva64.com/en/b/0422/

This is Partial for https://github.com/ReOpen/ReOpenLDAP/issues/107

Change-Id: Ic47d3cb1ff88ca0807bdd692a1e01487c70b264c
2016-08-22 14:39:45 +03:00
Leo Yuriev
bc7b9984d3 mdbx: fix copyright timestamps.
1 of 2 for https://github.com/ReOpen/libmdbx/issues/3

Change-Id: I7a0b820e092e7b0064ae22341bebcd015e37b7c7
2016-08-22 13:46:40 +03:00
Leo Yuriev
8e0f412711 mdbx: Merge branch 'devel'. 2016-08-18 17:10:32 +03:00
Leo Yuriev
a306a1eac4 mdbx: fix assertions when debug enabled for various open/sync modes.
No bug is here, but had a wrong condition for assertion-check.

Change-Id: I6db76932e235f8212543fdd160a15cc9299d79e8
2016-08-18 17:09:09 +03:00
Leo Yuriev
ef30101347 mdbx: make ci-target without NDEBUG and with MDB_DEBUG=2.
Change-Id: I1745ee8beb2a77512d2821248c71ee0ff9653eb7
2016-08-18 17:09:09 +03:00
Leo Yuriev
7cfcc9ff7a mdbx: check assertions depending on NDEBUG.
Change-Id: I0c8ce98242e7451dd82f8abfbac70b2f4dcfa7a0
2016-08-18 17:09:09 +03:00
Leo Yuriev
9407621eba mdbx: allow CC=xyz for ci-target rules.
Change-Id: Ie5ae783ffde8293b1c6b5c1cfe90f98d829d91ae
2016-08-04 10:44:39 +03:00
Hallvard Furuseth
ac09708bfe mdbx-doc: comment MDB_page, rename mp_ksize.
Change-Id: Ia9d28a76fe0b51ccfc40ba97b913f064b81bc00e
2016-08-04 10:44:39 +03:00
Hallvard Furuseth
85612d9722 mdbx-doc: VALID_FLAGS, mm_last_pg, mt_loose_count.
Change-Id: I6c615244d8b137ac4ed67fb7be70e8ccd4e7cac4
2016-08-04 10:44:33 +03:00
Leo Yuriev
78da60dedd mdbx: Merge branch 'master' into 'nexenta'.
Change-Id: I02fda0d3bc0d14ee7a4f19e03329ef03b1497cd8
2016-07-29 00:41:20 +03:00
Leo Yuriev
163f575581 mdbx: Merge branch 'devel'. 2016-07-29 00:40:35 +03:00
Leo Yuriev
d7c2247569 mdbx: Merge branch 'master' into 'nexenta' branch. 2016-07-26 17:22:39 +03:00
Hallvard Furuseth
f627930bdc mdbx: backport - Refactor mdb_page_get().
Change-Id: I6a44000d954025f87637c8b60da85b210b4df65e
2016-07-26 17:13:06 +03:00
Hallvard Furuseth
259e21c85f mdbx: backport - Fix MDB_INTEGERKEY doc of integer types.
Change-Id: I482cb0fdc9b71368a3ee5c9842ac3bf4c9d07bc2
2016-07-26 17:05:48 +03:00
Leo Yuriev
3aba7faab7 mdbx: Merge branch 'devel'. 2016-07-26 16:09:49 +03:00
Leo Yuriev
a3a98a7a2e mdbx: fix 'mdb_copy' init warning.
Change-Id: Ifc3d0b565a0dd6d6da40e7fe2be2c9ff0f5458fb
2016-07-20 12:51:52 +03:00
Leo Yuriev
eb3a9505a3 mdbx: update CHANGES.
Change-Id: I5133d9814ca449ae46ee97179879b72b160b72d7
2016-07-18 18:35:39 +03:00
Hallvard Furuseth
dd98ab22da mdbx: backport - Add error MDB_PROBLEM, replace some MDB_CORRUPTED.
When problem is most likely in txn, not on disk.

Change-Id: Ie01d9eb32e8f250f6dd98f3fe84c38ed15593a2e
2016-07-18 18:34:59 +03:00
Hallvard Furuseth
3befcdab01 mdbx: backport - ITS#8209 fix MDB_CP_COMPACT.
Handle errors.  Fix cond_wait condition so mc_new
is the sole control var.  Drop specious cond_waits.
Do not look at 'mo' while copythr writes it.

Preserve DB flags (use metapage#1) when main DB is empty.
Fail if metapage root != actual root in output file.

Some _aligned_malloc() doc seems to think arg NULL = user error.
Don't know if posix_memalign() pointer is defined after failure.

Change-Id: Idfdc118b4848bb96bace0f29db9dcdd710b7a1f4
2016-07-18 18:34:07 +03:00
Leo Yuriev
deefa3d2f4 mdbx: Merge branch 'master' into 'nexenta'.
Change-Id: I5462656270698e6341477d2a7f78ba62f552fffe
2016-06-28 01:39:46 +03:00
Leo Yuriev
d99e9f7377 mdbx: Merge branch 'devel'. 2016-06-16 23:48:48 +03:00
Leo Yuriev
6d99bb59a8 mdbx: use __GNUC_PREREQ and __GNUC_PREREQ.
Change-Id: Ib1927f6ab2e3397fb2a0e83a73c5c0252bc8a593
2016-06-09 15:23:47 +03:00
Leo Yuriev
9c5d029417 mdbx: clarify copyright and license.
Change-Id: Ib1b9516ce09497559937f749d520719046c5b7e6
2016-06-09 13:21:20 +03:00
Leo Yuriev
2c0f99f940 mdbx: refine makefile ci-target.
Change-Id: I48fce22ca32e45edbc519750cca50d361283f53d
2016-06-09 09:00:40 +03:00
Leo Yuriev
0e90ea1d8d mdbx: separate MDBX's features.
Change-Id: I1964ee5d8b8e5fca170b8e955bfc1a6efe25f6c5
2016-06-09 08:54:46 +03:00
Leo Yuriev
43eff26278 mdbx: Merge branch 'master' into nexenta. 2016-06-09 04:23:09 +03:00
Leo Yuriev
0688461bc4 mdbx: CI makefile target for fast checking.
Change-Id: Ie00a3d8d6a44a19a4afe0c369a661a2d3ad60127
2016-06-09 04:19:01 +03:00
Hallvard Furuseth
f5c61018ba mdbx: backport - mdb_env_setup_locks() Plug mutexattr leak on error.
Change-Id: Iac82f957e4961ec964d9d0a75ef0b24a9f68929c
2016-06-09 04:18:55 +03:00
Howard Chu
2806453b54 mdbx: backport - ITS#8339 Solaris 10/11 robust mutex fixes.
Check for PTHREAD_MUTEX_ROBUST_NP definition (this doesn't work
on Linux/glibc because they used an enum). Zero out mutex before
initing.

Change-Id: Ic618a6a72fbd7680dd76d5fd0aef06545dcba994
2016-06-09 03:11:05 +03:00