Commit Graph

21383 Commits

Author SHA1 Message Date
Howard Chu
3102cbbd55 ITS#7859 more for revert 2014-07-11 12:38:16 -07:00
Howard Chu
189f312d64 ITS#7859 refix
This was actually broken by 65e163d2, ITS#6947. Reverting both
of those changes and fixing #6947 again.
2014-07-11 12:29:15 -07:00
Quanah Gibson-Mount
eb5faf5928 Merge remote-tracking branch 'origin/mdb.master' 2014-07-10 13:38:10 -05:00
Howard Chu
886ee41d55 More for cursor EOF
Must also set in sub-cursor if deleting entire subDB
2014-07-09 15:03:54 -07:00
Howard Chu
1f168a0b8f ITS#7893 (#6508) fix a_numvals 2014-07-09 13:07:53 -07:00
Howard Chu
7f038d0f15 Zero-init copy2 writebuf 2014-07-09 12:05:37 -07:00
Howard Chu
b9abbdf623 Add missing mdb_strerror calls to debug msgs 2014-07-09 11:21:41 -07:00
Hallvard Furuseth
2825ad64c2 MDB_MAXKEYSIZE = 0 (dynamic value) when MDB_DEVEL 2014-07-09 20:18:08 +02:00
Hallvard Furuseth
b3dedde612 MDB_DEVEL doxygen fix 2014-07-09 20:17:13 +02:00
Hallvard Furuseth
02285aca58 ITS#7789 Fix resize vs MDB_NOMETASYNC, and a comment. 2014-07-09 20:16:33 +02:00
Howard Chu
bda6a60ad4 Windows fixes
Always set the filesize when opening for writes. Otherwise
can't use backups from mdb_copy.
2014-07-09 10:22:25 -07:00
Howard Chu
f3573a7383 Windows compat
We mainly use Win32 functions, so cannot just use C-runtime strerror
to return error messages. We have to use Win32-specific messages.
Unfortunately, we document the API to return C-runtime error codes,
so we can't just switch to all Win32 error codes.
2014-07-09 10:02:21 -07:00
Howard Chu
c4d0f90fce Fix loading of printable dump
Off-by-one in end check, would complain on valid input.
2014-07-09 09:16:03 -07:00
Howard Chu
38e71c68de ITS#7789 more
persist size changes from env_open() as well. This was the
original behavior.
2014-07-09 06:54:32 -07:00
Howard Chu
a5e4eecb1e Revert "ITS#7789 update RESIZED errmsg text"
This reverts commit d8e18551c3.
And partially reverts mapsize check. Only mapsize increases are relevant.
2014-07-09 06:19:06 -07:00
Howard Chu
d5371347e8 ITS#7825 more
Set read txn's dbiseqs to env's. Set child txn's dbiseqs to parent's.
Simplify DBI_CHANGED test, no need to check md_name. No-op dbi_close
of already closed handle.
2014-07-09 05:55:30 -07:00
Howard Chu
e0273020bd Updates #7789, #7825 2014-07-08 21:40:11 -07:00
Howard Chu
276aa55969 ITS#7825 more
only update dbiseq in dbi_open on write txns
2014-07-08 21:31:48 -07:00
Howard Chu
04851e442f ITS#7825 tweak prev commit
dbiseqs are only checked in write txns so omit from read txns
2014-07-08 21:22:07 -07:00
Howard Chu
0401f2deed ITS#7825 add MDB_BAD_DBI error code
Use DBI sequence numbers to detect DBIs being closed while in use.
2014-07-08 21:02:40 -07:00
Howard Chu
d8e18551c3 ITS#7789 update RESIZED errmsg text 2014-07-08 20:05:31 -07:00
Howard Chu
5926e54bba ITS#7789 persist mapsize changes
Write decreases too, not just increases. Check for any size change
that was not requested by this process.
2014-07-08 19:18:02 -07:00
Ondrej Kuznik
01f698bce9 ITS#7256 A few issues discovered during testing slapmodify.
- bdb deallocates cursor after some tool operations but expects it to be
  around every time it is called
- mdb tries to allocate a second transaction while it already holds one,
  deadlocking
