]> git.sur5r.net Git - openldap/log
openldap
8 years agoOnly set me_mfd if needed. Drop unused read access.
Hallvard Furuseth [Tue, 27 Sep 2016 05:03:45 +0000 (07:03 +0200)]
Only set me_mfd if needed. Drop unused read access.

8 years agoITS#8505 Clarify fork() caveat, mdb_env_get_fd(), flock->fcntl.
Hallvard Furuseth [Tue, 27 Sep 2016 05:03:42 +0000 (07:03 +0200)]
ITS#8505 Clarify fork() caveat, mdb_env_get_fd(), flock->fcntl.

8 years agoITS#8505 Protect parent from fork()-pthread_exit()
Hallvard Furuseth [Tue, 27 Sep 2016 05:03:40 +0000 (07:03 +0200)]
ITS#8505 Protect parent from fork()-pthread_exit()

8 years agoITS#8505 Set FD_CLOEXEC for me_mfd,env_copy as well
Hallvard Furuseth [Tue, 27 Sep 2016 05:03:38 +0000 (07:03 +0200)]
ITS#8505 Set FD_CLOEXEC for me_mfd,env_copy as well

8 years agoMove opening files to mdb_fopen()
Hallvard Furuseth [Tue, 27 Sep 2016 05:03:34 +0000 (07:03 +0200)]
Move opening files to mdb_fopen()

No change in functionality.

8 years agoFactor filename handling out to mdb_fname_*()
Hallvard Furuseth [Sat, 17 Sep 2016 19:31:04 +0000 (21:31 +0200)]
Factor filename handling out to mdb_fname_*()

No change in functionality, except needs less mallocing.

8 years agoITS#7992 Tighter utf8_to_utf16(), fix errcodes
Hallvard Furuseth [Tue, 6 Sep 2016 16:12:01 +0000 (18:12 +0200)]
ITS#7992 Tighter utf8_to_utf16(), fix errcodes

The 0xFFFD check seems due to misleading MultiByteToWideChar() doc.
Bad UTF-8 gives 0xFFFD in the output string, not the return value.

8 years agoClean up strange fcntl result check
Hallvard Furuseth [Tue, 6 Sep 2016 15:56:13 +0000 (17:56 +0200)]
Clean up strange fcntl result check

...and check !MDB_CLOEXEC in an 'if' rather than '#if'
to match its non-zero usage.

8 years agoDrop spurious Errcode() call
Hallvard Furuseth [Tue, 6 Sep 2016 15:48:31 +0000 (17:48 +0200)]
Drop spurious Errcode() call

8 years agoITS#7682 F_NOCACHE: Allow error, skip any O_DIRECT
Hallvard Furuseth [Tue, 6 Sep 2016 15:41:02 +0000 (17:41 +0200)]
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.

8 years agoSilence warning for initializer "mdb_copy my = {0}"
Hallvard Furuseth [Sat, 3 Sep 2016 07:41:30 +0000 (09:41 +0200)]
Silence warning for initializer "mdb_copy my = {0}"

1st struct member was not a scalar.

8 years agoITS#8489 reset cursor EOF flag in cursor_set
Howard Chu [Wed, 31 Aug 2016 23:41:35 +0000 (00:41 +0100)]
ITS#8489 reset cursor EOF flag in cursor_set

It usually gets done anyway, but one of the fastpath shortcuts
bypassed this step.

8 years agoClean up MDB_USE_ROBUST #defines
Hallvard Furuseth [Sun, 21 Aug 2016 21:22:18 +0000 (23:22 +0200)]
Clean up MDB_USE_ROBUST #defines

Make explicit and default nonzero equivalent. Parenthesize.

8 years agoFix mdb_page_list() message
Hallvard Furuseth [Sun, 21 Aug 2016 21:20:22 +0000 (23:20 +0200)]
Fix mdb_page_list() message

8 years agoITS#8481 make shared lib suffix overridable
Howard Chu [Fri, 19 Aug 2016 16:24:25 +0000 (17:24 +0100)]
ITS#8481 make shared lib suffix overridable

