Skip to content

Instantly share code, notes, and snippets.

@hyc
Last active August 29, 2015 14:14
Show Gist options
  • Save hyc/c8dc7d17d107bf226d26 to your computer and use it in GitHub Desktop.
Save hyc/c8dc7d17d107bf226d26 to your computer and use it in GitHub Desktop.
Safely managing multiple files in a DB is hard
Look at all the bugs in BerkeleyDB's history that are directly attributable to needing
to manage multiple files in a transactional context. The SleepyCat/BerkeleyDB folks were
smart guys but they still got tripped up by this, over and over again. One of the key
principles to LMDB is "don't do anything that's hard" - this is why it's so reliable,
and why it's so efficient. All of the bugs listed here are a type of bug that is
impossible for LMDB to encounter, because LMDB never performs any such operations.
File-related bugs fixed in BDB 4.0
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_0_14.html
#4307
#3969
File-related bugs fixed in BDB 4.1
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_1_24.html
#4257
#4991
#5824
#5679
#5893
#5942
#4885
#5535
#5740
#5223
#5249
File-related bugs fixed in BDB 4.2
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_2_52.html
#0040
#6252
#6694
#7345
#7363
#7581
#7789
#7819
#7917
#8340
#6286
#6695
#6902
#7322
#7345
#7728
#8235
#7294
#8716
#8729
#8710
#6999
#7578
#7780
#8423
#8496
#9039
#6862
#7537
#7051
File-related bugs fixed in BDB 4.3
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_3_29.html
#10180
#10286
#10537
#10415
#10760
#10773
#12598
#9291
#9462
#9775
#9781
#10591
#10726
#9452
#9636
#10204
#9529
#9461
#10026
#10783
File-related bugs fixed in BDB 4.4
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_4_16.html
#12125
#12906
#10564
#12017
#12179
#11185
#12505
#11643
#12178
#12743
#13026
File-related bugs fixed in BDB 4.5
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_5_20.html
#14693
#14998
#14031
#14133
#14780
#14438
#13986
#14090
#14874
#14544
#11118
#13884
#14179
#13848
#15063
File-related bugs fixed in BDB 4.6
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_6.html
#15650
#6538
#14785
#15092
#15108
#15119
#15151
#15302
#15346
#15346
#8037
#14157
#15222
#15459
#9101
#15135
#15137
#15395
File-related bugs fixed in BDB 4.7
https://gitorious.org/berkeleydb/berkeleydb/source/347d239a1e44ed4f773ae9274c2a32cf2b8999c0:docs/upgrading/changelog_4_7.html
#15097
#15758
#15650
#15662
#15671
#15953
#16013
#15918
#15692
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment