Bitcoin ignores datadir and blocksdir parameter in .conf #27246

issue de-served openend this issue on March 12, 2023
  1. de-served commented at 1:46 pm on March 12, 2023: none

    Is there an existing issue for this?

    • Similar questions was raised in #15745 but it is marked as “solved” and closed.

    Current behaviour

    Registry has a REG_SZ key HKEY_CURRENT_USER\SOFTWARE\Bitcoin\Bitcoin-Qt\strDataDir (and there can be Bitcoin-Qt-regtest\strDataDir, Bitcoin-Qt-testnet\strDataDir for test chains). It is created by default when bitcoin-qt starts first time and after editing/accepting first start wizard. Change database directory to non-default path, put there bitcoin.conf with datadir=databasepath and run bitcoin-qt (-cli/etc) and bitcoin ignores datadir path if no -datadir argument passed to a program exclusively. The same problem with the blocksdir parameter.

    Expected behaviour

    In all situations behavior must be identical - if we start without arguments or pass “-conf” then use .conf “datadir=path” (according to sections [main], [regtest], [test] or global if there are no sections) if .conf exists and datadir are there. Now it is ignored. If we start with “-datadir=path” argument it’s works.


    Steps to reproduce

    1. For example, change HKEY_CURRENT_USER\SOFTWARE\Bitcoin\Bitcoin-Qt\strDataDir to W:\BitcoinCore\strDataDir (assuming our disk is W: and all paths in this example exists).
    2. Create W:\BitcoinCore\strDataDir\bitcoin.conf with three lines: datadir=W:/BitcoinCore/DataDir/main1 [main] datadir=W:/BitcoinCore/DataDir/main2
    3. Start bitcoin-qt.exe -debuglogfile=W:/BitcoinCore/debug.no_params.log
    4. After a few seconds close opened wallet (bitcoin-qt) [Alt-F4].
    5. Start bitcoin-qt.exe -datadir=W:\BitcoinCore\DataDir\main -debuglogfile=W:\BitcoinCore\debug.w_datadir_param.log
    6. After a few seconds close opened wallet (bitcoin-qt) [Alt-F4].
    7. Start bitcoin-qt.exe -conf=W:\BitcoinCore\strDataDir\bitcoin.conf -debuglogfile=W:\BitcoinCore\debug.w_conf_param.log
    8. After a few seconds close opened wallet (bitcoin-qt) [Alt-F4].
    9. Check filesystem and logs (attached).

    I’ve used Sysinternals Process Monitor to dig what’s happening.


    Relevant log output

    debug.no_params.log:

    Default data directory C:\Users\USERNAME\AppData\Roaming\Bitcoin Using data directory W:\BitcoinCore\strDataDir Config file: W:\BitcoinCore\strDataDir\bitcoin.conf Config file arg: datadir=“W:/BitcoinCore/DataDir/main1” Config file arg: [main] datadir=“W:/BitcoinCore/DataDir/main2” Creating peers.dat because the file was not found (“W:\BitcoinCore\strDataDir\peers.dat”) Opening LevelDB in W:\BitcoinCore\strDataDir\blocks\index Opening LevelDB in W:\BitcoinCore\strDataDir\chainstate

    debug.w_datadir_param.log:

    Default data directory C:\Users\USERNAME\AppData\Roaming\Bitcoin Using data directory W:\BitcoinCore\DataDir\main Config file: W:\BitcoinCore\DataDir\main\bitcoin.conf (not found, skipping) Command-line arg: datadir=“W:\\BitcoinCore\\DataDir\\main” Opening LevelDB in W:\BitcoinCore\\DataDir\main\blocks\index Opening LevelDB in W:\BitcoinCore\DataDir\main\chainstate

    debug.w_conf_param.log output is identical to debug.no_params.log.


    How did you obtain Bitcoin Core

    1. Downloaded from bitcoincore.org/bin
    2. Compiled from source

    What version of Bitcoin Core are you using?

    24.0.1

    Operating system and version

    Win 10 x64

    Machine specifications

    Non relevant

  2. de-served renamed this:
    Bitcoin ignores datadir parameter in .conf when started without parameters
    Bitcoin ignores datadir parameter in .conf
    on Mar 12, 2023
  3. fanquake added the label Windows on Mar 12, 2023
  4. de-served commented at 4:00 pm on March 12, 2023: none
    @fanquake, I suppose it can be OS independent bug.
  5. de-served renamed this:
    Bitcoin ignores datadir parameter in .conf
    Bitcoin ignores datadir and blocksdir parameter in .conf
    on Mar 12, 2023
  6. bitcoin deleted a comment on Mar 13, 2023
  7. maflcko added the label Utils/log/libs on Mar 13, 2023
  8. hebasto commented at 10:21 am on March 13, 2023: member

    There were some changes in the code which is responsible for handling settings. @desirepl

    Mind checking out the recent master branch please?

  9. de-served commented at 12:22 pm on March 13, 2023: none
    I see only translation changes 2 hours ago. I’m not so familiar with git, so checked code updates here at main and other branches. Only your updates to translations 2 hours ago. Seems doing something wrong or don’t understand.
  10. hebasto commented at 1:18 pm on March 13, 2023: member

    I see only translation changes 2 hours ago. I’m not so familiar with git, so checked code updates here at main and other branches. Only your updates to translations 2 hours ago. Seems doing something wrong or don’t understand, короче.

    I’m talking about changes since v24.0.1 release which was tested by you. For example, #27150.

  11. de-served commented at 1:35 pm on March 13, 2023: none

    I’m talking about changes since v24.0.1 release which was tested by you. For example, #27150.

    Omg. I’ve cloned not the last code. I thought after “git tag” that 24.0.1 is the latest, not the rc’s. Ok, I’ll try later when it’s be possible. Now it isn’t.

  12. pinheadmz commented at 5:29 pm on March 14, 2023: member

    I couldn’t reproduce this issue on macOS, here’s what I tried:

    • remove bitcoin plist file
    • open bitcoin-qt with -regtest, setup wizard pops up, enter custom non-default path
    • close bitcoin
    • add bitcoin.conf file at custom path including the line blocksdir=/tmp/blocks-test
    • restart bitcoin-qt

    the result was expected, bitcoin used the specified blocks directory.

  13. de-served commented at 6:46 pm on March 14, 2023: none
    @hebasto git clone –depth 1 > build > run & tested all the same, it ignores .conf’s datadir @pinheadmz add custom datadir too and look where bitcoin will write it’s data - to the non-default path you entered before or to the conf’s path
  14. pinheadmz commented at 8:26 pm on March 14, 2023: member
    @desirepl ok got it, I can reproduce. I think this is only an issue with the GUI. I also noticed one or two other little oddities around config file and will open a PR soon.
  15. de-served commented at 10:29 pm on March 14, 2023: none

    @pinheadmz bitcoin-cli also ignores .conf’s datadir (and blocksdir, now I forgot what’s wrong with that, maybe when it ignores datadir same time it ignores blocksdir :( I can’t read cpp code so can’t help there much), so not only GUI That’s why I adopded my code to run -qt/cli with addition of both datadir and blocksdir arguments, not only datadir. Some of the 3 days tests (alot of them) lead me to that decision. maybe bitcoind too, didn’t checked it, because spent too much time for -qt/-cli to understand why it’s not working as must be

    PS: label [Windows] is wrong, it’s OS irrelevant as I supposed in #27246 (comment)

  16. maflcko removed the label Windows on Mar 15, 2023
  17. maflcko added the label GUI on Mar 15, 2023
  18. de-served commented at 1:23 pm on March 15, 2023: none

    It’s not the only GUI bug.

    1. Start bitcoind -debuglogfile
    2. It says it’s default datadir is in %AppData%\Bitcoin and “using this data directory” if no bitcoin.conf there (-qt.exe reads Registry value for default datadir in that case)
    3. Place bitcoin.conf there and add two lines: datadir and blocksdir (out of sections, in global scope)
    4. Start bitcoind -debuglogfile again
    5. It says it’s default datadir and using it the same as in 2; blocksdir is used as in .conf. Now it is ignoring datadir in global scope
    6. Edit bitcoin.conf and add section [main], place there other datadir
    7. Repeat N4
    8. Now it says it’s default datadir is in %AppData% but using datadirectory from [main] section in .conf

    The same with -cli For example, if I run bitcoin-cli -getinfo (no running bitcoin client, just to see what’s happening) and when bitcoin.conf is in %AppData% and in state as in N3 - then -cli searching for cookie in %AppData% and not in the datadir in .conf, but when datadir is in [main] section then running cli -getinfo searching for cookie in datadir from conf.

    So it is NOT GUI relevand and NOT OS relevant as stated previously.

  19. de-served commented at 2:28 pm on March 15, 2023: none
    bitcoin_wallet -datadir=*** info: “Failed to load database path ‘***’. Data is not in recognized format.” *** = any valid datadir/blocksdir/walletdir (only one wallet is in sqlite format, regtest) bitcoin_wallet searches wallets on datadir? but for other tools there are walletdir parameter…
  20. ryanofsky commented at 3:46 pm on March 15, 2023: contributor

    It seems like there is a problem to be addressed here, though I’m not 100% sure what the best way to address it would be. You could have a datadir A containing a bitcoin.conf file specifying another datadir B that contains another bitcoin.conf file specifying another datadir C that contains another bitcoin.conf file, and so on.

    Various ways this could be handled:

    1. Follow the path forever just merging all the bitcoin.conf settings values together and only failing if there is a loop.
    2. Follow the path forever, but just use the final datadir and settings from the final bitcoin.conf file. Make it an error or warning if there are settings from earlier bitcoin.conf files that are ignored.
    3. Follow the path until parsing the first conf file. Make it an error or warning if the conf file specifies a datadir with a different bitcoin.conf file and that file would be ignored.

    I believe the current behavior is basically (3) for bitcoind (but not bitcoin-qt, see below) except we are missing errors/warnings if there is an ignored bitcoin.conf file in the last datadir. Relevant code is:

    https://github.com/bitcoin/bitcoin/blob/8c4958bd4c06026dc108bc7f5f063d1f389d279b/src/common/init.cpp#L20-L49

    I think if we keep stick with option 3 and just add an error if the datadir contains a bitcoin.conf file that is being ignored, that should be good enough for most use-cases. But if there are applications for options 1 or option 2, it would be interesting to know about them, they wouldn’t be much harder to implement.


    Unfortunately the behavior for bitcoin-qt is stupider than bitcoind, because if the user chooses a GUI datadir setting that is different in any way from the default datadir setting, the Intro::showIfNeeded function makes the GUI datadir setting sticky, overriding any value in bitcoin.conf:

    https://github.com/bitcoin/bitcoin/blob/8c4958bd4c06026dc108bc7f5f063d1f389d279b/src/qt/intro.cpp#L259-L266

    ~The comment in that code about “make it possible to override -datadir in the bitcoin.conf file” is not correct, because at the time of that Intro::showIfNeeded is called, the bitcoin.conf file will not have been parsed, so SoftSetArg will override any value bitcoin.conf may contain. It seems like that comment was not correct even at the time when it was written in https://github.com/bitcoin/bitcoin/pull/3935/commits/c61fe44194ea6d549adfe9ae944ce6fa3a467e0f from #3935~. (EDIT: Technically the comment is correct because it doesn’t say it is always possible for bitcoin.conf datadir= setting to be applied, just that it is sometimes possible for it to be applied. It would been better if the code always let the bitcoin.conf setting take precedence consistently, but the comment does accurately describe what the code does)

    Cleanest way to fix GUI issue would be probably be for Qt to override the lower priority GetDefaultDataDir value, instead of using SoftSetArg and changing the datadir setting.

  21. ryanofsky commented at 3:58 pm on March 15, 2023: contributor

    bitcoin_wallet searches wallets on datadir? but for other tools there are walletdir parameter…

    This looks like another thing that should be fixed, though in practice right now bitcoin-wallet only operates on one wallet at a time, so if you wanted to specify bitcoin-wallet -walletdir=/path -wallet=mywallet you could just specify bitcoin-wallet -wallet=/path/mywallet instead

    The bitcoin-wallet code actually would already use the -walletdir value if it could be passed:

    https://github.com/bitcoin/bitcoin/blob/8c4958bd4c06026dc108bc7f5f063d1f389d279b/src/wallet/walletutil.cpp#L15

    It just can’t be passed right now because SetupWalletToolArgs does not add it:

    https://github.com/bitcoin/bitcoin/blob/8c4958bd4c06026dc108bc7f5f063d1f389d279b/src/bitcoin-wallet.cpp#L32

  22. de-served commented at 4:21 pm on March 15, 2023: none

    @ryanofsky “Various ways this could be handled” Let’s think about situation:

    1. we have external dir/disk with blocks only (blk* and rev* for now are stick together :|)
    2. we have datadir with indexes/chainstate and other files currently belongs to datadir (peers/mempool etc) at another second/disk
    3. we have configuration files at third dir/disk
    4. we have logdir for everything at fourth dir/disk

    It’s a good solution to divide them all. Now we do some magic - place bitcoin.conf at default datadir, add datadir/blockdir/debuglogfile there. And… if all this is “online” (exist or connected etc) then all goes right, everything starts and work. if not exist/unavailable - then any tool can’t start with errors/warnings and this is fine.

    Now all this ignores .conf when starting core utils. And if I don’t need by any reason to write anything to %AppData% especially bitcoin blockchain now it is filling with unneeded files and crushing everything. To “fix” that I need to remember each time add parameters to programs, make links for that or any other thing must be remembered. I or any other IT in most of the cases if using it everyday will remember. But if just occasionally? (my case now) or just unexperienced user that just want to have his “little SSD” with just an OS and other things at external drives? Now it is a challenge and people can think that they are stupid because something goes wrong but they don’t understand what’s wrong. “Googling” it without results but there just a couple of bugs.

    So answering your question - yes, it must check conf at default dir, open it, get parameters from it, use them, if there are datadir again - take conf from there… or, add another parameter that will allow recursion of conf’s in datadirs? But original .conf parameters must be used 100%. datadir too - there must be placed indexes, chainstate etc.

  23. ryanofsky commented at 5:12 pm on March 15, 2023: contributor

    @desirepl thanks for clarifying your use case, that makes a lot of sense. I see the appeal of placing a stub bitcoin.conf in the default location that points to other blocks, index, and log directories, as well as to another config file. This lets you specify disk layout separately from network configuration, and makes applications and command line utilities work “magically” as you say without requiring manual arguments.

    So I can see how behavior (3) from #27246 (comment) of only using the first bitcoin.conf file and not loading another bitcoin.conf file in the new datadir would be unappealing, while (1) would be more appealing. Behavior (2) would also not be helpful because it would only load settings from the last bitcoin.conf file.

    However, I don’t actually think you need behavior (1), because instead of relying on datadir= in the original config file to implicitly load another config file, you could explicitly specify includeconf= in the original config file to include the other config file.

    So I think (3) might be a better solution than (1), as long as there is an explicit error when a datadir contains a bitcoin.conf that is being ignored. (Right now the second bitcoin.conf file is being silently ignored which is bad.) The reason I think that (3) could be better than (1) is that bitcoin settings precedence is already very confusing (see #17508) so merging multiple config files together when they might contain duplicate settings could lead to surprising and unintuitive behaviors. If you explicitly include another conf file with includeconf, then we can be pretty sure that you actually want multiple config files to be merged. But if you just happen to have two bitcoin.conf files in two different datadirs, it’s not obvious that you want the files merged or you how want to merge them. You could accidentally have two bitcoin.conf files because of a configuration error, or a failed data transfer, or bad backup. So it would seem safest to just stop and treat this is a misconfiguration.

  24. pinheadmz commented at 5:18 pm on March 15, 2023: member

    @ryanofsky there is a discrepancy between bitcoind and the GUI though. I think it comes down to this line:

    https://github.com/bitcoin/bitcoin/blob/8c4958bd4c06026dc108bc7f5f063d1f389d279b/src/qt/intro.cpp#L259-L265

    The comment is well-meaning but I think what ends up happening is that SoftSetArg() ends up calling ForceSetArg() and that setting takes precedence over the datadir setting in the actual conf file.

    with bitcoind you CAN:

    • put conf file in default location
    • that conf file specifies separate datadir and blocksdir

    but the GUI also has this QSettings object which is stored in the system and is parsed before anything else. so if a non-default location is specified there the behavior changes.

    It almost seems like datadir is over-used. There really is a confdir, datadir and blocksdir especially from the GUI perspective

  25. ryanofsky commented at 6:00 pm on March 15, 2023: contributor

    @ryanofsky there is a discrepancy between bitcoind and the GUI though. I think it comes down to this line:

    Yes, that’s a bug. That’s the same line I pointed to above in “Unfortunately the behavior for bitcoin-qt is stupider than bitcoind” #27246 (comment). It’s a simple precedence bug and fix should be straightforward.

    the GUI also has this QSettings object which is stored in the system and is parsed before anything else. so if a non-default location is specified there the behavior changes.

    Right, this is basically the way it was designed and it means the bitcoin GUI and CLI tools can interact poorly. I think a better design make GUI and CLI programs both use GetDefaultDataDir() consistently. The GUI would still need a way to let users configure an external data directory but it could do that by just making a GetDefaultDataDir() a symlink to that directory (or a text file on operating systems that do not support symlinks), instead of recording the external data directory in a QSettings “strDataDir” field inaccessible to CLI tools.

    It almost seems like datadir is over-used. There really is a confdir, datadir and blocksdir especially from the GUI perspective

    This is probably true, but also probably there should be a simple way to just specify one data path. All of this could be revisited but if we just fix two bugs (bitcoin GUI precedence bug, and bitcoin.conf being silently ignored in second datadir instead of triggering a configuration error), I think this issue could be resolved)

  26. pinheadmz commented at 6:01 pm on March 15, 2023: member
    👍 PR in progress on this branch: https://github.com/pinheadmz/bitcoin/commits/conf-file
  27. ryanofsky commented at 7:17 pm on March 15, 2023: contributor

    +1 PR in progress on this branch: https://github.com/pinheadmz/bitcoin/commits/conf-file

    Thanks, just some quick feedback on 2a2488fab691a69b66395929a2c645b4a2649ace: I don’t think it would be good to add a new level of settings precedence just to deal with this one GUI setting. We migrated other settings out of QSettings which are not GUI specific in https://github.com/bitcoin-core/gui/pull/602 and we can migrate strDataDir as well to avoid unnecessary differences between CLI and GUI behavior (one way to do it would be the way described above “I think a better design” #27246 (comment)).

    A simpler way to fix the GUI bug here would just be to add a ArgsManager std::optional<fs::path> m_default_datadir member and have the GUI set m_default_datadir instead of calling SoftSetArg, and have GetDefaultDataDir() return m_default_datadir if it is set.

  28. pinheadmz commented at 1:54 pm on March 21, 2023: member

    @desirepl PR #27273 is ready for review, are you able to try it out / review? See if it fixes your use-case and leave a comment if you can.

    I did not address anything directly related to bitcoin-cli, I wasn’t able to reproduce any issues and I’m not exactly sure what your cli issue was. Can you provide steps and unexpected behavior for that?

  29. ryanofsky commented at 5:22 pm on March 21, 2023: contributor

    I did not address anything directly related to bitcoin-cli, I wasn’t able to reproduce any issues and I’m not exactly sure what your cli issue was. Can you provide steps and unexpected behavior for that?

    The issue with bitcoind described #27246 (comment) is that a config file specifying a datadir which contains a second config file will ignore the second config file with no warning. I outlined three solutions for this issue here: #27246 (comment) and implemented the third solution in a branch here: https://github.com/bitcoin/bitcoin/compare/master...ryanofsky:bitcoin:pr/ignoredconf

    I haven’t posted a PR yet because I’m working on a python test which is a little tricky to implement.

    EDIT: This is now posted as #27302

  30. ryanofsky referenced this in commit 78ef44bb34 on Mar 22, 2023
  31. ryanofsky referenced this in commit c661be4e7f on Mar 22, 2023
  32. ryanofsky referenced this in commit 780c696fc3 on Mar 23, 2023
  33. ryanofsky referenced this in commit 53d99551e9 on Mar 23, 2023
  34. ryanofsky referenced this in commit 972335762a on Mar 23, 2023
  35. ryanofsky referenced this in commit d00762c75a on Mar 23, 2023
  36. ryanofsky referenced this in commit 37ffeca9e0 on Mar 23, 2023
  37. ryanofsky referenced this in commit 94505e0a13 on Mar 27, 2023
  38. ryanofsky referenced this in commit 385b3e5f97 on Apr 5, 2023
  39. ryanofsky referenced this in commit a10150b9b6 on Apr 5, 2023
  40. ryanofsky referenced this in commit 9a0d526e8b on Apr 21, 2023
  41. ryanofsky referenced this in commit 367d6106a2 on Apr 21, 2023
  42. ryanofsky referenced this in commit fe124063e5 on Apr 25, 2023
  43. de-served commented at 10:16 pm on May 8, 2023: none

    @pinheadmz W:\BitcoinCore\_strDataDir\bitcoin.conf:

    0blocksdir="W:/BitcoinCore/BlocksDir_/_.no_params"
    1datadir="W:/BitcoinCore/DataDir_/_.no_params"
    

    2023-05-08T22:11:59Z Using data directory W:\BitcoinCore\_strDataDir (this was read from hive) 2023-05-08T22:11:59Z Config file: W:\BitcoinCore\_strDataDir\bitcoin.conf 2023-05-08T22:11:59Z Config file arg: blocksdir=“W:/BitcoinCore/BlocksDir_/_.no_params” 2023-05-08T22:11:59Z Config file arg: datadir=“W:/BitcoinCore/DataDir_/_.no_params” (ignored)

    adding to bitcoin.conf:

    0[main]
    1datadir="W:/BitcoinCore/DataDir_/_1"
    

    2023-05-08T22:17:45Z Using data directory W:\BitcoinCore\_strDataDir 2023-05-08T22:17:45Z Config file arg: [main] datadir=“W:/BitcoinCore/DataDir_/_1” (ignored too)

    Moreover: bitcoin.conf:

    0[regtest]
    1datadir     =W:/BitcoinCore/DataDir_/_2
    2debuglogfile=H:/_Logs_/BitcoinCore/_debug.default-reg.2_regtest.no_params.log
    

    [regtest] datadir didn’t exist

    bitcoin-qt.exe -debuglogfile=H:\_Logs_\BitcoinCore\debug.no_params.log -regtest GUI error: no datadir. Logfile: (?) no log files, nor that in commandline, nor that in config!

  44. de-served commented at 9:12 am on May 22, 2023: none
    Ping
  45. ryanofsky commented at 3:26 pm on May 22, 2023: contributor

    re: #27246 (comment)

    2023-05-08T22:11:59Z Config file arg: datadir=“W:/BitcoinCore/DataDir_/_.no_params” (ignored)

    Thanks again @de-served for the new report. The problem you are seeing here is the problem I previously described:

    Unfortunately the behavior for bitcoin-qt is stupider than bitcoind, because if the user chooses a GUI datadir setting that is different in any way from the default datadir setting, the Intro::showIfNeeded function makes the GUI datadir setting sticky, overriding any value in bitcoin.conf

    in #27246 (comment)

    So you are seeing the datadir= setting in your bitcoin.conf file being ignored because bitcoin-qt’s datadir logic is convoluted and was not written to support your use-case.

    My recommendation for you personally would be to configure the GUI to use the default datadir and place your bitcoin.conf file in C:\Users\USERNAME\AppData\Roaming\Bitcoin instead of W:\BitcoinCore\_strDataDir\bitcoin.conf. If it is important for you to specify the blocksdir= and datadir= settings in a configuration file on your W: drive instead of your C: drive, you should be able to just put includeconf=W:\BitcoinCore\_strDataDir\bitcoin.conf in the configuration file on the C: drive.

    Alternately, you could configure the GUI to use the default datadir C:\Users\USERNAME\AppData\Roaming\Bitcoin but make that path a symbolic link pointing to the W:\BitcoinCore\_strDataDir directory, instead of a normal directory. As long as the GUI is configured to use the default datadir, and not a custom datadir, the datadir= setting in your bitcoin.conf file should not be ignored.

    So overall, I think we are aware of the problems here and have some reasonable solutions that should work for you currently.

    To fix the problem in the longer term pinheadmz opened a PR #27273 that addresses your issue head-on by making the datadir in the bitcoin.conf file always override the windows registry setting, instead of conditionally overriding it. I reviewed that PR but did not think it was safe because it could cause backwards compatibility issues and subtly break working configurations. So I am working on new approach in #27409 that gets rid of the registry setting entirely, and includes a migration path and prompt to let the user resolve explicitly any ambiguities. I hope #27409 will be ready soon, but it’s just been slow because it does have a lot of cases to handle so I’ve been trying to find a good way to add unit test coverage for all of them.

  46. de-served commented at 5:17 am on May 23, 2023: none

    My recommendation for you personally would be to configure the GUI to use the default datadir and place your bitcoin.conf file in C:\Users\USERNAME\AppData\Roaming\Bitcoin instead of

    It’s already here… for a “debug” what’s happening:

    0datadir     =W:/BitcoinCore/DataDir_/_User
    1blocksdir   =W:/BitcoinCore/BlocksDir_/_User
    2walletdir   =W:/BitcoinCore/WalletDir_/_User
    3debuglogfile=H:/_Logs_/BitcoinCore/_debug.default-appdata.no_params.log
    4
    5[main]
    6datadir     =W:/BitcoinCore/DataDir_/_User1
    

    If any of these params are in use then there must be records in log… but no. :|

    PS: Think about use case, where %AppData% can’t be used and must be clean and there should be no any trace. PPS: Waiting for patch from pinheadmz. When I will have opportunity (very rare now) then I’ll comment it out.

  47. ryanofsky referenced this in commit 3746f00be1 on May 23, 2023
  48. fanquake referenced this in commit 66b08e7822 on May 26, 2023
  49. pinheadmz commented at 7:14 pm on May 31, 2023: member
    I think this can be closed as solved by #27302 ?
  50. pinheadmz assigned pinheadmz on Jun 2, 2023
  51. luke-jr referenced this in commit d0000b6c55 on Aug 16, 2023
  52. janus referenced this in commit b8ff0252cc on Sep 3, 2023

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-11-21 09:12 UTC

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