8 years agoMDB_VL32 plug rpage leak
Howard Chu [Thu, 11 Aug 2016 20:30:56 +0000 (21:30 +0100)]
MDB_VL32 plug rpage leak

mdb_cursor_set wasn't unref'ing as intended.

8 years agoComment MDB_page
Hallvard Furuseth [Tue, 2 Aug 2016 20:17:54 +0000 (22:17 +0200)]
Comment MDB_page

8 years agoDoc fixes: VALID_FLAGS, mm_last_pg, mt_loose_count
Hallvard Furuseth [Tue, 2 Aug 2016 20:16:09 +0000 (22:16 +0200)]
Doc fixes: VALID_FLAGS, mm_last_pg, mt_loose_count

8 years agomdb_size comments
Hallvard Furuseth [Tue, 2 Aug 2016 19:04:17 +0000 (21:04 +0200)]
mdb_size comments

8 years agoMDB_VL32: Switch to mdb_size_t formats PRIu64 & co
Hallvard Furuseth [Tue, 2 Aug 2016 19:02:35 +0000 (21:02 +0200)]
MDB_VL32: Switch to mdb_size_t formats PRIu64 & co

Drop macro Y=MDB_FMT_Y, add Yu/Yd=MDB_PRIy(). Replace
Y"d..." -> Yd"...", Y"u..." -> Yu"..." / MDB_SCNy(u)"...".

8 years agoRefactor mdb_page_get()
Hallvard Furuseth [Sat, 23 Jul 2016 10:45:46 +0000 (12:45 +0200)]
Refactor mdb_page_get()

8 years agoMDB_VL32: Match mdb_size_t type with format modifier.
Hallvard Furuseth [Sat, 23 Jul 2016 10:43:16 +0000 (12:43 +0200)]
MDB_VL32: Match mdb_size_t type with format modifier.

When using format modifier "ll" or "I64", use the matching
type unsigned <long long / __int64> rather than uint64_t.

8 years agoFix MDB_INTEGERKEY doc of integer types
Hallvard Furuseth [Sat, 23 Jul 2016 10:18:01 +0000 (12:18 +0200)]
Fix MDB_INTEGERKEY doc of integer types

8 years agoUse mdb_size_t for line numbers in mdb_load
Hallvard Furuseth [Sat, 23 Jul 2016 10:17:04 +0000 (12:17 +0200)]
Use mdb_size_t for line numbers in mdb_load

This matches the mdb_size_t entry counts.

8 years agoFix size_t/formats -> mdb_size_t for MDB_VL32
Hallvard Furuseth [Sat, 23 Jul 2016 10:16:20 +0000 (12:16 +0200)]
Fix size_t/formats -> mdb_size_t for MDB_VL32

8 years agoFactor some MDB_VL32-related '#if's out to macros
Hallvard Furuseth [Sat, 23 Jul 2016 10:11:34 +0000 (12:11 +0200)]
Factor some MDB_VL32-related '#if's out to macros

Add MC_OVPG() + MC_SET_OVPG(), NEED_CMP_CLONG(), MDB_CURSOR_UNREF().

8 years agoFactor out MDB_SIZE_MAX, MDB_FMT_Y, MDB_FMT_Z
Hallvard Furuseth [Sat, 23 Jul 2016 10:08:12 +0000 (12:08 +0200)]
Factor out MDB_SIZE_MAX, MDB_FMT_Y, MDB_FMT_Z

8 years agoAdd error MDB_PROBLEM, replace some MDB_CORRUPTED
Hallvard Furuseth [Thu, 14 Jul 2016 03:53:21 +0000 (05:53 +0200)]
Add error MDB_PROBLEM, replace some MDB_CORRUPTED

When problem is most likely in txn, not on disk.

8 years agoITS#8209 Tweak previous fixes
Hallvard Furuseth [Wed, 29 Jun 2016 04:25:37 +0000 (06:25 +0200)]
ITS#8209 Tweak previous fixes

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

8 years agoITS#8209 MDB_CP_COMPACT: Handle empty or broken DB
Hallvard Furuseth [Sat, 25 Jun 2016 05:57:04 +0000 (07:57 +0200)]
ITS#8209 MDB_CP_COMPACT: Handle empty or broken DB

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

8 years agoITS#8209 MDB_CP_COMPACT fixes
Hallvard Furuseth [Sat, 25 Jun 2016 05:55:34 +0000 (07:55 +0200)]
ITS#8209 MDB_CP_COMPACT fixes

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.

8 years agomdb_env_setup_locks: Plug mutexattr leak on error
Hallvard Furuseth [Sun, 5 Jun 2016 21:42:44 +0000 (23:42 +0200)]
mdb_env_setup_locks: Plug mutexattr leak on error

8 years agoInit "locked" flag for SysV semaphores
Hallvard Furuseth [Fri, 3 Jun 2016 04:11:54 +0000 (06:11 +0200)]
Init "locked" flag for SysV semaphores

8 years agoITS#8339 Solaris 10/11 robust mutex fixes
Howard Chu [Thu, 2 Jun 2016 20:01:27 +0000 (21:01 +0100)]
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.

8 years agoITS#8424 init cursor in mdb_env_cwalk
Howard Chu [Sat, 14 May 2016 23:44:54 +0000 (00:44 +0100)]
ITS#8424 init cursor in mdb_env_cwalk

8 years agoComment ovpage code in mdb_cursor_put()
Hallvard Furuseth [Tue, 10 May 2016 05:11:44 +0000 (07:11 +0200)]
Comment ovpage code in mdb_cursor_put()

8 years agoITS#8412 fix NEXT_DUP after cursor_del
Howard Chu [Tue, 26 Apr 2016 11:52:21 +0000 (12:52 +0100)]
ITS#8412 fix NEXT_DUP after cursor_del

8 years agoITS#8406 fix xcursors after cursor_del
Howard Chu [Mon, 18 Apr 2016 17:07:56 +0000 (18:07 +0100)]
ITS#8406 fix xcursors after cursor_del

Don't leave them uninit'd if they now point at a valid DUP node

8 years agomdb_drop optimization
Howard Chu [Sat, 9 Apr 2016 19:42:45 +0000 (20:42 +0100)]
mdb_drop optimization

If we know there are no sub-DBs and no overflow pages, skip leaf scan.

8 years agoITS#8393 fix MDB_GET_BOTH on non-dup record
Howard Chu [Mon, 28 Mar 2016 00:35:56 +0000 (01:35 +0100)]
ITS#8393 fix MDB_GET_BOTH on non-dup record

8 years agoMDB_VL32 - increase max write txn size
Howard Chu [Wed, 17 Feb 2016 17:27:50 +0000 (17:27 +0000)]
MDB_VL32 - increase max write txn size

8 years agoTweak MDB_PREV_MULTIPLE for uninit'd cursor
Howard Chu [Tue, 16 Feb 2016 23:34:27 +0000 (23:34 +0000)]
Tweak MDB_PREV_MULTIPLE for uninit'd cursor

8 years agoTweak Win32 errmsg buffer
Howard Chu [Mon, 15 Feb 2016 00:07:04 +0000 (00:07 +0000)]
Tweak Win32 errmsg buffer

8 years agoITS#8324 Map NTAPI result codes to WIN32 codes
Howard Chu [Sun, 14 Feb 2016 23:53:05 +0000 (23:53 +0000)]
ITS#8324 Map NTAPI result codes to WIN32 codes

8 years agoITS#7992 Fix memleak in prev change
Hallvard Furuseth [Thu, 4 Feb 2016 02:23:13 +0000 (03:23 +0100)]
ITS#7992 Fix memleak in prev change

8 years agoHappy New Year
Howard Chu [Sat, 30 Jan 2016 12:54:32 +0000 (12:54 +0000)]
Happy New Year

8 years agoFix MDB_VL32 mdb_cursor_count()/entrycount types
Hallvard Furuseth [Thu, 28 Jan 2016 18:45:01 +0000 (19:45 +0100)]
Fix MDB_VL32 mdb_cursor_count()/entrycount types

