CHANGES 9.02 KB
Newer Older
Howard Chu's avatar
Howard Chu committed
1
2
LMDB 0.9 Change Log

3
LMDB 0.9.29 Release (2021/03/16)
Howard Chu's avatar
Howard Chu committed
4
	ITS#9461 refix ITS#9376
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
5
	ITS#9500 fix regression from ITS#8662
Howard Chu's avatar
Howard Chu committed
6

7
LMDB 0.9.28 Release (2021/02/04)
Howard Chu's avatar
Howard Chu committed
8
	ITS#8662 add -a append option to mdb_load
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
9

10
LMDB 0.9.27 Release (2020/10/26)
Howard Chu's avatar
Howard Chu committed
11
	ITS#9376 fix repeated DUPSORT cursor deletes
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
12

Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
13
LMDB 0.9.26 Release (2020/08/11)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
14
	ITS#9278 fix robust mutex cleanup for FreeBSD
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
15

Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
16
LMDB 0.9.25 Release (2020/01/30)
17
	ITS#9068 fix mdb_dump/load backslashes in printable content
Howard Chu's avatar
Howard Chu committed
18
	ITS#9118 add MAP_NOSYNC for FreeBSD
Howard Chu's avatar
Howard Chu committed
19
	ITS#9155 free mt_spill_pgs in non-nested txn on end
20

Howard Chu's avatar
Howard Chu committed
21
LMDB 0.9.24 Release (2019/07/24)
Howard Chu's avatar
Howard Chu committed
22
	ITS#8969 Tweak mdb_page_split
Howard Chu's avatar
Howard Chu committed
23
	ITS#8975 WIN32 fix writemap set_mapsize crash
Howard Chu's avatar
Howard Chu committed
24
	ITS#9007 Fix loose pages in WRITEMAP
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
25

Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
26
LMDB 0.9.23 Release (2018/12/19)
Howard Chu's avatar
Howard Chu committed
27
28
29
30
	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
Howard Chu's avatar
Howard Chu committed
31
		ITS#8857 mdb_cursor_del doesn't invalidate cursor
Howard Chu's avatar
Howard Chu committed
32
		ITS#8908 GET_MULTIPLE etc don't change passed in key
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
33
34

LMDB 0.9.22 Release (2018/03/22)
Howard Chu's avatar
Howard Chu committed
35
	Fix MDB_DUPSORT alignment bug (ITS#8819)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
36
	Fix regression with new db from 0.9.19 (ITS#8760)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
37
	Fix liblmdb to build on Solaris (ITS#8612)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
38
	Fix delete behavior with DUPSORT DB (ITS#8622)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
39
	Fix mdb_cursor_get/mdb_cursor_del behavior (ITS#8722)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
40
41

LMDB 0.9.21 Release (2017/06/01)
Howard Chu's avatar
Howard Chu committed
42
43
44
	Fix xcursor after cursor_del (ITS#8622)

LMDB 0.9.20 (Withdrawn)
Howard Chu's avatar
Howard Chu committed
45
	Fix mdb_load with escaped plaintext (ITS#8558)
Howard Chu's avatar
Howard Chu committed
46
	Fix mdb_cursor_last / mdb_put interaction (ITS#8557)
Howard Chu's avatar
Howard Chu committed
47

Howard Chu's avatar
Howard Chu committed
48
LMDB 0.9.19 Release (2016/12/28)
Howard Chu's avatar
Howard Chu committed
49
50
51
52
53
54
55
	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)
Howard Chu's avatar
Howard Chu committed
56
57
58
59
60
	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)
Howard Chu's avatar
Howard Chu committed
61
	Fix robust mutexes on kFreeBSD (ITS#8554)
Howard Chu's avatar
Howard Chu committed
62
63
64
65
66
67
68
69
	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

Howard Chu's avatar
Howard Chu committed
70

Howard Chu's avatar
Howard Chu committed
71
LMDB 0.9.18 Release (2016/02/05)
Howard Chu's avatar
Howard Chu committed
72
	Fix robust mutex detection on glibc 2.10-11 (ITS#8330)
Howard Chu's avatar
Howard Chu committed
73
	Fix page_search_root assert on FreeDB (ITS#8336)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
74
75
	Fix MDB_APPENDDUP vs. rewrite(single item) (ITS#8334)
	Fix mdb_copy of large files on Windows
Howard Chu's avatar
Howard Chu committed
76
	Fix subcursor move after delete (ITS#8355)
Howard Chu's avatar
Howard Chu committed
77
	Fix mdb_midl_shirnk off-by-one (ITS#8363)
78
79
	Check for utf8_to_utf16 failures (ITS#7992)
	Catch strdup failure in mdb_dbi_open
Howard Chu's avatar
Howard Chu committed
80
81
	Build
		Additional makefile var tweaks (ITS#8169)
82
83
	Documentation
		Add Getting Started page
Howard Chu's avatar
Howard Chu committed
84
		Update WRITEMAP description
Howard Chu's avatar
Howard Chu committed
85
	
Howard Chu's avatar
Howard Chu committed
86

Howard Chu's avatar
Howard Chu committed
87
LMDB 0.9.17 Release (2015/11/30)
Howard Chu's avatar
Howard Chu committed
88
89
	Fix ITS#7377 catch calloc failure
	Fix ITS#8237 regression from ITS#7589
Howard Chu's avatar
Howard Chu committed
90
	Fix ITS#8238 page_split for DUPFIXED pages
Howard Chu's avatar
Howard Chu committed
91
	Fix ITS#8221 MDB_PAGE_FULL on delete/rebalance
Howard Chu's avatar
Howard Chu committed
92
	Fix ITS#8258 rebalance/split assert
Howard Chu's avatar
Howard Chu committed
93
	Fix ITS#8263 cursor_put cursor tracking
Howard Chu's avatar
Howard Chu committed
94
	Fix ITS#8264 cursor_del cursor tracking
Howard Chu's avatar
Howard Chu committed
95
	Fix ITS#8310 cursor_del cursor tracking
Howard Chu's avatar
Howard Chu committed
96
	Fix ITS#8299 mdb_del cursor tracking
Howard Chu's avatar
Howard Chu committed
97
	Fix ITS#8300 mdb_del cursor tracking
Howard Chu's avatar
Howard Chu committed
98
	Fix ITS#8304 mdb_del cursor tracking
Howard Chu's avatar
Howard Chu committed
99
	Fix ITS#7771 fakepage cursor tracking
Howard Chu's avatar
Howard Chu committed
100
101
102
	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
Howard Chu's avatar
Howard Chu committed
103
	Fix ITS#8311 page_split from update_key
Howard Chu's avatar
Howard Chu committed
104
105
106
	Fix ITS#8312 loose pages in nested txn
	Fix ITS#8313 mdb_rebalance dummy cursor
	Fix ITS#8315 dirty_room in nested txn
Howard Chu's avatar
Howard Chu committed
107
	Fix ITS#8323 dirty_list in nested txn
Howard Chu's avatar
Howard Chu committed
108
109
	Fix ITS#8316 page_merge cursor tracking
	Fix ITS#8321 cursor tracking
Howard Chu's avatar
Howard Chu committed
110
111
	Fix ITS#8319 mdb_load error messages
	Fix ITS#8320 mdb_load plaintext input
Howard Chu's avatar
Howard Chu committed
112
113
114
	Added mdb_txn_id() (ITS#7994)
	Added robust mutex support
	Miscellaneous cleanup/simplification
Howard Chu's avatar
Howard Chu committed
115
116
	Build
		Create install dirs if needed (ITS#8256)
Howard Chu's avatar
Howard Chu committed
117
		Fix ThreadProc decl on Win32/MSVC (ITS#8270)
Howard Chu's avatar
Howard Chu committed
118
119
		Added ssize_t typedef for MSVC (ITS#8067)
		Use ANSI apis on Windows (ITS#8069)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
120
		Use O_SYNC if O_DSYNC,MDB_DSYNC are not defined (ITS#7209)
Howard Chu's avatar
Howard Chu committed
121
122
		Allow passing AR to make (ITS#8168)
		Allow passing mandir to make install (ITS#8169)
Howard Chu's avatar
Howard Chu committed
123

Howard Chu's avatar
Howard Chu committed
124
LMDB 0.9.16 Release (2015/08/14)
125
126
127
	Fix cursor EOF bug (ITS#8190)
	Fix handling of subDB records (ITS#8181)
	Fix mdb_midl_shrink() usage (ITS#8200)
Howard Chu's avatar
Howard Chu committed
128

Howard Chu's avatar
Howard Chu committed
129
LMDB 0.9.15 Release (2015/06/19)
Howard Chu's avatar
Howard Chu committed
130
131
132
	Fix txn init (ITS#7961,#7987)
	Fix MDB_PREV_DUP (ITS#7955,#7671)
	Fix compact of empty env (ITS#7956)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
133
134
	Fix mdb_copy file mode
	Fix mdb_env_close() after failed mdb_env_open()
Howard Chu's avatar
Howard Chu committed
135
	Fix mdb_rebalance collapsing root (ITS#8062)
Quanah Gibson-Mount's avatar
Quanah Gibson-Mount committed
136
	Fix mdb_load with large values (ITS#8066)
Howard Chu's avatar
Howard Chu committed
137
	Fix to retry writes on EINTR (ITS#8106)
Howard Chu's avatar
Howard Chu committed
138
	Fix mdb_cursor_del on empty DB (ITS#8109)
Howard Chu's avatar
Howard Chu committed
139
	Fix MDB_INTEGERDUP key compare (ITS#8117)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
140
141
	Fix error handling (ITS#7959,#8157,etc.)
	Fix race conditions (ITS#7969,7970)
Howard Chu's avatar
Howard Chu committed
142
	Added workaround for fdatasync bug in ext3fs
Howard Chu's avatar
Howard Chu committed
143
144
145
	Build
		Don't use -fPIC for static lib
		Update .gitignore (ITS#7952,#7953)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
146
		Cleanup for "make test" (ITS#7841), "make clean", mtest*.c
Howard Chu's avatar
Howard Chu committed
147
148
149
		Misc. Android/Windows cleanup
	Documentation
		Fix MDB_APPEND doc
Hallvard Furuseth's avatar
Hallvard Furuseth committed
150
		Fix MDB_MAXKEYSIZE doc (ITS#8156)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
151
152
153
		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)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
154
		Clarify mdb_env_open doc
Howard Chu's avatar
Howard Chu committed
155
156
		Clarify mdb_dbi_open doc

Howard Chu's avatar
Howard Chu committed
157
LMDB 0.9.14 Release (2014/09/20)
Howard Chu's avatar
Howard Chu committed
158
	Fix to support 64K page size (ITS#7713)
Howard Chu's avatar
Howard Chu committed
159
	Fix to persist decreased as well as increased mapsizes (ITS#7789)
Howard Chu's avatar
Howard Chu committed
160
161
	Fix cursor bug when deleting last node of a DUPSORT key
	Fix mdb_env_info to return FIXEDMAP address
Howard Chu's avatar
Howard Chu committed
162
	Fix ambiguous error code from writing to closed DBI (ITS#7825)
Howard Chu's avatar
Howard Chu committed
163
164
	Fix mdb_copy copying past end of file (ITS#7886)
	Fix cursor bugs from page_merge/rebalance
Howard Chu's avatar
Typo    
Howard Chu committed
165
	Fix to dirty fewer pages in deletes (mdb_page_loose())
Howard Chu's avatar
Howard Chu committed
166
	Fix mdb_dbi_open creating subDBs (ITS#7917)
Howard Chu's avatar
Howard Chu committed
167
	Fix mdb_cursor_get(_DUP) with single value (ITS#7913)
Howard Chu's avatar
Howard Chu committed
168
169
170
171
172
	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

Howard Chu's avatar
Howard Chu committed
173
174
175
176
177
178
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

Howard Chu's avatar
Howard Chu committed
179
180
181
182
183
184
185
186
187
188
189
190
191
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)


Howard Chu's avatar
Howard Chu committed
192
193
194
195
196
197
198
199
200
201
202
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)

Howard Chu's avatar
Howard Chu committed
203
204
205
206
207
208
209
210
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

Howard Chu's avatar
Howard Chu committed
211
212
213
214
215
216
217
218
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)
Hallvard Furuseth's avatar
Hallvard Furuseth committed
219
	Fix nested txns (ITS#7515)
Howard Chu's avatar
Howard Chu committed
220
221
222
223
224
225
226
227
	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


Howard Chu's avatar
Howard Chu committed
228
LMDB 0.9.8 Release (2013/09/09)
Howard Chu's avatar
Howard Chu committed
229
230
231
	Allow mdb_env_set_mapsize() on an open environment
	Fix mdb_dbi_flags() (ITS#7672)
	Fix mdb_page_unspill() in nested txns
Howard Chu's avatar
updates    
Howard Chu committed
232
	Fix mdb_cursor_get(CURRENT|NEXT) after a delete
Howard Chu's avatar
Howard Chu committed
233
234
	Fix mdb_cursor_get(DUP) to always return key (ITS#7671)
	Fix mdb_cursor_del() to always advance to next item (ITS#7670)
Howard Chu's avatar
updates    
Howard Chu committed
235
236
	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)
Howard Chu's avatar
Howard Chu committed
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
	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