|
From: | Carl Dong |
Subject: | bug#34170: bitcoin-core bundles leveldb |
Date: | Wed, 5 Jan 2022 12:40:48 -0500 |
Simon, Maxime, Danny, Thanks for CCing me on this message! The rationale for bundling leveldb in Bitcoin Core goes a bit beyond convenience, it is several things: 1. The original reason for sub-treeing is that Bitcoin Core used to maintain its own version of leveldb with its own fixes here: https://github.com/bitcoin-core/leveldb-subtree, since then most of these fixes have been upstreamed as of: https://github.com/bitcoin/bitcoin/pull/17398 2. We also used to support using an external leveldb, however, it seems that it was fragile to rely on external projects to maintain ABI compatibility, see the quoted IRC bug report here: https://github.com/bitcoin/bitcoin/pull/23282. Reasonable minds may disagree on this point, especially coming from Guix where patching is convenient. In addition to the above, Bitcoin Core experienced a hard fork in 2013 due to database incompatibilities, which has predisposed maintainers towards a more stringent approach with pinning dependencies and their configure/build-time flags. See: https://blog.bitmex.com/bitcoins-consensus-forks/#was-the-2013-incident-a-hardfork Let me know if I can provide more context! Cheers, Carl Dong
|
[Prev in Thread] | Current Thread | [Next in Thread] |