I'm running Armory 0.95.1 on OSX El Capitan.
When I open the Offline Transactions dialog, enter address, amount, fee and click Continue ("Create Unsigned" is checked), Armory freezes for about 20 seconds, and when it becomes responsive again, nothing has happened (the dialog is still open, and the same happens if I click Continue again).
At the same time, the following appears in the log:
2017-02-02 22:06 (ERROR) -- Traceback (most recent call last):
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 829, in createTxAndBroadcast
ustx = self.validateInputsGetUSTX()
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 646, in validateInputsGetUSTX
utxoList = self.getUsableTxOutList(totalSend + feeTry)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 900, in getUsableTxOutList
return self.wlt.getUTXOListForSpendVal(totalSend)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/PyBtcWallet.py", line 52, in inner
return func(*args, **kwargs)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/PyBtcWallet.py", line 450, in getUTXOListForSpendVal
utxos = self.cppWallet.getSpendableTxOutListForValue(valToSpend, IGNOREZC)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/CppBlockUtils.py", line 2160, in getSpendableTxOutListForValue
return _CppBlockUtils.BtcWallet_getSpendableTxOutListForValue(self, *args)
RuntimeError: can't connect socket
I'm not sure what the issue is here. I'm trying to create an unsigned transaction, so I don't see why it would need to connect to something. It's connected to Bitcoin Core, according to the green text in the lower right corner.
EDIT: Here's the full log:
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1128 - C++ block utilities loaded successfully
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:642 - Executing popen: sysctl hw.memsize
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:642 - Executing popen: sysctl -n machdep.cpu.brand_string
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1238 -
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1239 -
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1240 -
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1241 - ************************************************************
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1242 - Invoked: /Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ArmoryQt.py
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1243 - ************************************************************
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1244 - Loading Armory Engine:
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1245 - Armory Version : 0.95
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1246 - Armory Build: : 374672b751
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1247 - PyBtcWallet Version : 1.35
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1248 - Detected Operating system: MacOSX
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1249 - OS Variant : 10.11.6
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1250 - User home-directory : /Users/rune/Library/Application Support
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1251 - Satoshi BTC directory : /Users/rune/Library/Application Support/Bitcoin/
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1252 - Armory home dir : /Users/rune/Library/Application Support/Armory/
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1253 - Detected System Specs :
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1254 - Total Available RAM : 16.00 GB
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1255 - CPU ID string : Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1256 - Number of CPU cores : 8 cores
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1257 - System is 64-bit : True
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1258 - Preferred Encoding : US-ASCII
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1259 - Machine Arch : x86_64
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1260 - Available HDD (ARM) : 76 GB
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1261 - Available HDD (BTC) : 76 GB
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1262 -
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1263 - Network Name: Main Network
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1264 - Satoshi Port: 8333
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1265 - Do wlt check: True
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1266 - Named options/arguments to armoryengine.py:
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - thread_count : -1
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - rescan : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - ignoreAllZC : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - rescanBalance : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - disableModules : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - port : None
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - interport : 8223
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - skipStatsReport : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - forceWalletCheck: False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - regtest : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - rebuild : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - nettimeout : 2
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - datadir : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - clearMempool : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - offline : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - coverageOutputDir: None
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - armoryDBDir : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - armorydb_port : 9001
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - psn : None
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - satoshiPort : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - useTorSettings : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - netlog : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - keypool : 100
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - coverageInclude : None
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - forceOnline : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - skipAnnounceCheck: False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - redownload : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - armorydb_ip : 127.0.0.1
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - multisigFile : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - ram_usage : -1
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - testAnnounceCode: False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - mtdebug : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - logDisable : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - settingsPath : /Users/rune/Library/Application Support/Armory/ArmorySettings.txt
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - db_type : DB_FULL
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - doDebug : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - enableDetSign : True
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - disableConfPermis: False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - testnet : False
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - rpcport : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - satoshiHome : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - satoshiRpcport : DEFAULT
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - logFile : /Users/rune/Library/Application Support/Armory/ArmoryQt.py.log.txt
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1268 - verbosity : None
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1269 - Other arguments:
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1272 - ************************************************************
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:1675 - C++ block utilities loaded successfully
2017-02-02 22:17 (INFO) -- BDM.py:367 - Using the asynchronous/multi-threaded BlockDataManager.
2017-02-02 22:17 (INFO) -- BDM.py:368 - Blockchain operations will happen in the background.
2017-02-02 22:17 (INFO) -- BDM.py:369 - Devs: check TheBDM.getState() before asking for data.
2017-02-02 22:17 (INFO) -- BDM.py:370 - Registering addresses during rescans will queue them for
2017-02-02 22:17 (INFO) -- BDM.py:371 - inclusion after the current scan is completed.
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:3588 - Using settings file: /Users/rune/Library/Application Support/Armory/ArmorySettings.txt
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2485 - loadWalletsAndSettings
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2539 - Loading wallets...
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2598 - Number of wallets read in: 1
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2603 - Wallet (6QZdwscT): "6QZdwscT (Watch) " (No Encryption)
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2608 - Loading Multisig Lockboxes
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2153 - Setting up networking...
2017-02-02 22:17 (INFO) -- ArmoryQt.py:1412 - setupUriRegistration
2017-02-02 22:17 (INFO) -- ArmoryQt.py:546 - Usermode: Expert
2017-02-02 22:17 (INFO) -- ArmoryQt.py:1708 - Changing usermode:
2017-02-02 22:17 (INFO) -- ArmoryQt.py:1709 - From: Expert
2017-02-02 22:17 (INFO) -- ArmoryQt.py:1717 - To: Expert
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2217 - startBitcoindIfNecessary
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2257 - setSatoshiPaths
2017-02-02 22:17 (INFO) -- SDM.py:382 - Reading bitcoin.conf file
2017-02-02 22:17 (INFO) -- SDM.py:416 - Setting permissions on bitcoin.conf
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2257 - setSatoshiPaths
2017-02-02 22:17 (INFO) -- ArmoryUtils.py:642 - Executing popen: ['/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/../../bin/ArmoryDB', '--db-type="DB_FULL"', '--spawnId="4wh3R5Tw9K1k4ThdmJ2PxuGVC7Ezdrf7reBHAjxNWqK4"', '--satoshi-datadir="/Users/rune/Library/Application Support/Bitcoin/blocks"', '--dbdir="/Users/rune/Library/Application Support/Armory/databases"']
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2307 - Setting netmode: 1
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2289 - loadBlockchainIfNecessary
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2307 - Setting netmode: 1
2017-02-02 22:17 (INFO) -- ArmoryQt.py:5645 - Dashboard switched to "Scanning" mode
2017-02-02 22:17 (INFO) -- ArmoryQt.py:5645 - Dashboard switched to "Scanning" mode
2017-02-02 22:17 (INFO) -- ArmoryQt.py:2886 - Current block number: 449854
2017-02-02 22:19 (ERROR) -- Traceback (most recent call last):
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/WalletFrames.py", line 253, in doCoinCtrl
aStr = hash160_to_addrStr(utxo.getRecipientHash160)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/ArmoryUtils.py", line 2149, in hash160_to_addrStr
if not len(binStr) == 20:
TypeError: object of type 'instancemethod' has no len()
2017-02-02 22:19 (INFO) -- TxFrames.py:768 - Change address behavior: NewAddr
2017-02-02 22:19 (ERROR) -- Traceback (most recent call last):
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 829, in createTxAndBroadcast
ustx = self.validateInputsGetUSTX()
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 810, in validateInputsGetUSTX
utxoSelect, scriptValPairs, pubKeyMap)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/Transaction.py", line 2259, in createFromTxOutSelection
return self.createFromPyTx(thePyTx, pubKeyMap, txMap, p2shMap)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/Transaction.py", line 2169, in createFromPyTx
cppPrevTx = TheBDM.bdv().getTxByHash(txhash)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/CppBlockUtils.py", line 2405, in getTxByHash
return _CppBlockUtils.BlockDataViewer_getTxByHash(self, txHash)
RuntimeError: unexpected return value
2017-02-02 22:19 (ERROR) -- Traceback (most recent call last):
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 829, in createTxAndBroadcast
ustx = self.validateInputsGetUSTX()
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 646, in validateInputsGetUSTX
utxoList = self.getUsableTxOutList(totalSend + feeTry)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/ui/TxFrames.py", line 900, in getUsableTxOutList
return self.wlt.getUTXOListForSpendVal(totalSend)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/PyBtcWallet.py", line 52, in inner
return func(*args, **kwargs)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armoryengine/PyBtcWallet.py", line 450, in getUTXOListForSpendVal
utxos = self.cppWallet.getSpendableTxOutListForValue(valToSpend, IGNOREZC)
File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/CppBlockUtils.py", line 2160, in getSpendableTxOutListForValue
return _CppBlockUtils.BtcWallet_getSpendableTxOutListForValue(self, *args)
RuntimeError: can't connect socket