8 years agoMDB_VL32 change overflow page scan
Howard Chu [Thu, 28 Jan 2016 14:23:02 +0000 (14:23 +0000)]
MDB_VL32 change overflow page scan

Just check the requested page, don't worry about any other pages

8 years agoITS#8363 Fix off-by-one in mdb_midl_shrink
Howard Chu [Thu, 28 Jan 2016 04:18:14 +0000 (04:18 +0000)]
ITS#8363 Fix off-by-one in mdb_midl_shrink

8 years agoMDB_VL32 more for 1ba5adb2ec262405f9207d6015d4f29eea548d25
Howard Chu [Wed, 27 Jan 2016 11:48:22 +0000 (11:48 +0000)]
MDB_VL32 more for 1ba5adb2ec262405f9207d6015d4f29eea548d25

fix 32bit overflow in set_mapsize

8 years agoITS#8324 fix a6ccef73ed288271f9b5871909d14a2e481c81ae
Howard Chu [Tue, 26 Jan 2016 22:13:01 +0000 (22:13 +0000)]
ITS#8324 fix a6ccef73ed288271f9b5871909d14a2e481c81ae

Removing the WRITEMAP test dropped this into the MDB_VL32 code path,
which was wrong.

8 years agoITS#8355 fix subcursors
Howard Chu [Sun, 24 Jan 2016 11:32:49 +0000 (11:32 +0000)]
ITS#8355 fix subcursors

make sure C_DEL gets reset in subcursor after it moves.

8 years agoUpdate WRITEMAP doc
Howard Chu [Sat, 23 Jan 2016 16:51:42 +0000 (16:51 +0000)]
Update WRITEMAP doc

8 years agoWIN64 needs off_t redefined too
Howard Chu [Wed, 20 Jan 2016 01:30:57 +0000 (01:30 +0000)]
WIN64 needs off_t redefined too

8 years agoITS#8324 fix c4e31434c7773ee54f2ffdeb545e5740f56492a1
Howard Chu [Sat, 16 Jan 2016 17:11:36 +0000 (17:11 +0000)]
ITS#8324 fix c4e31434c7773ee54f2ffdeb545e5740f56492a1

Actually, there is no guarantee that Windows will map newly written
data, so we need VirtualAlloc even for non-WRITEMAP.

8 years agolmdb.h Caveats: Reserved vs. actual mem/disk usage
Hallvard Furuseth [Tue, 12 Jan 2016 22:18:06 +0000 (23:18 +0100)]
lmdb.h Caveats: Reserved vs. actual mem/disk usage

8 years agoITS#8346 fix typo in prev commit
Howard Chu [Tue, 12 Jan 2016 07:13:48 +0000 (07:13 +0000)]
ITS#8346 fix typo in prev commit

8 years agoITS#8347 fix off-by-one in VL32 purge
Howard Chu [Mon, 11 Jan 2016 20:25:33 +0000 (20:25 +0000)]
ITS#8347 fix off-by-one in VL32 purge

8 years agoITS#8346 free last txn0->mt_rpages in env_close
Howard Chu [Mon, 11 Jan 2016 20:17:42 +0000 (20:17 +0000)]
ITS#8346 free last txn0->mt_rpages in env_close

8 years agoAdd MDB_PREV_MULTIPLE
Howard Chu [Thu, 7 Jan 2016 18:28:29 +0000 (18:28 +0000)]
Add MDB_PREV_MULTIPLE

Logical counterpart to GET_MULTIPLE, NEXT_MULTIPLE

8 years agoFixups for env_copy with large files
Howard Chu [Sat, 2 Jan 2016 12:19:42 +0000 (12:19 +0000)]
Fixups for env_copy with large files

wsize was being truncated to 32bits on Windows.
Only try to write 1GB at a time on Windows64;
larger writes fail with ERROR_WORKING_SET_QUOTA.

