Commit Graph

59 Commits

Author SHA1 Message Date
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
9c5d029417 mdbx: clarify copyright and license.
Change-Id: Ib1b9516ce09497559937f749d520719046c5b7e6
2016-06-09 13:21:20 +03:00
Leo Yuriev
6191b46ca1 mdbx: Merge branch 'devel'. 2016-05-09 08:36:48 +03:00
Leo Yuriev
14b3afdcff mdbx: notify OOM-handler about end of loop.
Change-Id: I71d66e371df869560801e12b8b06c4f4cbf90e98
2016-05-07 03:52:04 +03:00
Leo Yuriev
bbf8a047fc mdbx: release 0.9.19
re-release v0.9.19 with a few commits,
that were missed previously.

Change-Id: Ia22eb6c3fd35c80596705326ae46f167c8cc3d73
2016-05-06 05:22:56 +03:00
Leo Yuriev
50f5475185 mdbx: don't mimics the MDBX's features for MDB.
Change-Id: Ie3865434c741da77b9a285e43b7d6a1d9ec0c5e2
2016-05-04 22:30:11 +03:00
Leo Yuriev
33e2b52118 mdbx: fix nasty/stupid mistake in cmp-functions.
Change-Id: If9aff5d9cd46dde614ddaa688113be8be12f3e5d
2016-03-29 23:03:58 +03:00
Leo Yuriev
f833877083 mdbx: MDB_val as struct iovec.
Change-Id: I08d9dcabaf88564b367bc2752e596ebea0e7cbf9
2016-03-29 23:03:58 +03:00
Leo Yuriev
eb429da210 mdbx: minors.
Change-Id: Id1d8ed5bf6ce253dc73b2e69e8701bffa83f7e12
2016-03-12 20:44:20 +03:00
Leo Yuriev
c9642d1082 mdbx: MDB_PAGEPERTURB.
Change-Id: Id78304cb1f5caa3231e69388f6ce29a431e39976
2016-02-09 09:28:18 +03:00
Howard Chu
0deb198ca2 mdbx: backport - release 0.9.18
Change-Id: I132a004c109facfa481a86a09eb0c3e454c294a8
2016-02-09 06:28:54 +03:00
Howard Chu
77d482ef1e mdbx: backport - Happy New Year 2016.
Change-Id: I856f00f5cc7ef9cff0c7e93257ddcbd074e02c55
2016-02-01 21:03:53 +03:00
Howard Chu
3b7a958fcd mdbx: backport - Update WRITEMAP doc.
Change-Id: I5c4b72e8c64dfe4ed04ca579f3545191165ef20a
2016-01-25 18:27:58 +03:00
Hallvard Furuseth
2477997658 mdbx: backport - lmdb.h Caveats: Reserved vs. actual mem/disk usage.
Change-Id: Ia7c250e14bd5a59c8600f74c5843ad0bb37ebd33
2016-01-14 00:27:37 +03:00
Leo Yuriev
f1ceb753e5 mdbx: Merge branch 'master' into devel. 2016-01-09 22:34:05 +03:00
Howard Chu
ba29ae2cd2 mdbx: backport - Add MDB_PREV_MULTIPLE.
Logical counterpart to GET_MULTIPLE, NEXT_MULTIPLE

Change-Id: I3f42cb1599997e79dbdc76bcf23b78314ededfc9
2016-01-09 22:28:39 +03:00
Leo Yuriev
c81942a2a6 mdbx: pull CHANGES from LMDB.
Change-Id: I008d23776ea78352de582f7e93446edbed75d094
2015-12-25 19:49:22 +03:00
Howard Chu
926db32902 mdbx: backport - MDB_RESERVE doc.
Add mdb_put text to mdb_cursor_put description for people who
fail to draw logical conclusions.

