CHANGES 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266
  1. LMDB 0.9 Change Log
  2. LMDB 0.9.29 Release (2021/03/16)
  3. ITS#9461 refix ITS#9376
  4. ITS#9500 fix regression from ITS#8662
  5. LMDB 0.9.28 Release (2021/02/04)
  6. ITS#8662 add -a append option to mdb_load
  7. LMDB 0.9.27 Release (2020/10/26)
  8. ITS#9376 fix repeated DUPSORT cursor deletes
  9. LMDB 0.9.26 Release (2020/08/11)
  10. ITS#9278 fix robust mutex cleanup for FreeBSD
  11. LMDB 0.9.25 Release (2020/01/30)
  12. ITS#9068 fix mdb_dump/load backslashes in printable content
  13. ITS#9118 add MAP_NOSYNC for FreeBSD
  14. ITS#9155 free mt_spill_pgs in non-nested txn on end
  15. LMDB 0.9.24 Release (2019/07/24)
  16. ITS#8969 Tweak mdb_page_split
  17. ITS#8975 WIN32 fix writemap set_mapsize crash
  18. ITS#9007 Fix loose pages in WRITEMAP
  19. LMDB 0.9.23 Release (2018/12/19)
  20. ITS#8756 Fix loose pages in dirty list
  21. ITS#8831 Fix mdb_load flag init
  22. ITS#8844 Fix mdb_env_close in forked process
  23. Documentation
  24. ITS#8857 mdb_cursor_del doesn't invalidate cursor
  25. ITS#8908 GET_MULTIPLE etc don't change passed in key
  26. LMDB 0.9.22 Release (2018/03/22)
  27. Fix MDB_DUPSORT alignment bug (ITS#8819)
  28. Fix regression with new db from 0.9.19 (ITS#8760)
  29. Fix liblmdb to build on Solaris (ITS#8612)
  30. Fix delete behavior with DUPSORT DB (ITS#8622)
  31. Fix mdb_cursor_get/mdb_cursor_del behavior (ITS#8722)
  32. LMDB 0.9.21 Release (2017/06/01)
  33. Fix xcursor after cursor_del (ITS#8622)
  34. LMDB 0.9.20 (Withdrawn)
  35. Fix mdb_load with escaped plaintext (ITS#8558)
  36. Fix mdb_cursor_last / mdb_put interaction (ITS#8557)
  37. LMDB 0.9.19 Release (2016/12/28)
  38. Fix mdb_env_cwalk cursor init (ITS#8424)
  39. Fix robust mutexes on Solaris 10/11 (ITS#8339)
  40. Tweak Win32 error message buffer
  41. Fix MDB_GET_BOTH on non-dup record (ITS#8393)
  42. Optimize mdb_drop
  43. Fix xcursors after mdb_cursor_del (ITS#8406)
  44. Fix MDB_NEXT_DUP after mdb_cursor_del (ITS#8412)
  45. Fix mdb_cursor_put resetting C_EOF (ITS#8489)
  46. Fix mdb_env_copyfd2 to return EPIPE on SIGPIPE (ITS#8504)
  47. Fix mdb_env_copy with empty DB (ITS#8209)
  48. Fix behaviors with fork (ITS#8505)
  49. Fix mdb_dbi_open with mainDB cursors (ITS#8542)
  50. Fix robust mutexes on kFreeBSD (ITS#8554)
  51. Fix utf8_to_utf16 error checks (ITS#7992)
  52. Fix F_NOCACHE on MacOS, error is non-fatal (ITS#7682)
  53. Build
  54. Make shared lib suffix overridable (ITS#8481)
  55. Documentation
  56. Cleanup doxygen nits
  57. Note reserved vs actual mem/disk usage
  58. LMDB 0.9.18 Release (2016/02/05)
  59. Fix robust mutex detection on glibc 2.10-11 (ITS#8330)
  60. Fix page_search_root assert on FreeDB (ITS#8336)
  61. Fix MDB_APPENDDUP vs. rewrite(single item) (ITS#8334)
  62. Fix mdb_copy of large files on Windows
  63. Fix subcursor move after delete (ITS#8355)
  64. Fix mdb_midl_shirnk off-by-one (ITS#8363)
  65. Check for utf8_to_utf16 failures (ITS#7992)
  66. Catch strdup failure in mdb_dbi_open
  67. Build
  68. Additional makefile var tweaks (ITS#8169)
  69. Documentation
  70. Add Getting Started page
  71. Update WRITEMAP description
  72. LMDB 0.9.17 Release (2015/11/30)
  73. Fix ITS#7377 catch calloc failure
  74. Fix ITS#8237 regression from ITS#7589
  75. Fix ITS#8238 page_split for DUPFIXED pages
  76. Fix ITS#8221 MDB_PAGE_FULL on delete/rebalance
  77. Fix ITS#8258 rebalance/split assert
  78. Fix ITS#8263 cursor_put cursor tracking
  79. Fix ITS#8264 cursor_del cursor tracking
  80. Fix ITS#8310 cursor_del cursor tracking
  81. Fix ITS#8299 mdb_del cursor tracking
  82. Fix ITS#8300 mdb_del cursor tracking
  83. Fix ITS#8304 mdb_del cursor tracking
  84. Fix ITS#7771 fakepage cursor tracking
  85. Fix ITS#7789 ensure mapsize >= pages in use
  86. Fix ITS#7971 mdb_txn_renew0() new reader slots
  87. Fix ITS#7969 use __sync_synchronize on non-x86
  88. Fix ITS#8311 page_split from update_key
  89. Fix ITS#8312 loose pages in nested txn
  90. Fix ITS#8313 mdb_rebalance dummy cursor
  91. Fix ITS#8315 dirty_room in nested txn
  92. Fix ITS#8323 dirty_list in nested txn
  93. Fix ITS#8316 page_merge cursor tracking
  94. Fix ITS#8321 cursor tracking
  95. Fix ITS#8319 mdb_load error messages
  96. Fix ITS#8320 mdb_load plaintext input
  97. Added mdb_txn_id() (ITS#7994)
  98. Added robust mutex support
  99. Miscellaneous cleanup/simplification
  100. Build
  101. Create install dirs if needed (ITS#8256)
  102. Fix ThreadProc decl on Win32/MSVC (ITS#8270)
  103. Added ssize_t typedef for MSVC (ITS#8067)
  104. Use ANSI apis on Windows (ITS#8069)
  105. Use O_SYNC if O_DSYNC,MDB_DSYNC are not defined (ITS#7209)
  106. Allow passing AR to make (ITS#8168)
  107. Allow passing mandir to make install (ITS#8169)
  108. LMDB 0.9.16 Release (2015/08/14)
  109. Fix cursor EOF bug (ITS#8190)
  110. Fix handling of subDB records (ITS#8181)
  111. Fix mdb_midl_shrink() usage (ITS#8200)
  112. LMDB 0.9.15 Release (2015/06/19)
  113. Fix txn init (ITS#7961,#7987)
  114. Fix MDB_PREV_DUP (ITS#7955,#7671)
  115. Fix compact of empty env (ITS#7956)
  116. Fix mdb_copy file mode
  117. Fix mdb_env_close() after failed mdb_env_open()
  118. Fix mdb_rebalance collapsing root (ITS#8062)
  119. Fix mdb_load with large values (ITS#8066)
  120. Fix to retry writes on EINTR (ITS#8106)
  121. Fix mdb_cursor_del on empty DB (ITS#8109)
  122. Fix MDB_INTEGERDUP key compare (ITS#8117)
  123. Fix error handling (ITS#7959,#8157,etc.)
  124. Fix race conditions (ITS#7969,7970)
  125. Added workaround for fdatasync bug in ext3fs
  126. Build
  127. Don't use -fPIC for static lib
  128. Update .gitignore (ITS#7952,#7953)
  129. Cleanup for "make test" (ITS#7841), "make clean", mtest*.c
  130. Misc. Android/Windows cleanup
  131. Documentation
  132. Fix MDB_APPEND doc
  133. Fix MDB_MAXKEYSIZE doc (ITS#8156)
  134. Fix mdb_cursor_put,mdb_cursor_del EACCES description
  135. Fix mdb_env_sync(MDB_RDONLY env) doc (ITS#8021)
  136. Clarify MDB_WRITEMAP doc (ITS#8021)
  137. Clarify mdb_env_open doc
  138. Clarify mdb_dbi_open doc
  139. LMDB 0.9.14 Release (2014/09/20)
  140. Fix to support 64K page size (ITS#7713)
  141. Fix to persist decreased as well as increased mapsizes (ITS#7789)
  142. Fix cursor bug when deleting last node of a DUPSORT key
  143. Fix mdb_env_info to return FIXEDMAP address
  144. Fix ambiguous error code from writing to closed DBI (ITS#7825)
  145. Fix mdb_copy copying past end of file (ITS#7886)
  146. Fix cursor bugs from page_merge/rebalance
  147. Fix to dirty fewer pages in deletes (mdb_page_loose())
  148. Fix mdb_dbi_open creating subDBs (ITS#7917)
  149. Fix mdb_cursor_get(_DUP) with single value (ITS#7913)
  150. Fix Windows compat issues in mtests (ITS#7879)
  151. Add compacting variant of mdb_copy
  152. Add BigEndian integer key compare code
  153. Add mdb_dump/mdb_load utilities
  154. LMDB 0.9.13 Release (2014/06/18)
  155. Fix mdb_page_alloc unlimited overflow page search
  156. Documentation
  157. Re-fix MDB_CURRENT doc (ITS#7793)
  158. Fix MDB_GET_MULTIPLE/MDB_NEXT_MULTIPLE doc
  159. LMDB 0.9.12 Release (2014/06/13)
  160. Fix MDB_GET_BOTH regression (ITS#7875,#7681)
  161. Fix MDB_MULTIPLE writing multiple keys (ITS#7834)
  162. Fix mdb_rebalance (ITS#7829)
  163. Fix mdb_page_split (ITS#7815)
  164. Fix md_entries count (ITS#7861,#7828,#7793)
  165. Fix MDB_CURRENT (ITS#7793)
  166. Fix possible crash on Windows DLL detach
  167. Misc code cleanup
  168. Documentation
  169. mdb_cursor_put: cursor moves on error (ITS#7771)
  170. LMDB 0.9.11 Release (2014/01/15)
  171. Add mdb_env_set_assert() (ITS#7775)
  172. Fix: invalidate txn on page allocation errors (ITS#7377)
  173. Fix xcursor tracking in mdb_cursor_del0() (ITS#7771)
  174. Fix corruption from deletes (ITS#7756)
  175. Fix Windows/MSVC build issues
  176. Raise safe limit of max MDB_MAXKEYSIZE
  177. Misc code cleanup
  178. Documentation
  179. Remove spurious note about non-overlapping flags (ITS#7665)
  180. LMDB 0.9.10 Release (2013/11/12)
  181. Add MDB_NOMEMINIT option
  182. Fix mdb_page_split() again (ITS#7589)
  183. Fix MDB_NORDAHEAD definition (ITS#7734)
  184. Fix mdb_cursor_del() positioning (ITS#7733)
  185. Partial fix for larger page sizes (ITS#7713)
  186. Fix Windows64/MSVC build issues
  187. LMDB 0.9.9 Release (2013/10/24)
  188. Add mdb_env_get_fd()
  189. Add MDB_NORDAHEAD option
  190. Add MDB_NOLOCK option
  191. Avoid wasting space in mdb_page_split() (ITS#7589)
  192. Fix mdb_page_merge() cursor fixup (ITS#7722)
  193. Fix mdb_cursor_del() on last delete (ITS#7718)
  194. Fix adding WRITEMAP on existing env (ITS#7715)
  195. Fix nested txns (ITS#7515)
  196. Fix mdb_env_copy() O_DIRECT bug (ITS#7682)
  197. Fix mdb_cursor_set(SET_RANGE) return code (ITS#7681)
  198. Fix mdb_rebalance() cursor fixup (ITS#7701)
  199. Misc code cleanup
  200. Documentation
  201. Note that by default, readers need write access
  202. LMDB 0.9.8 Release (2013/09/09)
  203. Allow mdb_env_set_mapsize() on an open environment
  204. Fix mdb_dbi_flags() (ITS#7672)
  205. Fix mdb_page_unspill() in nested txns
  206. Fix mdb_cursor_get(CURRENT|NEXT) after a delete
  207. Fix mdb_cursor_get(DUP) to always return key (ITS#7671)
  208. Fix mdb_cursor_del() to always advance to next item (ITS#7670)
  209. Fix mdb_cursor_set(SET_RANGE) for tree with single page (ITS#7681)
  210. Fix mdb_env_copy() retry open if O_DIRECT fails (ITS#7682)
  211. Tweak mdb_page_spill() to be less aggressive
  212. Documentation
  213. Update caveats since mdb_reader_check() added in 0.9.7
  214. LMDB 0.9.7 Release (2013/08/17)
  215. Don't leave stale lockfile on failed RDONLY open (ITS#7664)
  216. Fix mdb_page_split() ref beyond cursor depth
  217. Fix read txn data race (ITS#7635)
  218. Fix mdb_rebalance (ITS#7536, #7538)
  219. Fix mdb_drop() (ITS#7561)
  220. Misc DEBUG macro fixes
  221. Add MDB_NOTLS envflag
  222. Add mdb_env_copyfd()
  223. Add mdb_txn_env() (ITS#7660)
  224. Add mdb_dbi_flags() (ITS#7661)
  225. Add mdb_env_get_maxkeysize()
  226. Add mdb_env_reader_list()/mdb_env_reader_check()
  227. Add mdb_page_spill/unspill, remove hard txn size limit
  228. Use shorter names for semaphores (ITS#7615)
  229. Build
  230. Fix install target (ITS#7656)
  231. Documentation
  232. Misc updates for cursors, DB handles, data lifetime
  233. LMDB 0.9.6 Release (2013/02/25)
  234. Many fixes/enhancements
  235. LMDB 0.9.5 Release (2012/11/30)
  236. Renamed from libmdb to liblmdb
  237. Many fixes/enhancements