Hallvard Furuseth
|
72f875b48a
|
Note functions which must set MDB_TXN_ERROR on failure
Other functions depend on them to do so.
For mdb_node_read(), instead remove such a dependence.
|
8 years ago |
Hallvard Furuseth
|
08e4684d37
|
MDB_VL32 mdb_page_get(): Set MDB_TXN_ERROR on failure.
|
8 years ago |
Hallvard Furuseth
|
a70200f15f
|
Fix mdb_env_open() with MDB_VL32
Init me_rpmutex independently of MDB_NOLOCK.
Plug leaks on mdb_env_open() failure.
Tweak mdb_env_close0() to handle the rearranged mdb_env_open().
|
8 years ago |
Hallvard Furuseth
|
f3ab0d23a4
|
Factor out refreshing sub-page pointers
|
8 years ago |
Howard Chu
|
fa83b25ec5
|
More for ITS#8406
xcursor fixup depends on init state
|
8 years ago |
Howard Chu
|
e58db7d556
|
More for ITS#8406
Revert excess cursor fixup
|
8 years ago |
Hallvard Furuseth
|
f7e85d7804
|
Only set me_mfd if needed. Drop unused read access.
|
8 years ago |
Hallvard Furuseth
|
6355dade31
|
ITS#8505 Protect parent from fork()-pthread_exit()
|
8 years ago |
Hallvard Furuseth
|
04acac634a
|
ITS#8505 Set FD_CLOEXEC for me_mfd,env_copy as well
|
8 years ago |
Hallvard Furuseth
|
15666878af
|
Move opening files to mdb_fopen()
No change in functionality.
|
8 years ago |
Hallvard Furuseth
|
cdc3f9cc2d
|
Factor filename handling out to mdb_fname_*()
No change in functionality, except needs less mallocing.
|
8 years ago |
Hallvard Furuseth
|
67fb3c746a
|
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 ago |
Hallvard Furuseth
|
d87ee20e0b
|
Clean up strange fcntl result check
...and check !MDB_CLOEXEC in an 'if' rather than '#if'
to match its non-zero usage.
|
8 years ago |
Hallvard Furuseth
|
3dd2d207d7
|
Drop spurious Errcode() call
|
8 years ago |
Hallvard Furuseth
|
cdcf9da600
|
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 ago |
Hallvard Furuseth
|
26e226b2a8
|
Silence warning for initializer "mdb_copy my = {0}"
1st struct member was not a scalar.
|
8 years ago |
Howard Chu
|
45a88275d2
|
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 ago |
Hallvard Furuseth
|
da4443a9b3
|
Clean up MDB_USE_ROBUST #defines
Make explicit and default nonzero equivalent. Parenthesize.
|
8 years ago |
Hallvard Furuseth
|
36d374ba9e
|
Fix mdb_page_list() message
|
8 years ago |
Howard Chu
|
7e2290c52b
|
MDB_VL32 plug rpage leak
mdb_cursor_set wasn't unref'ing as intended.
|
8 years ago |
Hallvard Furuseth
|
77d522d151
|
Comment MDB_page
|
8 years ago |
Hallvard Furuseth
|
8670805b4f
|
Doc fixes: VALID_FLAGS, mm_last_pg, mt_loose_count
|
8 years ago |
Hallvard Furuseth
|
58b0ce50b3
|
mdb_size comments
|
8 years ago |
Hallvard Furuseth
|
4d47e89f4d
|
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 ago |
Hallvard Furuseth
|
65d9791ada
|
Refactor mdb_page_get()
|
8 years ago |
Hallvard Furuseth
|
f25d716513
|
Fix MDB_INTEGERKEY doc of integer types
|
8 years ago |
Hallvard Furuseth
|
12ad38d67f
|
Fix size_t/formats -> mdb_size_t for MDB_VL32
|
8 years ago |
Hallvard Furuseth
|
dff8bafb36
|
Factor some MDB_VL32-related '#if's out to macros
Add MC_OVPG() + MC_SET_OVPG(), NEED_CMP_CLONG(), MDB_CURSOR_UNREF().
|
8 years ago |
Hallvard Furuseth
|
32764bcb52
|
Factor out MDB_SIZE_MAX, MDB_FMT_Y, MDB_FMT_Z
|
8 years ago |
Hallvard Furuseth
|
84610e65da
|
Add error MDB_PROBLEM, replace some MDB_CORRUPTED
When problem is most likely in txn, not on disk.
|
8 years ago |
Hallvard Furuseth
|
291c69ddbd
|
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.
|
9 years ago |
Hallvard Furuseth
|
5ea12b0be8
|
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.
|
9 years ago |
Hallvard Furuseth
|
eb7bbed967
|
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.
|
9 years ago |
Hallvard Furuseth
|
c4c7833d24
|
mdb_env_setup_locks: Plug mutexattr leak on error
|
9 years ago |
Hallvard Furuseth
|
53a0fdf1be
|
Init "locked" flag for SysV semaphores
|
9 years ago |
Howard Chu
|
c367c1f696
|
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.
|
9 years ago |
Howard Chu
|
b045bce260
|
ITS#8424 init cursor in mdb_env_cwalk
|
9 years ago |
Hallvard Furuseth
|
e2b8b6448d
|
Comment ovpage code in mdb_cursor_put()
|
9 years ago |
Howard Chu
|
a04aad31c2
|
ITS#8412 fix NEXT_DUP after cursor_del
|
9 years ago |
Howard Chu
|
37081325f7
|
ITS#8406 fix xcursors after cursor_del
Don't leave them uninit'd if they now point at a valid DUP node
|
9 years ago |
Howard Chu
|
c8dbd772f7
|
mdb_drop optimization
If we know there are no sub-DBs and no overflow pages, skip leaf scan.
|
9 years ago |
Howard Chu
|
8fff90db7e
|
ITS#8393 fix MDB_GET_BOTH on non-dup record
|
9 years ago |
Howard Chu
|
3f62b727cc
|
Tweak MDB_PREV_MULTIPLE for uninit'd cursor
|
9 years ago |
Howard Chu
|
d909ab2f36
|
Tweak Win32 errmsg buffer
|
9 years ago |
Howard Chu
|
5ef1908224
|
ITS#8324 Map NTAPI result codes to WIN32 codes
|
9 years ago |
Hallvard Furuseth
|
fcac8d0774
|
ITS#7992 Fix memleak in prev change
|
9 years ago |
Howard Chu
|
5f5f4dab9c
|
Happy New Year
|
9 years ago |
Hallvard Furuseth
|
e394e023e4
|
Fix MDB_VL32 mdb_cursor_count()/entrycount types
|
9 years ago |
Howard Chu
|
3f62ddc81c
|
MDB_VL32 change overflow page scan
Just check the requested page, don't worry about any other pages
|
9 years ago |
Howard Chu
|
6f653ca205
|
MDB_VL32 more for 1ba5adb2ec
fix 32bit overflow in set_mapsize
|
9 years ago |