openldap/libraries/liblmdb/CHANGES

296 lines
10 KiB
Text
Raw Normal View History

2013-08-28 23:22:41 -04:00
LMDB 0.9 Change Log
2024-06-24 12:56:14 -04:00
LMDB 0.9.34 Engineering
2024-06-28 11:55:18 -04:00
ITS#10222 - Update mdb_dump(1) and mdb_load(1) man pages for append (-a) option
ITS#10275 - mdb_load: add -Q option to use NOSYNC
2025-01-28 12:29:56 -05:00
ITS#10296 - fix fdatasync on MacOS
2025-06-10 15:43:44 -04:00
ITS#10342 - fix memleak in mdb_txn_begin for nested txns
2025-06-12 10:18:48 -04:00
ITS#10346 - fix mdb_env_copy2 with values > (2GB-16)
ITS#10355 - fix mplay build on musl
2024-06-24 12:56:14 -04:00
2024-05-21 13:16:06 -04:00
LMDB 0.9.33 Release (2024/05/21)
2024-03-26 12:25:55 -04:00
ITS#9037 mdb_page_search: fix error code when DBI record is missing
2024-05-07 12:49:00 -04:00
ITS#10198 For win32, stop passing ignored parameter
2024-05-07 12:49:34 -04:00
ITS#10212 Fix meta page usage by read only tools
2024-03-26 12:25:55 -04:00
2024-01-29 13:20:26 -05:00
LMDB 0.9.32 Release (2024/01/29)
2024-01-11 17:35:25 -05:00
ITS#9378 - Add ability to replay log and replay log tool
2023-10-23 15:45:12 -04:00
ITS#10095 - partial revert of ITS#9278. The patch was incorrect and introduced numerous race conditions.
2024-01-16 15:30:34 -05:00
ITS#10125 - mdb_load: fix cursor reinit in Append mode
ITS#10137 - Allow users to define MDB_IDL_LOGN
2023-07-10 17:20:16 -04:00
2023-07-10 12:09:21 -04:00
LMDB 0.9.31 Release (2023/07/10)
2023-05-25 15:37:01 -04:00
ITS#8447 - Fix cursor_put(MDB_CURRENT) on DUPSORT DB with different sized data
2023-02-13 15:04:45 -05:00
2023-02-08 13:40:04 -05:00
LMDB 0.9.30 Release (2023/02/08)
2022-11-28 12:51:38 -05:00
ITS#9806 - LMDB page_split: key threshold depends on page size
2022-11-28 18:41:00 -05:00
ITS#9916 - avoid gcc optimization bug on sparc64 linux
2022-10-03 12:40:10 -04:00
ITS#9919 - Mark infrequently used functions as cold
ITS#9723 - clear C_EOF on cursor with MDB_FIRST_DUP
2022-09-26 12:52:55 -04:00
ITS#9030 - Use sys/cachectl.h rather than asm/cachectl.h on mips
2021-03-16 12:49:20 -04:00
2021-03-16 12:41:19 -04:00
LMDB 0.9.29 Release (2021/03/16)
2021-02-09 18:41:50 -05:00
ITS#9461 refix ITS#9376
2021-03-15 12:14:56 -04:00
ITS#9500 fix regression from ITS#8662
2021-02-09 18:41:50 -05:00
2021-02-04 15:46:33 -05:00
LMDB 0.9.28 Release (2021/02/04)
2021-01-28 13:28:32 -05:00
ITS#8662 add -a append option to mdb_load
2020-10-26 15:03:01 -04:00
2020-10-26 15:00:40 -04:00
LMDB 0.9.27 Release (2020/10/26)
2020-10-23 15:38:14 -04:00
ITS#9376 fix repeated DUPSORT cursor deletes
2020-08-12 01:03:38 -04:00
2020-08-11 14:24:07 -04:00
LMDB 0.9.26 Release (2020/08/11)
2020-07-23 17:35:36 -04:00
ITS#9278 fix robust mutex cleanup for FreeBSD
2020-01-30 13:14:31 -05:00
2020-01-30 12:57:13 -05:00
LMDB 0.9.25 Release (2020/01/30)
ITS#9068 fix mdb_dump/load backslashes in printable content
2019-11-21 15:45:11 -05:00
ITS#9118 add MAP_NOSYNC for FreeBSD
2020-01-23 09:52:50 -05:00
ITS#9155 free mt_spill_pgs in non-nested txn on end
2019-07-19 12:41:12 -04:00
LMDB 0.9.24 Release (2019/07/24)
2019-01-30 19:22:50 -05:00
ITS#8969 Tweak mdb_page_split
2019-02-10 05:13:10 -05:00
ITS#8975 WIN32 fix writemap set_mapsize crash
2019-04-16 05:35:50 -04:00
ITS#9007 Fix loose pages in WRITEMAP
2018-12-19 11:52:12 -05:00
2018-12-19 10:51:03 -05:00
LMDB 0.9.23 Release (2018/12/19)
2018-09-10 11:24:51 -04:00
ITS#8756 Fix loose pages in dirty list
ITS#8831 Fix mdb_load flag init
ITS#8844 Fix mdb_env_close in forked process
Documentation
2018-09-10 14:06:45 -04:00
ITS#8857 mdb_cursor_del doesn't invalidate cursor
2018-09-10 11:24:51 -04:00
ITS#8908 GET_MULTIPLE etc don't change passed in key
2018-03-22 15:13:11 -04:00
LMDB 0.9.22 Release (2018/03/22)
2018-03-21 18:50:02 -04:00
Fix MDB_DUPSORT alignment bug (ITS#8819)
2018-02-09 13:47:21 -05:00
Fix regression with new db from 0.9.19 (ITS#8760)
2018-02-09 13:46:06 -05:00
Fix liblmdb to build on Solaris (ITS#8612)
2018-02-11 15:58:54 -05:00
Fix delete behavior with DUPSORT DB (ITS#8622)
2018-02-11 16:02:05 -05:00
Fix mdb_cursor_get/mdb_cursor_del behavior (ITS#8722)
2018-02-09 14:00:38 -05:00
LMDB 0.9.21 Release (2017/06/01)
2017-06-01 12:51:10 -04:00
Fix xcursor after cursor_del (ITS#8622)
LMDB 0.9.20 (Withdrawn)
2017-01-06 14:50:36 -05:00
Fix mdb_load with escaped plaintext (ITS#8558)
2017-01-11 06:23:26 -05:00
Fix mdb_cursor_last / mdb_put interaction (ITS#8557)
2017-01-06 14:50:36 -05:00
2016-12-28 13:35:05 -05:00
LMDB 0.9.19 Release (2016/12/28)
2016-06-15 06:43:46 -04:00
Fix mdb_env_cwalk cursor init (ITS#8424)
Fix robust mutexes on Solaris 10/11 (ITS#8339)
Tweak Win32 error message buffer
Fix MDB_GET_BOTH on non-dup record (ITS#8393)
Optimize mdb_drop
Fix xcursors after mdb_cursor_del (ITS#8406)
Fix MDB_NEXT_DUP after mdb_cursor_del (ITS#8412)
2016-12-21 08:02:00 -05:00
Fix mdb_cursor_put resetting C_EOF (ITS#8489)
Fix mdb_env_copyfd2 to return EPIPE on SIGPIPE (ITS#8504)
Fix mdb_env_copy with empty DB (ITS#8209)
Fix behaviors with fork (ITS#8505)
Fix mdb_dbi_open with mainDB cursors (ITS#8542)
2016-12-28 13:33:10 -05:00
Fix robust mutexes on kFreeBSD (ITS#8554)
2016-12-21 08:02:00 -05:00
Fix utf8_to_utf16 error checks (ITS#7992)
Fix F_NOCACHE on MacOS, error is non-fatal (ITS#7682)
Build
Make shared lib suffix overridable (ITS#8481)
Documentation
Cleanup doxygen nits
Note reserved vs actual mem/disk usage
2016-05-04 05:47:32 -04:00
2016-02-05 16:22:15 -05:00
LMDB 0.9.18 Release (2016/02/05)
2015-12-03 14:14:11 -05:00
Fix robust mutex detection on glibc 2.10-11 (ITS#8330)
2016-01-04 14:35:40 -05:00
Fix page_search_root assert on FreeDB (ITS#8336)
2016-01-09 03:10:55 -05:00
Fix MDB_APPENDDUP vs. rewrite(single item) (ITS#8334)
Fix mdb_copy of large files on Windows
2016-01-24 06:38:35 -05:00
Fix subcursor move after delete (ITS#8355)
2016-01-27 23:22:26 -05:00
Fix mdb_midl_shirnk off-by-one (ITS#8363)
Check for utf8_to_utf16 failures (ITS#7992)
Catch strdup failure in mdb_dbi_open
2015-12-03 14:14:11 -05:00
Build
Additional makefile var tweaks (ITS#8169)
Documentation
Add Getting Started page
2016-01-24 06:38:35 -05:00
Update WRITEMAP description
2015-12-03 14:14:11 -05:00
2015-12-03 14:08:00 -05:00
2015-11-30 11:55:33 -05:00
LMDB 0.9.17 Release (2015/11/30)
2015-09-12 18:08:14 -04:00
Fix ITS#7377 catch calloc failure
Fix ITS#8237 regression from ITS#7589
2015-11-04 13:17:50 -05:00
Fix ITS#8238 page_split for DUPFIXED pages
2015-09-27 17:37:28 -04:00
Fix ITS#8221 MDB_PAGE_FULL on delete/rebalance
2015-10-03 22:02:04 -04:00
Fix ITS#8258 rebalance/split assert
2015-10-25 04:13:25 -04:00
Fix ITS#8263 cursor_put cursor tracking
2015-11-04 13:17:50 -05:00
Fix ITS#8264 cursor_del cursor tracking
2015-11-13 04:28:36 -05:00
Fix ITS#8310 cursor_del cursor tracking
2015-11-04 13:17:50 -05:00
Fix ITS#8299 mdb_del cursor tracking
2015-11-04 16:03:22 -05:00
Fix ITS#8300 mdb_del cursor tracking
2015-11-09 15:11:10 -05:00
Fix ITS#8304 mdb_del cursor tracking
2015-10-25 04:13:25 -04:00
Fix ITS#7771 fakepage cursor tracking
2015-10-26 16:18:19 -04:00
Fix ITS#7789 ensure mapsize >= pages in use
Fix ITS#7971 mdb_txn_renew0() new reader slots
Fix ITS#7969 use __sync_synchronize on non-x86
2015-11-18 05:27:50 -05:00
Fix ITS#8311 page_split from update_key
2015-11-19 12:29:42 -05:00
Fix ITS#8312 loose pages in nested txn
Fix ITS#8313 mdb_rebalance dummy cursor
Fix ITS#8315 dirty_room in nested txn
2015-11-24 11:01:25 -05:00
Fix ITS#8323 dirty_list in nested txn
2015-11-22 20:51:45 -05:00
Fix ITS#8316 page_merge cursor tracking
Fix ITS#8321 cursor tracking
2015-11-22 21:02:36 -05:00
Fix ITS#8319 mdb_load error messages
Fix ITS#8320 mdb_load plaintext input
2015-10-26 16:18:19 -04:00
Added mdb_txn_id() (ITS#7994)
Added robust mutex support
Miscellaneous cleanup/simplification
2015-09-27 17:37:28 -04:00
Build
Create install dirs if needed (ITS#8256)
2015-10-25 04:13:25 -04:00
Fix ThreadProc decl on Win32/MSVC (ITS#8270)
2015-10-26 16:18:19 -04:00
Added ssize_t typedef for MSVC (ITS#8067)
Use ANSI apis on Windows (ITS#8069)
2015-11-17 12:49:31 -05:00
Use O_SYNC if O_DSYNC,MDB_DSYNC are not defined (ITS#7209)
2015-11-24 11:08:53 -05:00
Allow passing AR to make (ITS#8168)
Allow passing mandir to make install (ITS#8169)
2015-08-21 16:42:25 -04:00
2015-08-13 20:00:38 -04:00
LMDB 0.9.16 Release (2015/08/14)
2015-07-28 10:20:43 -04:00
Fix cursor EOF bug (ITS#8190)
Fix handling of subDB records (ITS#8181)
Fix mdb_midl_shrink() usage (ITS#8200)
2015-07-02 13:04:25 -04:00
2015-06-19 09:10:32 -04:00
LMDB 0.9.15 Release (2015/06/19)
2014-12-17 10:29:48 -05:00
Fix txn init (ITS#7961,#7987)
Fix MDB_PREV_DUP (ITS#7955,#7671)
Fix compact of empty env (ITS#7956)
2015-05-28 21:08:32 -04:00
Fix mdb_copy file mode
Fix mdb_env_close() after failed mdb_env_open()
2015-04-15 18:48:09 -04:00
Fix mdb_rebalance collapsing root (ITS#8062)
2015-02-27 18:15:23 -05:00
Fix mdb_load with large values (ITS#8066)
2015-04-22 22:27:33 -04:00
Fix to retry writes on EINTR (ITS#8106)
2015-04-23 00:52:13 -04:00
Fix mdb_cursor_del on empty DB (ITS#8109)
2015-04-29 12:25:42 -04:00
Fix MDB_INTEGERDUP key compare (ITS#8117)
2015-05-28 21:08:32 -04:00
Fix error handling (ITS#7959,#8157,etc.)
Fix race conditions (ITS#7969,7970)
2014-12-22 13:07:08 -05:00
Added workaround for fdatasync bug in ext3fs
2014-12-17 10:29:48 -05:00
Build
Don't use -fPIC for static lib
Update .gitignore (ITS#7952,#7953)
2015-05-28 21:08:32 -04:00
Cleanup for "make test" (ITS#7841), "make clean", mtest*.c
2014-12-17 10:29:48 -05:00
Misc. Android/Windows cleanup
Documentation
Fix MDB_APPEND doc
2015-05-28 15:13:24 -04:00
Fix MDB_MAXKEYSIZE doc (ITS#8156)
2015-05-28 21:08:32 -04:00
Fix mdb_cursor_put,mdb_cursor_del EACCES description
Fix mdb_env_sync(MDB_RDONLY env) doc (ITS#8021)
Clarify MDB_WRITEMAP doc (ITS#8021)
2015-06-02 15:07:33 -04:00
Clarify mdb_env_open doc
2014-12-17 10:29:48 -05:00
Clarify mdb_dbi_open doc
2014-09-20 02:24:32 -04:00
LMDB 0.9.14 Release (2014/09/20)
2014-07-08 19:27:26 -04:00
Fix to support 64K page size (ITS#7713)
2014-07-09 00:40:11 -04:00
Fix to persist decreased as well as increased mapsizes (ITS#7789)
2014-07-08 19:27:26 -04:00
Fix cursor bug when deleting last node of a DUPSORT key
Fix mdb_env_info to return FIXEDMAP address
2014-07-09 00:40:11 -04:00
Fix ambiguous error code from writing to closed DBI (ITS#7825)
2014-07-08 19:27:26 -04:00
Fix mdb_copy copying past end of file (ITS#7886)
Fix cursor bugs from page_merge/rebalance
2014-07-14 12:53:53 -04:00
Fix to dirty fewer pages in deletes (mdb_page_loose())
2014-08-11 14:01:20 -04:00
Fix mdb_dbi_open creating subDBs (ITS#7917)
2014-09-15 14:48:32 -04:00
Fix mdb_cursor_get(_DUP) with single value (ITS#7913)
2014-07-08 19:27:26 -04:00
Fix Windows compat issues in mtests (ITS#7879)
Add compacting variant of mdb_copy
Add BigEndian integer key compare code
Add mdb_dump/mdb_load utilities
2014-06-18 17:07:15 -04:00
LMDB 0.9.13 Release (2014/06/18)
Fix mdb_page_alloc unlimited overflow page search
Documentation
Re-fix MDB_CURRENT doc (ITS#7793)
Fix MDB_GET_MULTIPLE/MDB_NEXT_MULTIPLE doc
2014-06-13 13:46:27 -04:00
LMDB 0.9.12 Release (2014/06/13)
Fix MDB_GET_BOTH regression (ITS#7875,#7681)
Fix MDB_MULTIPLE writing multiple keys (ITS#7834)
Fix mdb_rebalance (ITS#7829)
Fix mdb_page_split (ITS#7815)
Fix md_entries count (ITS#7861,#7828,#7793)
Fix MDB_CURRENT (ITS#7793)
Fix possible crash on Windows DLL detach
Misc code cleanup
Documentation
mdb_cursor_put: cursor moves on error (ITS#7771)
2014-01-14 20:12:48 -05:00
LMDB 0.9.11 Release (2014/01/15)
Add mdb_env_set_assert() (ITS#7775)
Fix: invalidate txn on page allocation errors (ITS#7377)
Fix xcursor tracking in mdb_cursor_del0() (ITS#7771)
Fix corruption from deletes (ITS#7756)
Fix Windows/MSVC build issues
Raise safe limit of max MDB_MAXKEYSIZE
Misc code cleanup
Documentation
Remove spurious note about non-overlapping flags (ITS#7665)
2013-11-11 23:15:54 -05:00
LMDB 0.9.10 Release (2013/11/12)
Add MDB_NOMEMINIT option
Fix mdb_page_split() again (ITS#7589)
Fix MDB_NORDAHEAD definition (ITS#7734)
Fix mdb_cursor_del() positioning (ITS#7733)
Partial fix for larger page sizes (ITS#7713)
Fix Windows64/MSVC build issues
2013-10-24 18:57:17 -04:00
LMDB 0.9.9 Release (2013/10/24)
Add mdb_env_get_fd()
Add MDB_NORDAHEAD option
Add MDB_NOLOCK option
Avoid wasting space in mdb_page_split() (ITS#7589)
Fix mdb_page_merge() cursor fixup (ITS#7722)
Fix mdb_cursor_del() on last delete (ITS#7718)
Fix adding WRITEMAP on existing env (ITS#7715)
2013-12-29 08:52:30 -05:00
Fix nested txns (ITS#7515)
2013-10-24 18:57:17 -04:00
Fix mdb_env_copy() O_DIRECT bug (ITS#7682)
Fix mdb_cursor_set(SET_RANGE) return code (ITS#7681)
Fix mdb_rebalance() cursor fixup (ITS#7701)
Misc code cleanup
Documentation
Note that by default, readers need write access
2013-09-09 11:29:46 -04:00
LMDB 0.9.8 Release (2013/09/09)
2013-08-28 23:22:41 -04:00
Allow mdb_env_set_mapsize() on an open environment
Fix mdb_dbi_flags() (ITS#7672)
Fix mdb_page_unspill() in nested txns
2013-09-05 19:23:49 -04:00
Fix mdb_cursor_get(CURRENT|NEXT) after a delete
2013-08-28 23:22:41 -04:00
Fix mdb_cursor_get(DUP) to always return key (ITS#7671)
Fix mdb_cursor_del() to always advance to next item (ITS#7670)
2013-09-05 19:23:49 -04:00
Fix mdb_cursor_set(SET_RANGE) for tree with single page (ITS#7681)
Fix mdb_env_copy() retry open if O_DIRECT fails (ITS#7682)
2013-08-28 23:22:41 -04:00
Tweak mdb_page_spill() to be less aggressive
Documentation
Update caveats since mdb_reader_check() added in 0.9.7
LMDB 0.9.7 Release (2013/08/17)
Don't leave stale lockfile on failed RDONLY open (ITS#7664)
Fix mdb_page_split() ref beyond cursor depth
Fix read txn data race (ITS#7635)
Fix mdb_rebalance (ITS#7536, #7538)
Fix mdb_drop() (ITS#7561)
Misc DEBUG macro fixes
Add MDB_NOTLS envflag
Add mdb_env_copyfd()
Add mdb_txn_env() (ITS#7660)
Add mdb_dbi_flags() (ITS#7661)
Add mdb_env_get_maxkeysize()
Add mdb_env_reader_list()/mdb_env_reader_check()
Add mdb_page_spill/unspill, remove hard txn size limit
Use shorter names for semaphores (ITS#7615)
Build
Fix install target (ITS#7656)
Documentation
Misc updates for cursors, DB handles, data lifetime
LMDB 0.9.6 Release (2013/02/25)
Many fixes/enhancements
LMDB 0.9.5 Release (2012/11/30)
Renamed from libmdb to liblmdb
Many fixes/enhancements