8 years agoMDB_VL32 fix cursor_unref - ignore cursor with empty stack
Howard Chu [Mon, 28 Dec 2015 20:31:09 +0000 (20:31 +0000)]
MDB_VL32 fix cursor_unref - ignore cursor with empty stack

8 years agoITS#8342 MDB_VL32/WIN32 - close file mapping handle in env_close
Howard Chu [Mon, 28 Dec 2015 19:33:51 +0000 (19:33 +0000)]
ITS#8342 MDB_VL32/WIN32 - close file mapping handle in env_close

8 years agoMDB_VL32 tweak prev commit
Howard Chu [Mon, 28 Dec 2015 19:37:42 +0000 (19:37 +0000)]
MDB_VL32 tweak prev commit

8 years agoMDB_VL32 - prevent mixing with non-VL32 builds
Howard Chu [Wed, 23 Dec 2015 23:02:06 +0000 (23:02 +0000)]
MDB_VL32 - prevent mixing with non-VL32 builds

8 years agoMDB_VL32 - Fix me_rpmutex usage
Howard Chu [Tue, 22 Dec 2015 20:24:26 +0000 (20:24 +0000)]
MDB_VL32 - Fix me_rpmutex usage

8 years agoMDB_RESERVE doc
Howard Chu [Tue, 22 Dec 2015 18:30:41 +0000 (18:30 +0000)]
MDB_RESERVE doc

Add mdb_put text to mdb_cursor_put description for people who
fail to draw logical conclusions.

8 years agoMDB_VL32 - fix prev commit
Howard Chu [Tue, 22 Dec 2015 06:13:25 +0000 (06:13 +0000)]
MDB_VL32 - fix prev commit

Only tweak length for read-only envs

8 years agoMDB_VL32 - fix for Win32 read-only envs
Howard Chu [Tue, 22 Dec 2015 05:20:33 +0000 (05:20 +0000)]
MDB_VL32 - fix for Win32 read-only envs

We can't map with MEM_RESERVE because that requires write access
to the underlying file/section. Mapping with the default (MEM_COMMIT)
requires that we don't map past the end of the file.

8 years agoMDB_VL32 - track overflow pages too
Howard Chu [Tue, 22 Dec 2015 04:22:01 +0000 (04:22 +0000)]
MDB_VL32 - track overflow pages too

Otherwise they'll fill up the txn's pageref list when traversing
a DB with lots of overflow records.

8 years agomdb_page_alloc(): Use original snapshot of freeDB.
Hallvard Furuseth [Sun, 23 Aug 2015 20:00:14 +0000 (22:00 +0200)]
mdb_page_alloc(): Use original snapshot of freeDB.

I can't help thinking this should be safer, and useful somewhere.

8 years agoPrep for next commit: C_WRITEMAP, C_ORIG_RDONLY.
Hallvard Furuseth [Sun, 23 Aug 2015 19:10:52 +0000 (21:10 +0200)]
Prep for next commit: C_WRITEMAP, C_ORIG_RDONLY.

No change in behavior.

8 years agoPass cursor to mdb_page_get(), mdb_node_read().
Hallvard Furuseth [Sun, 23 Aug 2015 18:33:02 +0000 (20:33 +0200)]
Pass cursor to mdb_page_get(), mdb_node_read().

No change in behavior.

8 years agoITS#8324 fix for WRITEMAP
Howard Chu [Mon, 21 Dec 2015 02:36:20 +0000 (02:36 +0000)]
ITS#8324 fix for WRITEMAP

We called FlushViewOfFile with (map,mapsize) which worked fine
when we had allocated the entire map already. Now we have to make
sure to only flush as much as was actually written. Add a numpgs
argument to tell how much to flush in env_sync0().

8 years agoNote that we're prepping for 1.0
Howard Chu [Sun, 20 Dec 2015 00:22:13 +0000 (00:22 +0000)]
Note that we're prepping for 1.0

8 years agoMDB_VL32 support 64 bit DBs on 32 bit processors
Howard Chu [Sat, 19 Dec 2015 23:58:39 +0000 (23:58 +0000)]
MDB_VL32 support 64 bit DBs on 32 bit processors

