Commit Graph

1188 Commits

Author SHA1 Message Date
Howard Chu
e85c944a3a Tweak conditionals for fdatasync hack 2015-01-11 11:41:08 +00:00
Howard Chu
0b9f42d1f4 ITS#8021 env_sync is invalid in RDONLY env 2015-01-09 11:25:07 +00:00
Howard Chu
4500d49f36 fdatasync hack, again
Check for ext3/ext4 fs, then check kernel version.
2015-01-08 13:03:55 +00:00
Howard Chu
888a76f651 Revert "Fix prev commit for env_sync0"
This reverts commit e95c9231fc.

Revert "Hack for potential ext3/ext4 corruption issue"

This reverts commit 91155b9d67.
2015-01-08 12:57:08 +00:00
Howard Chu
fe8b13f225 Tweak fdatasync hack description 2014-12-22 18:07:08 +00:00
Howard Chu
e95c9231fc Fix prev commit for env_sync0 2014-12-21 00:14:16 +00:00
Howard Chu
02495837dc Update for fsync hack 2014-12-18 04:46:43 +00:00
Howard Chu
91155b9d67 Hack for potential ext3/ext4 corruption issue
Use regular fsync() if we think this commit grew the DB file.
2014-12-18 04:45:02 +00:00
Howard Chu
e6ac9c2314 Update for 0.9.15 2014-12-17 15:29:48 +00:00
Howard Chu
a0accc86f2 Fix MDB_APPEND doc
We actually compare the new key against the last key, to prevent
corruption.
2014-12-15 20:45:02 +00:00
Hallvard Furuseth
f1417e2634 make clean: remove *.lo 2014-12-15 20:44:42 +00:00
Howard Chu
dcccd8a89a Clarify mdb_dbi_open doc
The concurrency restriction is on threads within a single process.
Multiple processes can use mdb_dbi_open without affecting each other.
2014-12-15 20:44:30 +00:00
Leo Yuriev
196e07ca58 ITS#7987 fix excessive space for single write txn 2014-12-05 21:07:55 +00:00
Hallvard Furuseth
f284c3232d Fix WIN32 -> _WIN32 2014-12-05 18:43:07 +01:00
Hallvard Furuseth
8704eff591 mdb_strerror: Silence warning @ Windows 2014-12-01 20:17:27 +01:00
Hallvard Furuseth
5bf495abdc Fix comments 2014-12-01 20:17:27 +01:00
Hallvard Furuseth
3aa7537adc Simplify recent changes a bit. 2014-12-01 20:17:27 +01:00
Hallvard Furuseth
17bf75b12e ITS#7961,#7987 Re-fix txn init.
More fallout from 4d02c741b1:
Don't modify another thread's write txn. Reinit me_txn0 fully.
2014-12-01 20:17:13 +01:00
Howard Chu
3ce002fd13 ITS#7959 fix prev commit
fstat returns -1, not an errno. Move code into its own function
for reuse.
2014-12-01 20:15:36 +01:00
Howard Chu
ce40f4f314 ITS#7961 fix txn init
More fallout from 4d02c741b1
2014-12-01 20:15:36 +01:00
Jean-Christophe DUBOIS
042e76685e ITS#7959 Check fstat return value
Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
2014-12-01 20:15:36 +01:00
Leo Yuriev
c473091f8f ITS#7841 trivial cleanup
TRIVIA - lmdb: clean testdb-dir while "make test".
2014-12-01 20:15:36 +01:00
Howard Chu
98ed192949 ITS#7956 fix compact of empty env 2014-12-01 20:15:36 +01:00
Howard Chu
af99820ac8 ITS#7955, #7671 fix MDB_PREV_DUP 2014-12-01 20:15:36 +01:00
Howard Chu
0482f1898d ITS#7953 .gitignore *.lo 2014-12-01 20:15:35 +01:00
Howard Chu
9227f66673 ITS#7952 .gitignore mdb_dump/load 2014-12-01 20:15:35 +01:00
Howard Chu
20ad21dcc4 Don't use -fPIC for static lib 2014-12-01 20:15:35 +01:00
Howard Chu
df9da7c7be Must do dlist_free before releasing Wmutex 2014-12-01 20:15:35 +01:00
Howard Chu
9eede0b103 Free write mutex earlier in txn_reset0 2014-12-01 20:15:30 +01:00
Howard Chu
a7639a66a4 Android also only has memalign 2014-09-25 19:25:56 +01:00
Howard Chu
2f587ae081 new date 2014-09-20 07:24:32 +01:00
Howard Chu
62e4eeb7f7 ITS#7943 reinit txn flags
When reusing the main write txn
2014-09-19 01:45:43 +01:00
Howard Chu
891e662754 Plug leak in 4d02c741b1
Free writer txn on env_close
2014-09-18 01:22:02 +01:00
Howard Chu
674f52fdb4 Silence some clang warnings 2014-09-16 21:54:07 +01:00
Howard Chu
b9495245b4 Release 0.9.14 2014-09-15 19:48:32 +01:00
Quanah Gibson-Mount
5ee99f1125 Change retry to num times 60. Testing shows that on a known dataset, this has the same growth behavior as 2.4.39, while num times 20 resulted in significant growth. 2014-09-13 16:21:17 -05:00
Howard Chu
3646ba966c More for me_pgoldest
Leave it in main env struct, it doesn't need to be rolled back
with nested txns.
2014-09-09 19:44:23 +01:00
Howard Chu
29fd241fad Remember oldest reader txnid
Don't walk the readers table unless we really need to.
2014-09-09 19:40:05 +01:00
Howard Chu
4d02c741b1 Use a single write txn 2014-09-04 10:40:11 +01:00
Howard Chu
a054a194e8 ITS#7913 cleanup
we already checked for data == NULL, drop unnecessary if
2014-08-24 21:18:03 +01:00
Howard Chu
8fbbc71506 More for MIPS
Move CACHEFLUSH, avoid unnecessary if()
2014-08-21 17:40:20 -07:00
Howard Chu
4008e5e583 Partially revert ada2630699
Of course, MacOSX only has posix_memalign, and only in recent versions.
(Older versions could use valloc instead. That precludes ever changing
the LMDB pagesize to be different from the OS pagesize.) Not all that
crucial since it only affects mdb_env_copyfd1.
2014-08-17 20:44:53 -07:00
Hallvard Furuseth
cf4fe3b1fb Microoptimize loose pages 2014-08-17 01:50:32 +02:00
Hallvard Furuseth
1e7eeed28d Fix loose pages in mdb_freelist_save().
Leaving them in dirty_list caused breakage.  Instead merge them
into me_pghead at the end, when no more pages will be allocated.
2014-08-17 00:29:12 +02:00
Hallvard Furuseth
983f896aa7 Split out mdb_midl_xmerge, add MDB_IDL_ALLOCLEN 2014-08-16 11:34:44 +02:00
Howard Chu
992a96e171 ITS#7917 2014-08-11 11:01:20 -07:00
Howard Chu
322cd26a7b ITS#7917 fix mdb_dbi_open
Don't let dummy go out of scope
2014-08-11 11:00:11 -07:00
Howard Chu
ada2630699 Just use memalign, not posix_memalign
Everything has it. Solaris doesn't have posix_memalign.
2014-08-07 11:06:53 -07:00
Howard Chu
899b23f89d More for MIPS
Do a cacheflush after writing data pages, separate from meta's cacheflush
2014-08-04 11:40:24 -07:00
Howard Chu
ae0c9f484d ITS#7793 more for branch key update 2014-08-04 09:26:35 -07:00