Hallvard Furuseth
f1e07f9d14
Fix typo in mdb_tassert().
...
No effect on current code.
2015-10-25 14:40:27 +01:00
Pavel Medvedev
56adc467a6
ITS#8069 char* strings on Windows are ASCII
2015-10-25 10:56:39 +01:00
Pavel Medvedev
22958b0f9e
ITS#8067 add ssize_t typedef for MSVC
2015-10-25 10:56:39 +01:00
Hallvard Furuseth
de5b689308
Simpler mdb_env_write_meta()
2015-10-25 10:56:39 +01:00
Hallvard Furuseth
bde5c231bc
Kill magic numbers for NUM_METAS, databases
2015-10-25 10:56:38 +01:00
Hallvard Furuseth
8901d9cfbc
ITS#7377 Catch mdb_put() to blocked/read-only txns
...
...early enough that txn state is left unchanged.
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
01342bd5d2
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.
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
602c978761
Cleanup: Drop !mt_dbxs hack, use MDB_TXN_FINISHED
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
a3ae2e7db1
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.
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
9266843fa6
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).
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
0cfc0a9736
Factor me_metas[toggle] out to mdb_env_pick_meta()
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
490243424c
Simpler mdb_node_add()
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
6318038138
More ESECT declarations
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
110fba2ef1
Add DB_USRVALID, to avoid 'dbi == FREE_DBI' tests
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
b6f0179683
Simpler flag/DBI checks and MDB_DEBUG
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
06df0a4655
Simpler mdb_drop().
...
MDB_DBI_CHANGED(,MAIN_DBI) is never true.
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
e5f41ce56b
Simpler mdb_node_shrink()
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
9d6c973f76
Simpler mdb_txn_commit().
...
mt_env is always set.
Commit(mt_child) resets mt_child, so parent need not.
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
ee06adb311
mdb_txn_begin() cleanup
2015-10-25 10:55:22 +01:00
Hallvard Furuseth
cc2a50aca2
mdb_drop0(): Omit scanning DUPSORT sub-DB leaves
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
70788bfe45
Use mdb_cmp_long() for FREE_DBI
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
a36f7a7fc2
mdb_env_get_flags(): Hide internal flags
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
600e2b6ce0
Support robust mutexes/locks. Add mdb_mutex_t etc.
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
3a71450436
Add MDB_USE_POSIX_MUTEX.
...
So far just to help aligning mdb.master and mdb.RE.
We'll make it an option later.
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
f25c4f0db9
Whitespace (align with mdb.master)
2015-10-25 10:55:21 +01:00
leo@yuriev.ru
086bc04cd2
ITS#7969 Use __sync_synchronize()
...
The rest of 9a80a8a8e8
plus commit a937740aa0
.
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
3f6fa7aece
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().
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
c616689d9a
Cleanup MDB_env.me_txn0.
...
More fallout from 4d02c741b1
.
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
c0170bc0ec
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 54516639ac
(Renumber...)
+ 8adee9464f
(Fix per-txn...).
2015-10-25 10:55:21 +01:00
leo@yuriev.ru
c65ca298b9
ITS#7971 mdb_txn_renew0(): Fix new readers slots.
...
commit 9a8eb95674
(mdb_txn_renew0)
plus b2ab9910dd
(reader allocation)
from mdb.master.
2015-10-25 10:55:21 +01:00
David Barbour
076b773d6b
ITS#7994 Access to current transaction ID.
...
commit b660491d3f
(mdb_txn_id())
plus c36c167cc4
(fix prev commit)
from mdb.master.
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
f3d3f60e3d
Try to avoid an invalid datafile after failed init
2015-10-25 10:55:21 +01:00
Hallvard Furuseth
aa10c98f3f
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.
2015-10-25 10:55:21 +01:00
HAMANO Tsukasa
c05c9619a6
ITS#8114 LDAP MODIFY handling
2015-10-25 09:13:27 +00:00
HAMANO Tsukasa
30f80a005d
ITS#8114 suppress warn message
2015-10-25 09:12:02 +00:00
Ondřej Kuzník
d94a07271d
ITS#8215 Make slapmodify test failures fatal
2015-10-25 09:05:02 +00:00
Ondřej Kuzník
cd9980c48b
ITS#8215 Add config tool delete support
2015-10-25 09:04:40 +00:00
Ondřej Kuzník
085eb2e8df
ITS#8215 Add mdb tool delete support
2015-10-25 09:04:21 +00:00
Ondřej Kuzník
f3e8aa5849
ITS#8215 Add bdb tool delete support
2015-10-25 09:04:00 +00:00
Ondřej Kuzník
8b8890bddc
ITS#8215 Change BI_tool_entry_delete signature
2015-10-25 09:02:59 +00:00
Ondřej Kuzník
6f1544c51e
ITS#8215 Make editing of invalid entries possible
...
If the database does not conform to any known schema, make it possible
to edit such a database using slapmodify when schema-checking is
disabled.
2015-10-25 09:02:39 +00:00
Ondřej Kuzník
5a6a93035d
ITS#8215 Do not crash on an empty entry
2015-10-25 09:02:06 +00:00
Ondřej Kuzník
b47f32f6f2
ITS#8215 Remove a memory leak
2015-10-25 09:01:46 +00:00
Ondřej Kuzník
f1cd76db75
ITS#8215 Use the correct transaction
2015-10-25 09:01:22 +00:00
Ondřej Kuzník
f0f366ef5b
ITS#8215 Add slapmodify manpage
2015-10-25 09:00:25 +00:00
Ondřej Kuzník
7a25c7be23
ITS#8215 Manpage fixes
2015-10-25 09:00:01 +00:00
Howard Chu
a39e3a0712
ITS#8284 olcRelay needs quotes
2015-10-25 08:19:03 +00:00
Howard Chu
015e8675fd
Merge remote-tracking branch 'origin/mdb.RE/0.9'
2015-10-25 08:14:55 +00:00
Howard Chu
fc3514152f
ITS#8263, 8264, 7771, 8270
2015-10-25 08:13:25 +00:00
Ignacio Casal Quinteiro
52446f93e7
ITS#8270 win32: fix conversion error with MSVC
2015-10-25 08:10:34 +00:00