8 years agoMDB_VL32 preparation
Howard Chu [Sat, 19 Dec 2015 23:51:31 +0000 (23:51 +0000)]
MDB_VL32 preparation

Use 64 bit types consistently. This keeps database structures the
same size for MDB_VL32 and native 64 bit builds.

8 years agoFix typos
Howard Chu [Sat, 19 Dec 2015 22:57:00 +0000 (22:57 +0000)]
Fix typos

8 years agoAdd Getting Started doc
Howard Chu [Sat, 19 Dec 2015 22:53:26 +0000 (22:53 +0000)]
Add Getting Started doc

8 years agoITS#7992 cleanup
Howard Chu [Tue, 15 Dec 2015 18:45:34 +0000 (18:45 +0000)]
ITS#7992 cleanup

check for utf8_to_utf16 failures

8 years agomdb_dbi_open(): Catch strdup failure
Hallvard Furuseth [Sat, 12 Dec 2015 18:25:06 +0000 (19:25 +0100)]
mdb_dbi_open(): Catch strdup failure

8 years agoITS#8324 fix for read-only envs
Howard Chu [Tue, 8 Dec 2015 19:35:59 +0000 (19:35 +0000)]
ITS#8324 fix for read-only envs

8 years agoITS#8336 fix page_search_root assert on FreeDB
Howard Chu [Tue, 8 Dec 2015 18:17:24 +0000 (18:17 +0000)]
ITS#8336 fix page_search_root assert on FreeDB

Let "illegal" branch pages thru on the FreeDB - the condition
is only temporary and will be fixed by the time rebalance finishes.

8 years agoITS#8334 Fix MDB_APPENDDUP vs. rewrite(single item)
Hallvard Furuseth [Tue, 8 Dec 2015 15:43:55 +0000 (16:43 +0100)]
ITS#8334 Fix MDB_APPENDDUP vs. rewrite(single item)

8 years agoITS#8324 additional tweaks
Howard Chu [Sun, 6 Dec 2015 20:54:23 +0000 (20:54 +0000)]
ITS#8324 additional tweaks

VirtualAlloc is only needed with WRITEMAP. Regular writes
already extend the mmap implictly.

8 years agoITS#8330 Fix robust mutex detection for glibc 2.10 and 2.11
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

8 years agoITS#8169 more Makefile tweaks
Howard Chu [Tue, 1 Dec 2015 14:10:12 +0000 (14:10 +0000)]
ITS#8169 more Makefile tweaks

Use all the same vars as main OpenLDAP makefiles

8 years agoITS#8169 more for prev patch
Howard Chu [Tue, 1 Dec 2015 13:48:29 +0000 (13:48 +0000)]
ITS#8169 more for prev patch

Missed the mkdir command

8 years agoITS#8324 incremental DB file growth for Windows
Howard Chu [Mon, 30 Nov 2015 18:46:19 +0000 (18:46 +0000)]
ITS#8324 incremental DB file growth for Windows

8 years agoITS#8321 cleanup unused var
Howard Chu [Tue, 24 Nov 2015 20:21:51 +0000 (20:21 +0000)]
ITS#8321 cleanup unused var

from da67af1a4bf1a6d3f5d173d9daf74bb4ec66175a

8 years agoITS#8169 Allow passing mandir to make install
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/.

8 years agoITS#8168 Allow passing AR to make
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.

8 years agoITS#8321 fix ambiguity in cursor_put fixup
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.

8 years agoCleanup C_DEL flag usage
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

8 years agoITS#8321 More cursor fixup
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.

8 years agoITS#8321 page_touch - don't fixup the cursor we just touched
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

8 years agoITS#8321 mdb_put cursor needs tracking too
Howard Chu [Tue, 24 Nov 2015 01:21:05 +0000 (01:21 +0000)]
ITS#8321 mdb_put cursor needs tracking too

8 years agoITS#8321 Fix mdb_cursor_set
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

8 years agoITS#8321 deinit empty cursors
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

8 years agoITS#8323 Fix nested commit
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