Commit graph

1305 commits

Author SHA1 Message Date
Howard Chu
1e7891c016 ITS#9920 lmdb: fix page offset when converting subpage to real page
offset needs to account for additional space at page tail
2024-10-16 17:36:18 +01:00
Howard Chu
c277aed15a ITS#9920 lmdb: fix data races in rpage decryption 2024-10-14 19:40:26 +01:00
Howard Chu
e895f5fd36 ITS#9920 crypto: use libsodium instead of OpenSSL
Note: even though the same algorithms were used, the data produced by
this module doesn't work with the OpenSSL-based module and vice versa.
2024-10-14 19:39:32 +01:00
Howard Chu
49726aa38b Another fix for OpenSSL 3.0+
Should rewrite this module to use libsodium instead.
2024-09-25 20:05:15 +01:00
Howard Chu
acab3df034 LMDB: Add a separate mlm_setup0() to separate loading from setup 2024-09-25 18:23:31 +01:00
Howard Chu
6cbb42aae0 ITS#9920 lmdb: cleanup prev commit 2024-09-17 00:11:22 +01:00
Howard Chu
d61005822c ITS#9920 lmdb: fix page_split of encrypted page 2024-09-16 21:11:08 +01:00
Andras
fd3c2adae7 ITS#10244 win32: Fix passed ptr type
From dfb3bbed65 ITS#9017
2024-07-30 14:28:54 +01:00
Howard Chu
ce6f8e2d93 ITS#9378 don't try to print oversized keys in debug msg 2024-06-17 17:06:19 +01:00
Howard Chu
c883e8f712 LMDB: tweak mdb_load.1 manpage
Add missing -a option to Synopsis
2024-06-03 21:17:19 +01:00
Zach Vonler
87dd0740e6 ITS#10222 LMDB: Updated mdb_dump man page
The -a option to mdb_load makes the previous text obsolete.
2024-06-03 21:17:13 +01:00
Howard Chu
a6e8631ef9 ITS#10212 LMDB: better fix 2024-05-03 20:44:38 +01:00
Howard Chu
4a25e0699b ITS#10212 LMDB: init txnid for read-only DBs 2024-05-02 16:33:22 +01:00
Howard Chu
dd2ad2fd5a ITS#10198 Win32 mdb_strerror - stop passing "ignored" parameter
The M$ docs say the parameter is ignored, but it actually isn't,
and will cause a SEGV if the pointed memory isn't an init'd va_list.
2024-04-04 07:17:23 +01:00
Howard Chu
0f8ee264c8 ITS#9037 mdb_page_search: fix error code when DBI record is missing
Use the more relevant MDB_BAD_DBI instead of MDB_NOTFOUND error code
2024-03-26 14:52:20 +00:00
Howard Chu
009dd91686 ITS#9378 Add replay tool
Reads a replay log and executes all the write ops
2024-01-09 17:42:58 +00:00
Howard Chu
9d45a80bf0 ITS#9378 Add explicit replay logging
Logs essential ops so they can be replayed.
Ignores read ops for now.
2024-01-09 17:19:36 +00:00
Howard Chu
b36e177c5a More crypto fixups 2023-12-26 01:43:42 +00:00
Howard Chu
ab27be5f93 crypto demo: fixup OpenSSL 3 compat 2023-12-25 23:33:43 +00:00
Clément Renault
22a41169c1 ITS#10137 LMDB: Allow users to define MDB_IDL_LOGN 2023-11-27 16:25:15 +00:00
Howard Chu
741970078d ITS#10125 mdb_load: fix cursor reinit in Append mode 2023-11-05 17:34:03 +00:00
Howard Chu
406311ae59 ITS#10095 partial revert of ITS#9278 2fd44e3251
The patch was incorrect and introduced numerous race conditions.
The original problem was a FreeBSD bug, subsequently fixed:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269277
2023-08-27 15:50:51 +01:00
Howard Chu
6264f53975 ITS#9961 LMDB: fix MSVC error 2022-12-15 09:38:23 +00:00
Howard Chu
b9db2582cb ITS#9920 must account for size of authentication data
When computing amount of free space or fill factor in a page
2022-11-28 23:56:43 +00:00
Howard Chu
8e3cab0f63 ITS#9916 liblmdb: use alternate MDB_page2 struct for some accesses
fakepage pointers are only guaranteed to be 2-byte aligned. Use a
2-byte aligned struct definition when referencing 2-byte page members
if a page pointer possibly points to a fakepage.
2022-11-28 23:37:12 +00:00
Howard Chu
4031bdba88 ITS#9806 LMDB page_split: key threshold depends on page size
32 was chosen for page size of 4KB. Not large nough for 16KB pages.
2022-11-28 14:33:06 +00:00
Mike Hommey
405ca7106b ITS#9919 - Mark infrequently used functions as cold rather than manually putting them in a separate section 2022-09-27 17:29:46 +01:00
Mike Hommey
17e13f7c07 ITS#9030 - Use sys/cachectl.h rather than asm/cachectl.h on mips
It also contains the cacheflush function declaration.
2022-09-23 02:38:14 +01:00
Howard Chu
e51e6b8229 ITS#9910 fix typo
in ad3f8367b0
2022-09-21 20:18:34 +01:00
Howard Chu
97e7e9ac79 ITS#9524 fix loose page tracking
Fixes commit 0e17ba43a8, loose pages
that have been dropped from dirty list should no longer be counted.
2022-09-21 17:07:36 +01:00
NikoPLP
ad3f8367b0 ITS#9910 fix undefined MDB_FDATASYNC on MacOSX
Broken by d85fe32 ITS#9372
2022-09-01 17:41:50 +01:00
Joakim Hassila
0179cfab57 ITS#9861 fix readonly regression from #9017 2022-06-09 22:50:39 +01:00
Kris Zyp
64fc67f4ae ITS#9385 fix using MDB_NOSUBDIR with nonexistent file 2022-05-13 17:16:29 +01:00
Kris Zyp
e2b82098fa ITS#9618 fix Windows WRITEMAP flush
Revert back to using standard FlushViewOfFile/FlushFileBuffers
to sync data with WRITEMAP mode on Windows
2021-07-28 22:56:08 +01:00
Howard Chu
52836cdb8d ITS#9574 add mdb_drop to .gitignore 2021-06-07 15:55:06 +01:00
Howard Chu
557ab60606 ITS#9496 fix mdb_env_open bug from #8704
Broken in 3585a1eb97
2021-04-09 14:12:41 +01:00
Howard Chu
fcf44d3fd8 ITS#9500 fix regression from ITS#8662 2021-03-14 14:34:13 +00:00
Howard Chu
6ad29167cc ITS#9376 simplify 2021-03-14 14:34:07 +00:00
Quanah Gibson-Mount
997300695a ITS#9469 - Typo fixes 2021-02-18 16:25:45 +00:00
Howard Chu
e9166d02d0 ITS#9461 fix typo 2021-02-11 11:35:36 +00:00
Howard Chu
336d717147 ITS#9461 refix ITS#9376
Was setting C_DEL flag gratuitously
2021-02-09 23:39:15 +00:00
Quanah Gibson-Mount
3a940d6860 Happy New Year! 2021-01-12 19:20:36 +00:00
Kris Zyp
d85fe32dab ITS#9372 Default to using POSIX semaphores on MacOS
Unless robust is specified (then use SysV)
2020-10-30 16:27:16 +00:00
Kris Zyp
576ccd10ff ITS#9371 Fix unknown size of void compilation errors 2020-10-30 16:25:40 +00:00
Howard Chu
4a61bbd8b2 ITS#9376 Fixes for repeated deletes with xcursor
On DUPSORT DBs, must initialize xcursor regardless of whether
caller requested its data. Also in cursor_prev must check whether
cursor index is still within range before using it.
2020-10-23 20:35:41 +01:00
Howard Chu
311f071c1f Support db_pagesize in mdb_load
Since setting was added in de08119a29
2020-10-23 17:48:53 +01:00
Howard Chu
fccd990c93 ITS#9364 fix doxygen comment 2020-10-12 22:55:51 +01:00
Howard Chu
8e8371d125 ITS#9364 Add docs for crypto modules 2020-10-12 22:28:27 +01:00
Howard Chu
b220a6655b ITS#9364 Add crypto support to all tools
Using dynamically loaded crypto modules
2020-10-12 21:57:05 +01:00
Howard Chu
12c63d299c ITS#9364 use crypto table properly 2020-10-12 03:09:48 +01:00