- op->o_hdr must exist for most uses of op, but o_tmpmfuncs need not
- what about indexing after a tool modify? Does it happen automatically?
2014-07-08 17:28:12 -07:00
Ondrej Kuznik
d3a5ab824d ITS#7256 Consolidate cleanup code at one location. 2014-07-08 17:28:12 -07:00
Ondrej Kuznik
07c563b8a5 ITS#7256 Rework entry retrieval and cleanup.
When doing deletes, lastmod has no entry to work on.
2014-07-08 17:28:11 -07:00
Ondrej Kuznik
fde1f80aa8 ITS#7256 Add some necessary checks. 2014-07-08 17:28:10 -07:00
Ondrej Kuznik
304c0cbbff ITS#7256 Set backend for operation.
slap_tool_entry_check does it but it is not called every time.
2014-07-08 17:28:09 -07:00
Ondrej Kuznik
7810dccdff ITS#7256 Let slapmodify ignore unknown operations
ldapmodify already does the same.
2014-07-08 17:28:07 -07:00
Ondrej Kuznik
cede821cef ITS#7256 Allow deletes with slapmodify 2014-07-08 17:28:06 -07:00
Ondrej Kuznik
f05602927d ITS#7256 mplement bi_tool_entry_delete for back-ldif 2014-07-08 17:28:04 -07:00
Ondrej Kuznik
c048b7cad6 ITS#7256 Introduce bi_tool_entry_delete 2014-07-08 17:26:05 -07:00
Ondrej Kuznik
90d7574066 ITS#7256 Temporarily disable slapmodify checks 2014-07-08 17:25:58 -07:00
Ondrej Kuznik
17e223b896 ITS#7212 rudimentary slapmodify support for back-config 2014-07-08 17:25:58 -07:00
Ondrej Kuznik
5ee5251fa4 ITS#7212 slapmodify support for back-ldif 2014-07-08 17:25:58 -07:00
Ondrej Kuznik
1c2b5e3c0c ITS#7256 Introduce slapmodify test 2014-07-08 17:25:50 -07:00
Howard Chu
604256ceff Update LMDB version date/info 2014-07-08 16:37:28 -07:00
Howard Chu
2f04728471 ITS#7892 Fix MacOSX section name 2014-07-08 16:27:03 -07:00
Quanah Gibson-Mount
bfd8b3a42a Merge remote-tracking branch 'origin/mdb.master' 2014-07-08 17:21:10 -05:00
Hallvard Furuseth
e1a676eb18 ITS#7713 cleanups
'#ifdef MDB_DEVEL' -> '#if MDB_DEVEL'
Fix comments, use actual PAGEBASE macro as originally intended.
Actually enable 64K pages. Set MDB_DATA_VERSION for testing only.
2014-07-08 15:01:18 -07:00
Hallvard Furuseth
6ed295b256 Fixes for loose pages
mdb_txn_commit(child): Give loose pages to parent.
Use a pointer beyond the page header instead of mp_next, so
we will not need to save/restore mp_pgno. This avoids a crash
caused by references to mp_pgno.
2014-07-08 14:39:57 -07:00
Howard Chu
b3e8c71dc7 Re-fix cursor EOF
Fix in 534dcc7212 was in wrong place
2014-07-08 11:54:24 -07:00
Howard Chu
68e6faad5c ITS#7713 handle 65536 byte page size
Fix mp_lower/mp_upper to exclude PAGEHDRSZ, which means our
max mp_upper is now pagesize - PAGEHDRSZ and won't overflow.
Currently must define MDB_DEVEL to use. Will be default for
LMDB 1.0/OpenLDAP 2.5
2014-07-07 17:31:15 -07:00
Howard Chu
534dcc7212 Set xcursor EOF after deleting last entry 2014-07-07 17:13:51 -07:00
Howard Chu
1ac5147fc1 Compacting copy doesn't need to snapshot metas 2014-07-06 17:47:25 -07:00
Howard Chu
61f7ec9bfa Windows fixes 2014-07-06 07:49:38 -07:00
Howard Chu
7d996d7f3d Play games with object file layout
Use gcc section attribute to keep less frequently used functions
away from main code.
2014-07-05 08:48:47 -07:00
Howard Chu
3e98addbe2 Rationalize mdb_env_copy2 API 2014-07-05 07:49:10 -07:00
Howard Chu
059b357d1a More tweaks to copyfd2
Make sure the writer thread starts and stops when we expect it to.
2014-07-03 14:26:14 -07:00
Howard Chu
03f0ecb001 More copyfd2 tweaks 2014-07-03 10:49:05 -07:00
Howard Chu
6043103c13 Fix envinfo to return fixed map address 2014-07-03 08:31:57 -07:00