]> git.sur5r.net Git - openldap/log
openldap
8 years agoITS#8311
Howard Chu [Wed, 18 Nov 2015 10:27:50 +0000 (10:27 +0000)]
ITS#8311

8 years agoITS#8311 add comment
Howard Chu [Wed, 18 Nov 2015 10:24:41 +0000 (10:24 +0000)]
ITS#8311 add comment

8 years agoITS#8311 fix page_split from update_key
Howard Chu [Wed, 18 Nov 2015 00:33:25 +0000 (00:33 +0000)]
ITS#8311 fix page_split from update_key

Check for top of stack. Usually the cursor only has height 1 when
calling page_split, but not always.

8 years agoITS#7209
Hallvard Furuseth [Tue, 17 Nov 2015 17:49:31 +0000 (18:49 +0100)]
ITS#7209

8 years agoITS#7209 Default MDB_DSYNC = O_SYNC if no O_DSYNC
Hallvard Furuseth [Tue, 17 Nov 2015 17:22:25 +0000 (18:22 +0100)]
ITS#7209 Default MDB_DSYNC = O_SYNC if no O_DSYNC

8 years agoITS#8310
Howard Chu [Fri, 13 Nov 2015 09:28:36 +0000 (09:28 +0000)]
ITS#8310

8 years agoITS#8310 fix mdb_rebalance cursor fixup
Howard Chu [Fri, 13 Nov 2015 09:25:55 +0000 (09:25 +0000)]
ITS#8310 fix mdb_rebalance cursor fixup

When collapsing root, must adjust entire cursor stack

8 years agoTweak robust mutex detection for glibc
Howard Chu [Wed, 11 Nov 2015 00:02:06 +0000 (00:02 +0000)]
Tweak robust mutex detection for glibc

8 years agoITS#8304
Howard Chu [Mon, 9 Nov 2015 20:11:10 +0000 (20:11 +0000)]
ITS#8304

8 years agoITS#8304 fix page_merge
Howard Chu [Mon, 9 Nov 2015 20:09:10 +0000 (20:09 +0000)]
ITS#8304 fix page_merge

Was using the pre-touch dst page pointer instead of the touched page

8 years agoITS#8300 more for node_move
Howard Chu [Fri, 6 Nov 2015 10:12:45 +0000 (10:12 +0000)]
ITS#8300 more for node_move

When moving a node from one page to another, make sure other cursors'
parent index gets adjusted too.

8 years agoITS#8300 simplify
Howard Chu [Wed, 4 Nov 2015 22:45:38 +0000 (22:45 +0000)]
ITS#8300 simplify

8 years agoITS#8300 more for node_move fixups
Howard Chu [Wed, 4 Nov 2015 22:31:01 +0000 (22:31 +0000)]
ITS#8300 more for node_move fixups

When moving a node from the right neighbor, a different
adjustment is needed.

8 years agoITS#8300
Howard Chu [Wed, 4 Nov 2015 21:03:22 +0000 (21:03 +0000)]
ITS#8300

8 years agoITS#8300 fix node_move
Howard Chu [Wed, 4 Nov 2015 21:01:30 +0000 (21:01 +0000)]
ITS#8300 fix node_move

Don't adjust other cursors when we added a node on the right.

8 years agoITS#8300 fix rebalance after node_move
Howard Chu [Wed, 4 Nov 2015 20:38:30 +0000 (20:38 +0000)]
ITS#8300 fix rebalance after node_move

ITS#8258, ITS#7829 fixes checked parent index to see if we were moving
from a left neighbor. Should have just checked to see if current index
was 0, meaning we added on the left. (Parent index may not tell us
anything meaningful after a nested rebalance.)

8 years agoITS#8238, #8299
Howard Chu [Wed, 4 Nov 2015 18:17:50 +0000 (18:17 +0000)]
ITS#8238, #8299

8 years agoITS#8238 fix DUPFIXED page_split
Howard Chu [Wed, 4 Nov 2015 18:11:12 +0000 (18:11 +0000)]
ITS#8238 fix DUPFIXED page_split

Parent mc_ki wasn't adjusted if new_indx was > split point

8 years agoITS#8299 fix page_merge cursor fixup
Howard Chu [Wed, 4 Nov 2015 17:03:48 +0000 (17:03 +0000)]
ITS#8299 fix page_merge cursor fixup

The parent's mc_ki has changed. We need to fix that up as well
in other cursors.

8 years agoUse MDB_USE_ROBUST not MDB_NO_ROBUST
Howard Chu [Sat, 31 Oct 2015 02:27:31 +0000 (02:27 +0000)]
Use MDB_USE_ROBUST not MDB_NO_ROBUST

8 years agoAdd MDB_NO_ROBUST to disable Robust Mutexes
Howard Chu [Sat, 31 Oct 2015 02:11:47 +0000 (02:11 +0000)]
Add MDB_NO_ROBUST to disable Robust Mutexes

8 years agoMore misc updates
Howard Chu [Mon, 26 Oct 2015 20:18:19 +0000 (20:18 +0000)]
More misc updates

8 years agoFix typo in mdb_tassert().
Hallvard Furuseth [Thu, 1 Oct 2015 17:43:58 +0000 (19:43 +0200)]
Fix typo in mdb_tassert().

No effect on current code.

8 years agoITS#8069 char* strings on Windows are ASCII
Pavel Medvedev [Wed, 19 Aug 2015 16:19:48 +0000 (17:19 +0100)]
ITS#8069 char* strings on Windows are ASCII

8 years agoITS#8067 add ssize_t typedef for MSVC
Pavel Medvedev [Wed, 19 Aug 2015 15:39:08 +0000 (16:39 +0100)]
ITS#8067 add ssize_t typedef for MSVC

8 years agoSimpler mdb_env_write_meta()
Hallvard Furuseth [Sun, 26 Jul 2015 05:20:19 +0000 (07:20 +0200)]
Simpler mdb_env_write_meta()

8 years agoKill magic numbers for NUM_METAS, databases
Hallvard Furuseth [Sun, 26 Jul 2015 05:16:41 +0000 (07:16 +0200)]
Kill magic numbers for NUM_METAS, databases

8 years agoITS#7377 Catch mdb_put() to blocked/read-only txns
Hallvard Furuseth [Sun, 19 Jul 2015 19:44:02 +0000 (21:44 +0200)]
ITS#7377 Catch mdb_put() to blocked/read-only txns

...early enough that txn state is left unchanged.

8 years agoITS#7377 Always notice env error on txn startup.
Hallvard Furuseth [Sun, 19 Jul 2015 19:43:10 +0000 (21:43 +0200)]
ITS#7377 Always notice env error on txn startup.

Move the check to the end of txn startup.  Catches env
breakage which happens while the new txn waits for a lock.

8 years agoCleanup: Drop !mt_dbxs hack, use MDB_TXN_FINISHED
Hallvard Furuseth [Sun, 19 Jul 2015 19:31:54 +0000 (21:31 +0200)]
Cleanup: Drop !mt_dbxs hack, use MDB_TXN_FINISHED

8 years agoCatch most uses of finished/parent txns.
Hallvard Furuseth [Sun, 19 Jul 2015 19:31:25 +0000 (21:31 +0200)]
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.

8 years agoMove code into mdb_txn_end(). Was mdb_txn_reset0.
Hallvard Furuseth [Sun, 19 Jul 2015 19:30:12 +0000 (21:30 +0200)]
Move code into mdb_txn_end(). Was mdb_txn_reset0.

Side effects:
* Clean txn up a bit even before freeing it.
* Tweak DEBUG output at txn end. Add DEBUG after commit(writer).

8 years agoFactor me_metas[toggle] out to mdb_env_pick_meta()
Hallvard Furuseth [Sat, 11 Jul 2015 19:10:33 +0000 (21:10 +0200)]
Factor me_metas[toggle] out to mdb_env_pick_meta()

8 years agoSimpler mdb_node_add()
Hallvard Furuseth [Sat, 11 Jul 2015 19:09:36 +0000 (21:09 +0200)]
Simpler mdb_node_add()

8 years agoMore ESECT declarations
Hallvard Furuseth [Sat, 4 Jul 2015 11:50:21 +0000 (13:50 +0200)]
More ESECT declarations

8 years agoAdd DB_USRVALID, to avoid 'dbi == FREE_DBI' tests
Hallvard Furuseth [Sat, 4 Jul 2015 11:49:12 +0000 (13:49 +0200)]
Add DB_USRVALID, to avoid 'dbi == FREE_DBI' tests

8 years agoSimpler flag/DBI checks and MDB_DEBUG
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:07 +0000 (13:48 +0200)]
Simpler flag/DBI checks and MDB_DEBUG

8 years agoSimpler mdb_drop().
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:06 +0000 (13:48 +0200)]
Simpler mdb_drop().

MDB_DBI_CHANGED(,MAIN_DBI) is never true.

8 years agoSimpler mdb_node_shrink()
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:05 +0000 (13:48 +0200)]
Simpler mdb_node_shrink()

8 years agoSimpler mdb_txn_commit().
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:04 +0000 (13:48 +0200)]
Simpler mdb_txn_commit().

mt_env is always set.
Commit(mt_child) resets mt_child, so parent need not.

8 years agomdb_txn_begin() cleanup
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:03 +0000 (13:48 +0200)]
mdb_txn_begin() cleanup

8 years agomdb_drop0(): Omit scanning DUPSORT sub-DB leaves
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:02 +0000 (13:48 +0200)]
mdb_drop0(): Omit scanning DUPSORT sub-DB leaves

8 years agoUse mdb_cmp_long() for FREE_DBI
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:01 +0000 (13:48 +0200)]
Use mdb_cmp_long() for FREE_DBI

8 years agomdb_env_get_flags(): Hide internal flags
Hallvard Furuseth [Sat, 4 Jul 2015 11:42:41 +0000 (13:42 +0200)]
mdb_env_get_flags(): Hide internal flags

8 years agoSupport robust mutexes/locks. Add mdb_mutex_t etc.
Hallvard Furuseth [Fri, 3 Jul 2015 21:07:30 +0000 (23:07 +0200)]
Support robust mutexes/locks. Add mdb_mutex_t etc.

8 years agoAdd MDB_USE_POSIX_MUTEX.
Hallvard Furuseth [Fri, 3 Jul 2015 21:07:00 +0000 (23:07 +0200)]
Add MDB_USE_POSIX_MUTEX.

So far just to help aligning mdb.master and mdb.RE.
We'll make it an option later.

8 years agoWhitespace (align with mdb.master)
Hallvard Furuseth [Fri, 3 Jul 2015 21:02:12 +0000 (23:02 +0200)]
Whitespace (align with mdb.master)

8 years agoITS#7969 Use __sync_synchronize()
leo@yuriev.ru [Fri, 3 Jul 2015 21:01:00 +0000 (23:01 +0200)]
ITS#7969 Use __sync_synchronize()

The rest of 9a80a8a8e8feed56fbccd8851b8a789f7fff9c11
plus commit a937740aa0c47dc7a1a5e9be42dcea2dd3c81683.

8 years agoSet/clear mp_pad, md_pad (MDB_DUPFIXED data size).
Hallvard Furuseth [Wed, 20 May 2015 02:04:38 +0000 (04:04 +0200)]
Set/clear mp_pad, md_pad (MDB_DUPFIXED data size).

mdb_xcursor_init1(): md_pad is only used when MDB_DUPFIXED.
mdb_page_split():    Copy mp_pad too. Used by mdb_page_list().

8 years agoCleanup MDB_env.me_txn0.
Hallvard Furuseth [Wed, 8 Apr 2015 19:52:05 +0000 (21:52 +0200)]
Cleanup MDB_env.me_txn0.

More fallout from 4d02c741b120786df1b87ee9ed49c1d3f9bc7522.

