]>
git.sur5r.net Git - openldap/log
Howard Chu [Thu, 3 Dec 2015 19:14:11 +0000 (19:14 +0000)]
ITS#8169, #8330
Sebastien Launay [Thu, 3 Dec 2015 18:42:36 +0000 (10:42 -0800)]
ITS#8330 Fix robust mutex detection for glibc 2.10 and 2.11
pthread_mutexattr_setrobust and pthread_mutex_consistent are provided since 2.12 not 2.10:
https://sourceware.org/git/?p=glibc.git;a=commit;h=
402cd98775db1478f64c9b0dbe00664b89eb2773
https://sourceware.org/git/?p=glibc.git;a=commit;h=
78ee21859939ff75ccf8bbe00499b0c462df2e2d
Howard Chu [Tue, 1 Dec 2015 13:48:29 +0000 (13:48 +0000)]
ITS#8169 more Makefile tweaks
Fix prev commit, use all the same vars as main OpenLDAP makefiles
Howard Chu [Thu, 3 Dec 2015 19:08:00 +0000 (19:08 +0000)]
Return to releng
Howard Chu [Mon, 30 Nov 2015 16:55:33 +0000 (16:55 +0000)]
Release 0.9.17
Howard Chu [Tue, 24 Nov 2015 20:21:51 +0000 (20:21 +0000)]
Howard Chu [Tue, 24 Nov 2015 16:08:53 +0000 (16:08 +0000)]
ITS#8168, 8169
Heiko Becker [Thu, 11 Jun 2015 19:09:59 +0000 (21:09 +0200)]
ITS#8169 Allow passing mandir to make install
The motivation for this change is my distribution moving to a multiarch
layout. While the architecture specific stuff (binaries, libraries,
etc.) is installed under /usr/${host}/{bin,lib,...} architecture-independent
data should still be installed to /usr/share/.
Heiko Becker [Thu, 11 Jun 2015 18:44:06 +0000 (20:44 +0200)]
ITS#8168 Allow passing AR to make
This is helpful when the ar executable is named differently, for
example with an arch specific prefix.
Howard Chu [Tue, 24 Nov 2015 16:01:25 +0000 (16:01 +0000)]
ITS#8323
Howard Chu [Tue, 24 Nov 2015 15:09:49 +0000 (15:09 +0000)]
ITS#8321 fix ambiguity in cursor_put fixup
After delete/add of a node, other nodes may no longer be
pointing at the data they intended. This can confuse subsequent
fixups.
Howard Chu [Tue, 24 Nov 2015 12:14:49 +0000 (12:14 +0000)]
Cleanup C_DEL flag usage
Only set it if the cursor's current position was deleted
Howard Chu [Mon, 23 Nov 2015 16:58:57 +0000 (16:58 +0000)]
ITS#8321 More cursor fixup
Based on page_touch fixup from ITS#7594 but expanded:
make sure sub-cursors agree with main cursors.
Howard Chu [Mon, 23 Nov 2015 13:19:26 +0000 (13:19 +0000)]
ITS#8321 page_touch - don't fixup the cursor we just touched
Howard Chu [Tue, 24 Nov 2015 01:21:05 +0000 (01:21 +0000)]
ITS#8321 mdb_put cursor needs tracking too
Howard Chu [Mon, 23 Nov 2015 18:30:24 +0000 (18:30 +0000)]
ITS#8321 Fix mdb_cursor_set
Always reinit mc_pg[0] if cursor is not C_INITIALIZED
It might have a stale value when using nested txns
Howard Chu [Tue, 24 Nov 2015 12:54:46 +0000 (12:54 +0000)]
ITS#8321 deinit empty cursors
Always unset C_INIT flag if the cursor's target DB has been deleted
Howard Chu [Mon, 23 Nov 2015 13:11:29 +0000 (13:11 +0000)]
ITS#8323 Fix nested commit
Must remove our spilled pages from parent's dirty list
Hallvard Furuseth [Mon, 23 Nov 2015 12:03:09 +0000 (13:03 +0100)]
CURSOR_TMP_[UN]TRACK() -> WITH_CURSOR_TRACKING()
Howard Chu [Mon, 23 Nov 2015 02:02:36 +0000 (02:02 +0000)]
ITS#8319, 8320
Orivej Desh [Sun, 22 Nov 2015 01:15:14 +0000 (01:15 +0000)]
ITS#8320 mdb_load: fix loading data from simple text files
mdb_load -T was supposed to read escaped text, but
21b51cb7 "Add mdb_load"
made it read hex.
Orivej Desh [Sun, 22 Nov 2015 00:59:55 +0000 (00:59 +0000)]
ITS#8319 mdb_load: explain readline and mdb_cursor_put errors
Howard Chu [Mon, 23 Nov 2015 01:51:45 +0000 (01:51 +0000)]
ITS#8316, 8321
Howard Chu [Mon, 23 Nov 2015 01:34:26 +0000 (01:34 +0000)]
ITS#8321 reorganize page_split fixups
DUPFIXED fixups needed to occur after separator update.
MDB_RESERVE handling moved after split fixup.
Howard Chu [Mon, 23 Nov 2015 01:33:00 +0000 (01:33 +0000)]
ITS#8321 simplify page_split fixups
Howard Chu [Mon, 23 Nov 2015 01:30:02 +0000 (01:30 +0000)]
ITS#8321 track temporary cursors
In rebalance/split operations, temporary cursors need to be visible
to propagate fixups
Howard Chu [Mon, 23 Nov 2015 01:16:36 +0000 (01:16 +0000)]
ITS#8321 fix mdb_cursor_put
Ignore sub-cursors that shouldn't be fixed up
Howard Chu [Mon, 23 Nov 2015 01:13:16 +0000 (01:13 +0000)]
ITS#8321 fix mdb_cursor_shadow()
Set a valid txn so that cursor fixup code works on the shadows
Howard Chu [Mon, 23 Nov 2015 01:10:05 +0000 (01:10 +0000)]
ITS#8321 fix mdb_cursor_chk()
It was reporting spurious errors due to uninit'd cursors
Howard Chu [Mon, 23 Nov 2015 01:07:57 +0000 (01:07 +0000)]
ITS#8321 don't skip fixups on splitting cursors
Adjustments can't be skipped, in recursive calls each level must
fixup their own level.
Howard Chu [Sun, 22 Nov 2015 22:11:30 +0000 (22:11 +0000)]
ITS#8321 Fix del/dupsort
When deleting a dupsort key, if other cursors pointed at that key,
set them to uninit'd, not EOF. They no longer have anything to
point at.
Howard Chu [Fri, 20 Nov 2015 13:34:11 +0000 (13:34 +0000)]
ITS#8300 more for prev commit
Just tell explicitly which direction we moved/merged from
Howard Chu [Fri, 20 Nov 2015 09:47:56 +0000 (09:47 +0000)]
Silence some valgrind uninit warnings
Howard Chu [Fri, 20 Nov 2015 09:20:16 +0000 (09:20 +0000)]
Oskari Timperi [Fri, 5 Dec 2014 10:56:22 +0000 (12:56 +0200)]
ITS#7992 assume Windows paths are UTF-8
Howard Chu [Thu, 19 Nov 2015 20:04:16 +0000 (20:04 +0000)]
ITS#8316 cursor fixup in page_merge
Deleting the merged page requires bumping down other ki's
of the page's parent.
Howard Chu [Thu, 19 Nov 2015 17:29:42 +0000 (17:29 +0000)]
ITS#8312, 8313, 8315
Howard Chu [Wed, 18 Nov 2015 23:38:34 +0000 (23:38 +0000)]
ITS#8315 fix ovpage_free
Keep dirty_room sync'd with dirty_list
Howard Chu [Wed, 18 Nov 2015 21:33:51 +0000 (21:33 +0000)]
ITS#8313 more for ITS#8062
dummy flags must be init'd due to
3d46d550
Hallvard Furuseth [Wed, 18 Nov 2015 15:30:24 +0000 (16:30 +0100)]
ITS#8312 Fix loose pages in commit(nested txn)
Howard Chu [Wed, 18 Nov 2015 10:27:50 +0000 (10:27 +0000)]
ITS#8311
Howard Chu [Wed, 18 Nov 2015 10:24:41 +0000 (10:24 +0000)]
ITS#8311 add comment
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.
Hallvard Furuseth [Tue, 17 Nov 2015 17:49:31 +0000 (18:49 +0100)]
ITS#7209
Hallvard Furuseth [Tue, 17 Nov 2015 17:22:25 +0000 (18:22 +0100)]
ITS#7209 Default MDB_DSYNC = O_SYNC if no O_DSYNC
Howard Chu [Fri, 13 Nov 2015 09:28:36 +0000 (09:28 +0000)]
ITS#8310
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
Howard Chu [Wed, 11 Nov 2015 00:02:06 +0000 (00:02 +0000)]
Tweak robust mutex detection for glibc
Howard Chu [Mon, 9 Nov 2015 20:11:10 +0000 (20:11 +0000)]
ITS#8304
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
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.
Howard Chu [Wed, 4 Nov 2015 22:45:38 +0000 (22:45 +0000)]
ITS#8300 simplify
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.
Howard Chu [Wed, 4 Nov 2015 21:03:22 +0000 (21:03 +0000)]
ITS#8300
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.
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.)
Howard Chu [Wed, 4 Nov 2015 18:17:50 +0000 (18:17 +0000)]
ITS#8238, #8299
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
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.
Howard Chu [Sat, 31 Oct 2015 02:27:31 +0000 (02:27 +0000)]
Use MDB_USE_ROBUST not MDB_NO_ROBUST
Howard Chu [Sat, 31 Oct 2015 02:11:47 +0000 (02:11 +0000)]
Add MDB_NO_ROBUST to disable Robust Mutexes
Howard Chu [Mon, 26 Oct 2015 20:18:19 +0000 (20:18 +0000)]
More misc updates
Hallvard Furuseth [Thu, 1 Oct 2015 17:43:58 +0000 (19:43 +0200)]
Fix typo in mdb_tassert().
No effect on current code.
Pavel Medvedev [Wed, 19 Aug 2015 16:19:48 +0000 (17:19 +0100)]
ITS#8069 char* strings on Windows are ASCII
Pavel Medvedev [Wed, 19 Aug 2015 15:39:08 +0000 (16:39 +0100)]
ITS#8067 add ssize_t typedef for MSVC
Hallvard Furuseth [Sun, 26 Jul 2015 05:20:19 +0000 (07:20 +0200)]
Simpler mdb_env_write_meta()
Hallvard Furuseth [Sun, 26 Jul 2015 05:16:41 +0000 (07:16 +0200)]
Kill magic numbers for NUM_METAS, databases
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.
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.
Hallvard Furuseth [Sun, 19 Jul 2015 19:31:54 +0000 (21:31 +0200)]
Cleanup: Drop !mt_dbxs hack, use MDB_TXN_FINISHED
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.
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).
Hallvard Furuseth [Sat, 11 Jul 2015 19:10:33 +0000 (21:10 +0200)]
Factor me_metas[toggle] out to mdb_env_pick_meta()
Hallvard Furuseth [Sat, 11 Jul 2015 19:09:36 +0000 (21:09 +0200)]
Simpler mdb_node_add()
Hallvard Furuseth [Sat, 4 Jul 2015 11:50:21 +0000 (13:50 +0200)]
More ESECT declarations
Hallvard Furuseth [Sat, 4 Jul 2015 11:49:12 +0000 (13:49 +0200)]
Add DB_USRVALID, to avoid 'dbi == FREE_DBI' tests
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:07 +0000 (13:48 +0200)]
Simpler flag/DBI checks and MDB_DEBUG
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:06 +0000 (13:48 +0200)]
Simpler mdb_drop().
MDB_DBI_CHANGED(,MAIN_DBI) is never true.
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:05 +0000 (13:48 +0200)]
Simpler mdb_node_shrink()
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.
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:03 +0000 (13:48 +0200)]
mdb_txn_begin() cleanup
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:02 +0000 (13:48 +0200)]
mdb_drop0(): Omit scanning DUPSORT sub-DB leaves
Hallvard Furuseth [Sat, 4 Jul 2015 11:48:01 +0000 (13:48 +0200)]
Use mdb_cmp_long() for FREE_DBI
Hallvard Furuseth [Sat, 4 Jul 2015 11:42:41 +0000 (13:42 +0200)]
mdb_env_get_flags(): Hide internal flags
Hallvard Furuseth [Fri, 3 Jul 2015 21:07:30 +0000 (23:07 +0200)]
Support robust mutexes/locks. Add mdb_mutex_t etc.
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.
Hallvard Furuseth [Fri, 3 Jul 2015 21:02:12 +0000 (23:02 +0200)]
Whitespace (align with mdb.master)
leo@yuriev.ru [Fri, 3 Jul 2015 21:01:00 +0000 (23:01 +0200)]
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().
Hallvard Furuseth [Wed, 8 Apr 2015 19:52:05 +0000 (21:52 +0200)]
Cleanup MDB_env.me_txn0.
More fallout from
4d02c741b120786df1b87ee9ed49c1d3f9bc7522 .
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...).
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.
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.
Hallvard Furuseth [Mon, 8 Dec 2014 08:56:36 +0000 (09:56 +0100)]
Try to avoid an invalid datafile after failed init
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.
Howard Chu [Sun, 25 Oct 2015 08:13:25 +0000 (08:13 +0000)]
ITS#8263, 8264, 7771, 8270
Ignacio Casal Quinteiro [Thu, 15 Oct 2015 20:22:25 +0000 (13:22 -0700)]
ITS#8270 win32: fix conversion error with MSVC
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.
Hallvard Furuseth [Sun, 11 Oct 2015 20:40:49 +0000 (21:40 +0100)]
ITS#8263 streamline prev patch
Howard Chu [Wed, 7 Oct 2015 05:30:58 +0000 (06:30 +0100)]
ITS#8263 fix cursor tracking in cursor_put