Split -datadir option into -walletdir and -blocksdir #3214

issue laanwj openend this issue on November 6, 2013
  1. laanwj commented at 11:19 am on November 6, 2013: member

    Split -datadir option into -walletdir and -blocksdir options. The old option -datadir would be kept around and sets both.

    This makes it possible to store the bitcoin.conf (using -conf) the block chain (using -blocksdir) and the wallet(s) (using -walletdir) all in different places without resorting to symbolic links, junctions and other OS-specific magic (which causes some problems, especially windows junctions).

    I think -conf should default to bitcoin.conf in the walletdir, though this is open to discussion.

    bootstrap.dat, debug.log and other non-wallet client data would be stored in the blocksdir.

    Locks will be needed in both the block chain and wallet directories to make sure they are not shared between running instances of bitcoind/-qt.

    Anyone agree?

  2. Suffice commented at 8:48 pm on November 6, 2013: none
    In addition to this, a way to set or change the directories in the setup and settings would be convenient. Dealing with moving and merging files like the wallet file might be tricky.
  3. deed02392 commented at 0:36 am on November 17, 2013: none
    I am a supporter of this enhancement. The wallet is arguably far more sensitive than the blocks, but since there is a huge difference in size between the wallet and blocks it would make things a lot more practical to only have to put the wallet on an encrypted drive. Right now I have the blockchain and wallet.dat on a network drive (don’t have enough local storage for the blockchain). In addition it might be worth not auto-generating a new wallet.dat if a walletdir argument is given too, as in this case it probably just means the user hasn’t mounted their wallet’s secure vault.
  4. kuzetsa commented at 7:33 pm on November 17, 2013: none
    I support this as well. Needs to happen.
  5. gmaxwell commented at 8:20 pm on November 17, 2013: contributor
    Does “blocksdir” move only blocks or also chainstate/? Blocks and chainstate have pretty different access patterns. Would debug.log follow blocksdir?
  6. laanwj commented at 8:08 am on November 18, 2013: member

    @gmaxwell my idea would be to have everything but the wallet (and database env) follow the blocksdir. So indeed: blocksdir isn’t a good name. Any suggestion with regard to naming?

    My intention is to split the data that the wallet needs (wallet.dat, bdb database logs) and the data the the block chain processing P2P client needs (logging, peer data, chain state, and block data). Of course it could be subdivided further if useful, but the most common case would be this.

  7. laanwj commented at 7:43 am on May 2, 2014: member
    Closing this. No need to do implementation work for this, it will naturally resolve itself when the wallet is separated out, as different data directories can be passed to both programs.
  8. laanwj closed this on May 2, 2014

  9. Bushstar referenced this in commit 05ac4dbb45 on Apr 8, 2020
  10. DrahtBot locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-09-29 04:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me