8 years agoCopy some env flags to txn. Factor out flags.
Hallvard Furuseth [Wed, 8 Apr 2015 19:51:50 +0000 (21:51 +0200)]
Copy some env flags to txn. Factor out flags.

Taken from mdb_txn_begin(,,MDB_NOMETASYNC, MDB_NOSYNC,,)
without adding those two flags yet, to align with mdb.master:
Part of 54516639acab87aad156230f8a799e9128d266fe (Renumber...)
8adee9464f65d1702b81a7c604f1a48baa7a0ad5 (Fix per-txn...).

8 years agoITS#7971 mdb_txn_renew0(): Fix new readers slots.
leo@yuriev.ru [Sat, 17 Jan 2015 05:50:12 +0000 (06:50 +0100)]
ITS#7971 mdb_txn_renew0(): Fix new readers slots.

commit 9a8eb95674c7b500cfe5f44d03493ff76c9fc0c1 (mdb_txn_renew0)
plus b2ab9910dd5f13ca2d92eeb4c39a90b922df8dfe (reader allocation)
from mdb.master.

8 years agoITS#7994 Access to current transaction ID.
David Barbour [Mon, 12 Jan 2015 22:00:30 +0000 (23:00 +0100)]
ITS#7994 Access to current transaction ID.

commit b660491d3fa359325cb3615a276bba78f32e2075 (mdb_txn_id())
plus c36c167cc49a59d4f40ae5fc259c013de601164e (fix prev commit)
from mdb.master.

8 years agoTry to avoid an invalid datafile after failed init
Hallvard Furuseth [Mon, 8 Dec 2014 08:56:36 +0000 (09:56 +0100)]
Try to avoid an invalid datafile after failed init

8 years agoFor ITS#7789: Ensure mapsize >= pages in use.
Hallvard Furuseth [Wed, 3 Dec 2014 11:37:55 +0000 (12:37 +0100)]
For ITS#7789: Ensure mapsize >= pages in use.

Check new mapsizes against mm_last_pg.  Move
mdb_env_init_meta0() so it can set mm_last_pg earlier.

8 years agoITS#8263, 8264, 7771, 8270
Howard Chu [Sun, 25 Oct 2015 08:13:25 +0000 (08:13 +0000)]
ITS#8263, 8264, 7771, 8270

8 years agoITS#8270 win32: fix conversion error with MSVC
Ignacio Casal Quinteiro [Thu, 15 Oct 2015 20:22:25 +0000 (13:22 -0700)]
ITS#8270 win32: fix conversion error with MSVC

8 years agoITS#7771 fix cursor tracking on fake pages
Howard Chu [Sun, 11 Oct 2015 23:08:41 +0000 (00:08 +0100)]
ITS#7771 fix cursor tracking on fake pages

node_del shifts nodes around, cursors pointing at fake pages
need to have their mc_pg[0] corrected.

8 years agoITS#8263 streamline prev patch
Hallvard Furuseth [Sun, 11 Oct 2015 20:40:49 +0000 (21:40 +0100)]
ITS#8263 streamline prev patch

8 years agoITS#8263 fix cursor tracking in cursor_put
Howard Chu [Wed, 7 Oct 2015 05:30:58 +0000 (06:30 +0100)]
ITS#8263 fix cursor tracking in cursor_put

8 years agoITS#8264 fix cursor_del cursor tracking
Howard Chu [Tue, 6 Oct 2015 06:57:14 +0000 (07:57 +0100)]
ITS#8264 fix cursor_del cursor tracking

Some destination fixups need to happen immediately after nodes
are moved, before rebalancing

8 years agoITS#8258
Howard Chu [Sun, 4 Oct 2015 02:02:04 +0000 (03:02 +0100)]
ITS#8258

8 years agoITS#8258 fix rebalance/split
Howard Chu [Sun, 4 Oct 2015 00:56:25 +0000 (01:56 +0100)]
ITS#8258 fix rebalance/split

The tree height can also increase during rebalance, not just shrink.
This can happen if update_key needs to split a parent branch page.

8 years agoITS#8259 fix usage ordering
Howard Chu [Wed, 30 Sep 2015 17:11:20 +0000 (18:11 +0100)]
ITS#8259 fix usage ordering

8 years agoITS#8221 fix typos
Howard Chu [Tue, 29 Sep 2015 16:31:56 +0000 (17:31 +0100)]
ITS#8221 fix typos

8 years agoITS#8221, #8256
Howard Chu [Sun, 27 Sep 2015 21:37:28 +0000 (22:37 +0100)]
ITS#8221, #8256

8 years agoITS#8221 don't merge branch pages needlessly
Howard Chu [Sat, 26 Sep 2015 15:50:28 +0000 (16:50 +0100)]
ITS#8221 don't merge branch pages needlessly

8 years agoITS#8256 Create install directories if needed
Luke Yeager [Sat, 19 Sep 2015 01:06:43 +0000 (18:06 -0700)]
ITS#8256 Create install directories if needed

8 years agoITS#7377, 8237
Howard Chu [Sat, 12 Sep 2015 22:08:14 +0000 (23:08 +0100)]
ITS#7377, 8237

8 years agoITS#8237 fix ITS#7589 regression
Howard Chu [Sun, 6 Sep 2015 18:18:19 +0000 (19:18 +0100)]
ITS#8237 fix ITS#7589 regression

8 years agoITS#7377 mdb_env_init_meta(): Catch calloc error
Hallvard Furuseth [Sun, 23 Aug 2015 09:12:45 +0000 (11:12 +0200)]
ITS#7377 mdb_env_init_meta(): Catch calloc error

8 years agoDoc tweak - MDB_RESERVE / DUPSORT incompat
Howard Chu [Sat, 22 Aug 2015 13:00:12 +0000 (14:00 +0100)]
Doc tweak - MDB_RESERVE / DUPSORT incompat

For those people who insist on ignoring the obvious.

8 years agoReturn to release engineering
Howard Chu [Fri, 21 Aug 2015 20:42:25 +0000 (21:42 +0100)]
Return to release engineering

8 years agoAnother MDB_APPEND doc tweak
Howard Chu [Fri, 21 Aug 2015 20:40:33 +0000 (21:40 +0100)]
Another MDB_APPEND doc tweak

Missed this in 7ce29b9edbdaf34b7aeb545324008ed4dff62952

8 years agoRelease 0.9.16 LMDB_0.9.16
Howard Chu [Fri, 14 Aug 2015 00:00:38 +0000 (01:00 +0100)]
Release 0.9.16

8 years agoITS#8192 fix reference to EINTR on WIN32 from ITS#8106
Howard Chu [Wed, 29 Jul 2015 19:01:34 +0000 (20:01 +0100)]
ITS#8192 fix reference to EINTR on WIN32 from ITS#8106

8 years agoUpdated for ITS#8181, #8190, #8200
Howard Chu [Tue, 28 Jul 2015 14:20:43 +0000 (15:20 +0100)]
Updated for ITS#8181, #8190, #8200

8 years agoITS#8200 Fix mdb_midl_shrink() usage, return void
Hallvard Furuseth [Sun, 19 Jul 2015 19:18:31 +0000 (21:18 +0200)]
ITS#8200 Fix mdb_midl_shrink() usage, return void

8 years agoITS#8181 Verify that records are/aren't DBs.
Hallvard Furuseth [Sat, 11 Jul 2015 19:01:40 +0000 (21:01 +0200)]
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.

8 years agoITS#8190 fix cursor EOF bug
Howard Chu [Tue, 7 Jul 2015 12:41:32 +0000 (13:41 +0100)]
ITS#8190 fix cursor EOF bug

8 years agoReturn to Release Engineering
Howard Chu [Thu, 2 Jul 2015 17:04:25 +0000 (18:04 +0100)]
Return to Release Engineering

8 years agoRelease 0.9.15 LMDB_0.9.15
Howard Chu [Fri, 19 Jun 2015 13:10:32 +0000 (14:10 +0100)]
Release 0.9.15

8 years agoUpdate for mdb_env_open
Hallvard Furuseth [Tue, 2 Jun 2015 19:07:33 +0000 (21:07 +0200)]
Update for mdb_env_open

8 years agoClarify mdb_env_open() doc of 'mode' param
Hallvard Furuseth [Tue, 2 Jun 2015 18:49:33 +0000 (20:49 +0200)]
Clarify mdb_env_open() doc of 'mode' param

8 years agomore CHANGES
Hallvard Furuseth [Fri, 29 May 2015 01:08:32 +0000 (03:08 +0200)]
more CHANGES

8 years agoITS#8156
Hallvard Furuseth [Thu, 28 May 2015 19:13:24 +0000 (21:13 +0200)]
ITS#8156

8 years agoITS#8156 Fix MDB_MAXKEYSIZE doc
Hallvard Furuseth [Thu, 28 May 2015 18:51:24 +0000 (20:51 +0200)]
ITS#8156 Fix MDB_MAXKEYSIZE doc

8 years agoITS#8157
Hallvard Furuseth [Wed, 27 May 2015 22:12:53 +0000 (00:12 +0200)]
ITS#8157

8 years agoITS#8157 mdb_txn_renew0(): init after error checks
Hallvard Furuseth [Wed, 27 May 2015 20:26:54 +0000 (22:26 +0200)]
ITS#8157 mdb_txn_renew0(): init after error checks

8 years agomtest*.c: Fix MDB_NOOVERWRITE, plug cursor leak
Hallvard Furuseth [Wed, 20 May 2015 01:17:47 +0000 (03:17 +0200)]
mtest*.c: Fix MDB_NOOVERWRITE, plug cursor leak

8 years agoITS#8117 Fix MDB_INTEGERDUP keysize doc + md_dcmp
Hallvard Furuseth [Tue, 19 May 2015 18:33:35 +0000 (20:33 +0200)]
ITS#8117 Fix MDB_INTEGERDUP keysize doc + md_dcmp

9 years agoITS#8117 better fix
Howard Chu [Sun, 3 May 2015 06:52:47 +0000 (07:52 +0100)]
ITS#8117 better fix

Don't change mc_dbx because we would need to undo the change if
the txn aborts. Make the fix (for get) match existing code for put.

9 years agoRevert "ITS#8117 cleanup prev commit"
Howard Chu [Sun, 3 May 2015 06:43:11 +0000 (07:43 +0100)]
Revert "ITS#8117 cleanup prev commit"

This reverts commit 47c4e747a0ce58f9ecfb5b9615f4c2b6d0753024.

Revert "ITS#8117 fix INTEGERDUP compare"

This reverts commit ba45e0c05aee867ac1d8240eeb013d37487bb146.

9 years agoITS#8117
Howard Chu [Wed, 29 Apr 2015 16:25:42 +0000 (17:25 +0100)]
ITS#8117

9 years agoITS#8117 cleanup prev commit
Howard Chu [Wed, 29 Apr 2015 16:28:21 +0000 (17:28 +0100)]
ITS#8117 cleanup prev commit

9 years agoITS#8117 fix INTEGERDUP compare
Howard Chu [Wed, 29 Apr 2015 16:12:40 +0000 (17:12 +0100)]
ITS#8117 fix INTEGERDUP compare

9 years agoITS#8109
Howard Chu [Thu, 23 Apr 2015 04:52:13 +0000 (05:52 +0100)]
ITS#8109

9 years agoITS#8109 fix mdb_cursor_del0 on empty DB
Howard Chu [Thu, 23 Apr 2015 04:49:56 +0000 (05:49 +0100)]
ITS#8109 fix mdb_cursor_del0 on empty DB

9 years agoITS#8106
Howard Chu [Thu, 23 Apr 2015 02:27:33 +0000 (03:27 +0100)]
ITS#8106

9 years agoITS#8106 retry writes on EINTR
Howard Chu [Fri, 17 Apr 2015 17:32:54 +0000 (18:32 +0100)]
ITS#8106 retry writes on EINTR