Change-Id: I7d17178ad3b0d2ada721f3027af7e70f478c0da1
2015-12-25 19:49:11 +03:00
Howard Chu
ebaf7c8d41 mdbx: backport - Add Getting Started doc.
Change-Id: I41847e550dc8246fca293bef3d103c35d43f3001
2015-12-25 19:49:01 +03:00
Leo Yuriev
efda814f7e mdbx: minor flags cleanup.
Change-Id: I6ebb0d76963c0bf41051ca97fba4ec6f564519e2
2015-12-13 19:49:53 +03:00
Leo Yuriev
a7a28ecdb4 mdbx: Release 0.9.17 (pull from openldap.org).
Change-Id: Ia92368fc1e17c4106cffe72c7a34581d4413e8ca
2015-12-01 16:05:55 +03:00
Leo Yuriev
dc3256e91c mdbx: adds signatures to detect ABI mixup. 2015-10-20 23:59:06 +03:00
Leo Yuriev
68171d5f5d lmdb: provide both interfaces - advanced 'mdbx' and original 'lmdb'. 2015-10-13 23:50:25 +03:00
Leo Yuriev
f7d8812e6c lmdb: n-entries info from b-tree traversal in mdb_chk.
Change-Id: Ic9343dcdba976ac51c8f5776d2f7c9fed59da8e0
2015-09-02 17:53:48 +03:00
Leo Yuriev
15e0600b6c lmdb: major rework of traversal b-tree for mdb_chk.
Change-Id: I9d382516f76092f44fc1a12d7554039582b87656
2015-09-02 16:19:12 +03:00
Leo Yuriev
e7f58da2ac lmdb: support for a utterly no-sync mode,
by combination of MDB_NOSYNC and MDB_MAPASYNC.

Change-Id: I3e2d6c8f044a7522436dab4d0818d4d59b78b78d
2015-09-01 12:15:59 +03:00
Howard Chu
73941be79a lmdb: Doc tweak - MDB_RESERVE / DUPSORT incompat.
For those people who insist on ignoring the obvious.

Change-Id: I499f7073c18d887a1171a8ffd92fea7a7602ed9c
2015-08-30 01:01:44 +03:00
Howard Chu
d6b5070100 lmdb: Another MDB_APPEND doc tweak.
Missed this in 7ce29b9edbdaf34b7aeb545324008ed4dff62952

Change-Id: Ida12915843e414bfdd6fb6575425525ccac99605
2015-08-30 01:00:59 +03:00
Howard Chu
7fc3427b9c lmdb: Release 0.9.16
Change-Id: I47fb565592dd71e1fb3575584c560883418b7bf5
2015-08-15 13:17:46 +03:00
Leo Yuriev
96d69e3fa1 lmdb: added mdb_env_open_ex() and exclusive/monopoly mode for mdb_chk.
Change-Id: I867e7f17924ffecb744440e95db96c0a7411d6ef
2015-08-13 18:30:02 +03:00
Leo Yuriev
a243a38aa6 lmdb: adding page-space usage info to mdb_chk.
Change-Id: I12dcdb54894a362d41612e973f983cb4e067520c
2015-08-05 22:59:18 +03:00
Leo Yuriev
c32cf0fea4 lmdb, back-mdb: use 'long' as result to speedup comparison.
Change-Id: I3ade0c7525f4a461a7edf5873af196e6b33c0727
2015-08-05 14:35:09 +03:00
Howard Chu
b980ff72cb lmdb: 0.9.16, updated CHANGES for ITS#8181, #8190, #8200.
Change-Id: I87a1a3136ea6dcdd322ab24ec1df9391aa4280b8
2015-08-04 13:57:14 +03:00
Hallvard Furuseth
342d56977f lmdb: Catch most uses of finished/parent txns.
* Add MDB_TXN_FINISHED, MDB_TXN_HAS_CHILD, MDB_TXN_BLOCKED.
* Clear mt_numdbs in writers, for TXN_DBI_EXIST() to catch.
  We already do in readers.

Change-Id: I4f714c0789188dfab4ce22b7d9d3a75d8b62ef6b
2015-08-04 13:57:14 +03:00
Hallvard Furuseth
be27186f76 lmdb: ITS#8181 Verify that records are/aren't DBs.
Except we don't catch the user passing F_SUBDATA to
mdb_cursor_<put/del>, like an internal LMDB call.

Change-Id: I5ebce36694045279702c74490a5a634217d4f95d
2015-08-04 13:57:13 +03:00
Leo Yuriev
295beda00c lmdb: fix ABI compatibility with original liblmdb.so
Change-Id: I770a49b7a506f3f2a21ea3af36fd07c16a32dc30
2015-06-04 19:12:14 +03:00
Hallvard Furuseth
001f89d4af lmdb: Clarify mdb_env_open() doc of 'mode' param.
Change-Id: Ia156bdd14f80c25b0d0cf44f9ab8a0fd270a4bb7
2015-06-03 02:12:58 +03:00
Hallvard Furuseth
476c5b02ea lmdb: ITS#8117 Fix MDB_INTEGERDUP keysize doc.
Change-Id: I7cf7c456f35fe9c5449a37ad9130864617197726
2015-05-21 21:40:39 +03:00
Leo Yuriev
104312d15e lmdb: update mdb_chk for checkpoints, minor cosmetics.
This is 9/9 for https://github.com/ReOpen/ReOpenLDAP/issues/1
and https://github.com/ReOpen/ReOpenLDAP/issues/2

Change-Id: I05f59313b4346c08bcd63d62e6c48a5f53c47852
2015-05-21 21:40:39 +03:00
Leo Yuriev
312135169f lmdb: weak/steady for meta-pages.
This is 5/9 for https://github.com/ReOpen/ReOpenLDAP/issues/1
and https://github.com/ReOpen/ReOpenLDAP/issues/2

Change-Id: Ica2dbe0bfd6ba58c00de161e2cd50594ee39c44d
2015-05-21 21:40:39 +03:00
Leo Yuriev
1c37139b2a lmdb: drops no-lock operation mode (now MDB_NOLOCK is UNSUPPORTED).
This is 3/9 for https://github.com/ReOpen/ReOpenLDAP/issues/1
and https://github.com/ReOpen/ReOpenLDAP/issues/2

Change-Id: I7cd5d90c41424d6635accbb10c5801adeb1087e9
2015-05-21 20:23:12 +03:00
Leo Yuriev
c5db4043ee lmdb: prepare to bigbang (separated minor changes).
This is 1/9 for https://github.com/ReOpen/ReOpenLDAP/issues/1
and https://github.com/ReOpen/ReOpenLDAP/issues/2

Change-Id: I3ba943b2e4597f3e796376a5a54851aa411b1aa1
2015-05-21 18:05:00 +03:00
Leo Yuriev
da5e3d5133 lmdb: fix test#6 and run it by 'make test'.
Change-Id: I3a5bb363368f46576a5acaf332f9fd7feb46a3e5
2015-05-15 02:24:53 +03:00
Leo Yuriev
f2703156f0 lmdb: mdb: b-tree walk, page-map check in mdb_chk.
Change-Id: I6678b4d891c8fbfbc49ed600212f4ade39e25282
2015-05-08 15:49:33 +03:00
Leo Yuriev
4a04e59dba lmdb: refork debug.
Change-Id: I47d3e300b47fcba5600644ff28c68a900640c39c
2015-05-08 03:45:30 +03:00
Leo Yuriev
59d6560fc3 lmdb: cleanup Windows support.
Change-Id: I7bc7f3e997eeea4c5678a97e2faf10525ba7eee6
2015-05-04 03:48:22 +03:00
Hallvard Furuseth
9752e58a14 lmdb: Fix EACCES description.
Change-Id: Idf5ead68fbac40dd9f944d6ccd86b24f9b4d4a8a
2015-04-19 23:36:21 +03:00
Hallvard Furuseth
2ce1fcbb8f lmdb: Reformat mdb_dbi_open() doc for clarity.
Change-Id: I12a9f9b88a565261d6e5dfdfb7089a4bf50210da
2015-04-14 22:13:42 +03:00
Quanah Gibson-Mount
3766484c9e all: 2015 copyright timestamp (from OpenLDAP).
Change-Id: I76f457e30a0478bfc0246c760a2302d380d6f181
2015-02-18 16:04:11 +03:00
Hallvard Furuseth
62181cfe87 lmdb: Reject CHANGELESS flags in mdb_env_set_flags().
Reverts part of a2ac10107e2fb845c4a38a339239063ec4407d84.
MDB_ROBUST needed to be accepted, but that flag is gone.

Change-Id: I2aba1e9e02da716d4509e465767bf8be05895c29
2015-01-16 01:26:50 +03:00