Title: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: freedom149 on July 10, 2021, 04:48:50 AM
Hello there, I've installed Bitcoin Armory version 0.96.5-beta-8730390989 on Windows 10 image within Parallels on Mac OS X Big Sur 11.4 I've set the ArmoryDB and the Bitcoin blockchain to external hard drive paths in the GUI: In armoryqt.conf file I've also set: satoshi-datadir="R:\Bitcoin\blocks" dbdir="R:\ArmoryDB" I have Bitcoin Core running version 0.21.1 and it's running and correctly syncing the blockchain to R:\Bitcoin Everything seems to load up perfectly except for one single error. Here's the log file output: 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1164 - C++ block utilities loaded successfully 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1281 - 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1282 - 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1283 - 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1284 - ************************************************************ 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1285 - Invoked: C:\Program Files (x86)\Armory\ArmoryQt.exe 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1286 - ************************************************************ 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1287 - Loading Armory Engine: 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1288 - Armory Version : 0.96.5 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1289 - Armory Build: : 8730390989 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1290 - PyBtcWallet Version : 1.35 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1291 - Detected Operating system: Windows 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1292 - OS Variant : 10-10.0.19041--Multiprocessor Free 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1293 - User home-directory : C:\Users\carlos\AppData\Roaming 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1294 - Satoshi BTC directory : C:\Users\carlos\AppData\Roaming\Bitcoin 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1295 - Armory home dir : C:\Users\carlos\AppData\Roaming\Armory\ 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1296 - Detected System Specs : 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1297 - Total Available RAM : 2.98 GB 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1298 - CPU ID string : Intel64 Family 6 Model 142 Stepping 9, GenuineIntel 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1299 - Number of CPU cores : 2 cores 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1300 - System is 64-bit : True 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1301 - Preferred Encoding : cp1252 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1302 - Machine Arch : amd64 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1303 - Available HDD (ARM) : 1003 GB 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1304 - Available HDD (BTC) : 0 GB 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1305 - 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1306 - Network Name: Main Network 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1307 - Satoshi Port: 8333 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1308 - Do wlt check: True 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1309 - Named options/arguments to armoryengine.py: 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - force_segwit : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - nettimeout : 2 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - rescan : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - force_fcgi : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - ignoreAllZC : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - rescanBalance : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - disableModules : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - port : None 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - interport : 8223 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - coverageOutputDir: None 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - forceWalletCheck: False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - regtest : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - rebuild : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - thread_count : -1 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - datadir : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - clearMempool : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - offline : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - armoryDBDir : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - armorydb_port : 9001 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - satoshiPort : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - disableConfPermis: False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - useTorSettings : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - netlog : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - keypool : 100 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - coverageInclude : None 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - forceOnline : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - disableWalletCheck: False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - redownload : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - rpcBindAddr : 127.0.0.1 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - armorydb_ip : 127.0.0.1 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - multisigFile : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - ram_usage : -1 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - ignoreZC : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - logDisable : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - settingsPath : C:\Users\carlos\AppData\Roaming\Armory\ArmorySettings.txt 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - language : en 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - db_type : DB_FULL 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - doDebug : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - enableDetSign : True 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - mtdebug : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - testnet : False 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - rpcport : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - satoshiHome : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - satoshiRpcport : DEFAULT 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - logFile : C:\Users\carlos\AppData\Roaming\Armory\ArmoryQt.exe.log.txt 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1311 - verbosity : None 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1312 - Other arguments: 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1315 - ************************************************************ 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:1720 - C++ block utilities loaded successfully 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:3578 - Using settings file: C:\Users\carlos\AppData\Roaming\Armory\ArmorySettings.txt 2021-07-10 01:27:08 (ERROR) -- ArmoryUtils.pyc:3735 - Unsupported language specified. Defaulting to English (en) 2021-07-10 01:27:08 (INFO) -- ArmoryUtils.pyc:3738 - Using Language: en 2021-07-10 01:27:08 (INFO) -- BDM.pyc:353 - Using the asynchronous/multi-threaded BlockDataManager. 2021-07-10 01:27:08 (INFO) -- BDM.pyc:354 - Blockchain operations will happen in the background. 2021-07-10 01:27:08 (INFO) -- BDM.pyc:355 - Devs: check TheBDM.getState() before asking for data. 2021-07-10 01:27:08 (INFO) -- BDM.pyc:356 - Registering addresses during rescans will queue them for 2021-07-10 01:27:08 (INFO) -- BDM.pyc:357 - inclusion after the current scan is completed. 2021-07-10 01:27:11 (INFO) -- ArmoryUtils.pyc:3578 - Using settings file: C:\Users\carlos\AppData\Roaming\Armory\ArmorySettings.txt 2021-07-10 01:27:11 (INFO) -- ArmoryQt.py:2060 - loadWalletsAndSettings 2021-07-10 01:27:11 (INFO) -- ArmoryQt.py:2120 - Loading wallets... 2021-07-10 01:27:16 (INFO) -- ArmoryQt.py:2185 - Number of wallets read in: 1 2021-07-10 01:27:16 (INFO) -- ArmoryQt.py:2190 - Wallet (xxxxxx): "Restored - xxxxxx " (Encrypted) 2021-07-10 01:27:16 (INFO) -- ArmoryQt.py:2195 - Loading Multisig Lockboxes 2021-07-10 01:27:16 (INFO) -- ArmoryQt.py:1763 - acquiring process mutex... 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1395 - setupUriRegistration 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1513 - URL-register action: AskUser 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:566 - Usermode: Expert 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1698 - Changing usermode: 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1699 - From: Expert 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1707 - To: Expert 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1836 - startBitcoindIfNecessary 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1872 - setSatoshiPaths 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1891 - Setting satoshi datadir = R:\Bitcoin 2021-07-10 01:27:18 (INFO) -- SDM.pyc:171 - Found bitcoind in the following places: 2021-07-10 01:27:18 (INFO) -- SDM.pyc:173 - C:\Program Files\Bitcoin\daemon\bitcoind.exe 2021-07-10 01:27:18 (INFO) -- SDM.pyc:175 - Using: C:\Program Files\Bitcoin\daemon\bitcoind.exe 2021-07-10 01:27:18 (INFO) -- SDM.pyc:340 - Called startBitcoind 2021-07-10 01:27:18 (WARNING) -- SDM.pyc:445 - Spawning bitcoind with command: C:\Program Files\Bitcoin\daemon\bitcoind.exe -datadir=R:\Bitcoin 2021-07-10 01:27:18 (INFO) -- ArmoryUtils.pyc:689 - Executing popen: ['C:\\Program Files\\Bitcoin\\daemon\\bitcoind.exe', '-datadir=R:\\Bitcoin'] 2021-07-10 01:27:18 (INFO) -- SDM.pyc:451 - PID of bitcoind: 6108 2021-07-10 01:27:18 (INFO) -- SDM.pyc:452 - PID of armory: 4628 2021-07-10 01:27:18 (INFO) -- ArmoryUtils.pyc:689 - Executing popen: ['C:\\Program Files (x86)\\Armory\\guardian.exe', '4628', '6108'] 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1923 - Setting netmode: 1 2021-07-10 01:27:18 (ERROR) -- BDM.pyc:197 - DB error: C:\Users\carlos\AppData\Roaming/Bitcoin/blocks is not a valid path 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1923 - Setting netmode: 0 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:1905 - loadBlockchainIfNecessary 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:4672 - Dashboard switched to "Scanning" mode 2021-07-10 01:27:18 (INFO) -- ArmoryQt.py:4672 - Dashboard switched to "Scanning" mode
As you can see at the end of this output is the error:2021-07-10 01:27:18 (ERROR) -- BDM.pyc:197 - DB error: C:\Users\carlos\AppData\Roaming/Bitcoin/blocks is not a valid path Obviously the backslashes are wrong at the end of that path. How can I get that fixed? Thanks so much for your help!!!
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: NotATether on July 10, 2021, 04:04:12 PM
Someone had this same issue before you, the proposed solution from goatpig (the project maintainer) was to not use the GUI settings to specify the path and only use the armoryqt.conf file for your settings. In other words you should probably unset the paths from the GUI settings. DB error: C:\Users\Mike\AppData\Roaming/Bitcoin/blocks is not a valid path
Use the config files instead of the GUI stuff: https://btcarmory.com/docs/pathing
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: goatpig on July 10, 2021, 04:31:32 PM
Try the following: create a shortcut for ArmoryQt.exe and add your arguments at the end of the target field (prefixed with --).
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: freedom149 on July 11, 2021, 04:14:10 AM
Someone had this same issue before you, the proposed solution from goatpig (the project maintainer) was to not use the GUI settings to specify the path and only use the armoryqt.conf file for your settings. In other words you should probably unset the paths from the GUI settings.
Thanks so much for this advice, but it didn't work, it's still clobbering the path :-\
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: freedom149 on July 11, 2021, 04:30:13 AM
Try the following: create a shortcut for ArmoryQt.exe and add your arguments at the end of the target field (prefixed with --).
Thanks so much for your advice, but it didn't work either :'( My shortcut is as follows: "C:\Program Files (x86)\Armory\ArmoryQt.exe" --satoshi-datadir="R:\Bitcoin\blocks" --dbdir="R:\ArmoryDB" No effect :'(
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: goatpig on July 11, 2021, 09:41:20 AM
In Files -> Settings, turn off auto bitcoind (should be the first checkbox). Then try again and report here.
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: nc50lc on July 12, 2021, 06:45:40 AM
Sometimes, "armorydb" process wont stop even after closing Armory-qt.exe. That could be the reason why your settings and start parameters don't work.
Close Armory, try to find "armorydb" in your Windows10 task manager's "Background Processes"; if there is, use "End task". Then start Armory with the settings suggested by others.
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: freedom149 on July 12, 2021, 12:24:14 PM
In Files -> Settings, turn off auto bitcoind (should be the first checkbox). Then try again and report here.
Hi there, I've unchecked that, thanks! Sometimes, "armorydb" process wont stop even after closing Armory-qt.exe. That could be the reason why your settings and start parameters don't work.
Close Armory, try to find "armorydb" in your Windows10 task manager's "Background Processes"; if there is, use "End task". Then start Armory with the settings suggested by others.
Thanks so much! I've also now made sure all Armory processes are quit. But still, nothing works. Launching from shortcut with: Invoked: C:\Program Files (x86)\Armory\ArmoryQt.exe --satoshi-datadir=R:\Bitcoin\blocks --dbdir=R:\ArmoryDB - With bitcoind setting unchecked - With taskmgr ensuring nothing was running - With all paths in conf file set correctly Still clobbered: BDM.pyc:197 - DB error: C:\Users\carlos\AppData\Roaming/Bitcoin/blocks is not a valid path :'( :'( :'( I'm starting to think this is exclusively a problem with Parallels Desktop running on Mac requiring the blockchain to live on an external hard drive. I can't believe this type of error would be in production software. Thanks so much for all the help so far, maybe there's still some way to get the Armory database process started :)
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: goatpig on July 12, 2021, 12:56:22 PM
You can start ArmoryDB directly from the command line prompt with your --satoshi-datadir argument. ArmoryQt talks to ArmoryDB over a socket so there is no requirement ArmoryQt to spawn it.
What you may be experiencing is some snafu with py2's handling of strings and/or the sys package path resolution that leads to a silently handled error and a revert back to the default value. ArmoryDB is compiled binary written in C++, it wouldn't be subject to these shenanigans.
Title: Re: Parallels for Mac: Error BDM.pyc, DB error: … not a valid path
Post by: freedom149 on July 12, 2021, 05:18:13 PM
Thanks so much! IT WORKED!!! FIXED!! I assumed to start the ArmoryDB via command line prompt it would be this, from within the directory where the .exe lives: ArmoryDB --satoshi-datadir="R:\Bitcoin\blocks" Now Armory started up and reached the "building database" screen, and the log file shows no errors!! Thanks again so much for your support.
|