Skip to content

Conversation

@jonasschnelli
Copy link
Contributor

Try to hide CDB/bitdb behind CWalletDB.
This is a first chunk of changes (does not cover everything to avoid an oversized PR).

Prepare for full wallet database abstraction which is required for smooth migration to a different wallet database format (must be supported in parallel).

We probably shouldn't stay forever with Berkley-DB4.8.

@pstratem
Copy link
Contributor

Concept ACK

@maflcko
Copy link
Member

maflcko commented Aug 24, 2016 via email

@jonasschnelli
Copy link
Contributor Author

Pure moving was not possible. This PR does separate "mixed" code into parts covered by the wallet logic and other parts covered by the database storage logic.

@dcousens
Copy link
Contributor

concept ACK

@fanquake
Copy link
Member

fanquake commented Sep 9, 2016

This needs a rebase.

@jmcorgan
Copy link
Contributor

jmcorgan commented Dec 3, 2016

I have a rebased version of this at jmcorgan/2016/12/bdb_abstraction_2. @jonasschnelli Feel free to clone this and push to update this PR.

Try to hide CDB/bitdb behinde CWalletDB.
Prepare for full wallet database abstraction.
@jonasschnelli jonasschnelli force-pushed the 2016/08/bdb_abstraction_2 branch from fa40017 to 7184e25 Compare March 6, 2017 10:30
@jonasschnelli
Copy link
Contributor Author

Rebased.
Again, this moves some of the direct BDB interaction from walletdb to the BDB abstraction class CDBEnv.
This is a stepping stone for a clean wallet database abstraction.

@laanwj
Copy link
Member

laanwj commented Mar 6, 2017

utACK 7184e25

@laanwj laanwj merged commit 7184e25 into bitcoin:master Mar 6, 2017
laanwj added a commit that referenced this pull request Mar 6, 2017
7184e25 [Wallet] refactor CWallet/CWalletDB/CDB (Jonas Schnelli)

Tree-SHA512: a1993dcfc3505459613e8be3f6560ef32466fd7c649bff358f12af118e633aadd648a090f4af60743a827c9cb624e4ec63eb0202326da4779fc18249bb77da1e
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Feb 5, 2019
7184e25 [Wallet] refactor CWallet/CWalletDB/CDB (Jonas Schnelli)

Tree-SHA512: a1993dcfc3505459613e8be3f6560ef32466fd7c649bff358f12af118e633aadd648a090f4af60743a827c9cb624e4ec63eb0202326da4779fc18249bb77da1e
Warrows added a commit to Warrows/PIVX that referenced this pull request Oct 14, 2019
Warrows added a commit to Warrows/PIVX that referenced this pull request Nov 23, 2019
random-zebra added a commit to PIVX-Project/PIVX that referenced this pull request Nov 15, 2020
…refactor.

58504c2 [Wallet] refactor CWallet/CWalletDB/CDB (Round 2) (furszy)
c16390d [Wallet] refactor CWallet/CWalletDB/CDB (Round 1) (furszy)
99adac0 C++11: s/boost::scoped_ptr/std::unique_ptr/ (furszy)
815773e use constant references for strings in functions in wallet/*.* (furszy)
24f1041 Do not shadow variables. (Pavel Janík)
6a0c59a wallet: Warn on unexpected EOF while salvaging wallet (Wladimir J. van der Laan)
12bc297 dbwrapper: Use new .data() method of CDataStream (Wladimir J. van der Laan)
b0f0d91 streams: Remove special cases for ancient MSVC (Wladimir J. van der Laan)
ba96777 streams: Add data() method to CDataStream (Wladimir J. van der Laan)
6ec0722 wallet: Use CDataStream.data() (Wladimir J. van der Laan)
ca1a3b0 [Wallet] remove unused code/conditions in ReadAtCursor (Jonas Schnelli)
fd259f3 remove unused classes from db.h (Philip Kaufmann)

Pull request description:

  Upgrading the wallet, wallet db and db wrapper areas with several back ports and updates adaptations.

  List of PRs:
  * dashpay#5933
  * bitcoin#7537
  * bitcoin#8191
  * bitcoin#8564
  * bitcoin#8574
  * bitcoin#8629
  * bitcoin#9353

  Note:
  Low priority PR, can be reviewing after merge Sapling and tier two PRs.
  I made it because we are pretty far from upstream in the db area and want to introduce some new functionality in the future that requires a more up-to-date db layer.

ACKs for top commit:
  random-zebra:
    ACK 58504c2 and merging...

Tree-SHA512: e5a700e855bcec20f0b74e41825ddc3a36b56a0cbe83212c93d212c06765254464999567b395584dfeb9d4b12999bc835d2e89949684d64b1503db36c53fd3c8
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants