Pages:
Author

Topic: Problem starting Armory - page 2. (Read 1707 times)

full member
Activity: 182
Merit: 107
January 14, 2016, 10:40:28 AM
#16
I think it needs to get back to the fundamentals.

Hierarchal Deterministic Wallet

Cold Address Management

Watch Only Wallets

Focus on doing those things and doing those things correctly, and without having the product calling home. That's ridiculous. I don't think it use to do that, that seems to be a new "feature".

Then allow other features people want (e.g. multisig) to be option plugin add-ons.

-=-

It's like OpenSSL - bugs like heartbleed happened because of feature creep. No one even needs the heartbeat extension, seriously. Who the hell does TLS over UDP?

Yet they put it in enabled by default and people who had no user for it had their certificates compromised as a result.

Keep things simple, Armory needs to get back to that in my opinion. Maybe it needs a fork.
legendary
Activity: 3430
Merit: 3080
January 14, 2016, 10:09:51 AM
#15
I think there are archived versions of releases with any major format changes, but the URL's are not well advertised as new releases have always been more or less unanimous improvements over their predecessors (only those searching hard ever need to find those links I guess).

As for the state of the project... well, 93.3 was put out under different circumstances to previous releases, but there's no word yet from etotheipi on what the reason for that was. The 93.3 fix had to be pushed out quickly anyway (to correctly ameliorate the network problem for Armory users that the 0.11.1 tx malleability fix provided), which is a possible reason for the way that release was handled.

The only other publicly available information is that Mac/OSX support was shelved at that time, but then quickly reinstated with the help of a Mac user who submitted a fix on this sub. From that, a reasonable conclusion would be that they've lost a developer who provided all OSX efforts. But that's all based on a supposition.
full member
Activity: 182
Merit: 107
January 14, 2016, 09:55:54 AM
#14
I was not happy to see btw that by default an application that claims security as a motive reports both the operating system and version of the operating system to the projects homepage. That's not cool.

Even worse, it does it in a get variable. It has the full facilities of python at its disposal, at least do it via post if you must do it at all.

I think I am just going to stick with bitcoin-core.

It works and will continue to work and I don't risk issues where an upgrade to the product breaks the ability to even use my wallet, bitcoin-core is well tested before release and old versions are easy to get if needed via source tarballs with a checksum.

The deterministic wallet and cold-address management is a nice thing to have, but it looks like armory is suffering from feature bloat instead of embracing KISS.

And from the reading the forum, it appears the developer now is focusing on a closed source project.

Ah well.

I used armory for awhile in Fedora a little over a year ago and really liked it.
full member
Activity: 182
Merit: 107
January 14, 2016, 09:16:27 AM
#13
Try turning off the bitcoind auto-management option from the settings (or in the config file the settings store).

Also, be sure to use 93.3, as 93.2 suffers a bug that could cause your transactions to fail.

I can't even get to the damn settings, it doesn't get that far.

I am using 93.3 now - initially I was using 93.2 because for some reason I can't comprehend, they don't have 93.3 listed on their website *and* they don't have an archive of release tarballs.

It is feeling like this is a project where the developer has become bored and doesn't want to do it anymore.
legendary
Activity: 3430
Merit: 3080
January 14, 2016, 09:11:57 AM
#12
Try turning off the bitcoind auto-management option from the settings (or in the config file the settings store).

Also, be sure to use 93.3, as 93.2 suffers a bug that could cause your transactions to fail.
full member
Activity: 182
Merit: 107
January 14, 2016, 09:09:56 AM
#11
Code:
def __backgroundRequestTopBlock(self):

That's the function in SDM.py where the socket.error is triggering.

It's possible this is actually a problem with bitcoind but I don't know how to determine that.

When building bitcoin-core I ran:

Code:
%check
# Run all the tests
make check
# Run all the other tests
pushd src
srcdir=. test/bitcoin-util-test.py
popd
qa/pull-tester/rpc-tests.sh -extended

which takes a really long time but all tests passed.
full member
Activity: 182
Merit: 107
January 14, 2016, 09:02:03 AM
#10
Well that's interesting - I looked at the logs and saw this is the announcement it is trying to fetch -

2016-01-13 18:31 (INFO) -- announcefetch.py:271 - Fetching: https://bitcoinarmory.com/announce.txt?osvar=centos+linux&os=lin&ver=0.93.3&id=d4cdcaba

When I grabbed that with wget and looked, it appears to grab a wordpress press including crap like googleapi javascript. What the hell is it doing that for?

Here's the log -

http://awel.domblogger.net/7/libre/armorylog.txt
When you navigate to that URL, you are redirected to the bitcoinarmory.com homepage. If you get rid of the parameters (the ? and everything after it) you get announce.txt as Armory is expecting. The reason Armory isn't running for you is that the program is expecting to receive a Bitcoin Signed Message, but is receiving the Armory homepage.

Okay I am trying with the --skip-announce-check option to avoid that single point of failure (really dumb IMHO to make startup depend upon a specific URL responding in a specific way - what problem are they trying to solve Huh) and that is no longer an issue, but now it seems to have issues with creating a socket to the bitcoind service.
member
Activity: 75
Merit: 10
January 14, 2016, 08:55:50 AM
#9
Well that's interesting - I looked at the logs and saw this is the announcement it is trying to fetch -

2016-01-13 18:31 (INFO) -- announcefetch.py:271 - Fetching: https://bitcoinarmory.com/announce.txt?osvar=centos+linux&os=lin&ver=0.93.3&id=d4cdcaba

When I grabbed that with wget and looked, it appears to grab a wordpress press including crap like googleapi javascript. What the hell is it doing that for?

Here's the log -

http://awel.domblogger.net/7/libre/armorylog.txt
When you navigate to that URL, you are redirected to the bitcoinarmory.com homepage. If you get rid of the parameters (the ? and everything after it) you get announce.txt as Armory is expecting. The reason Armory isn't running for you is that the program is expecting to receive a Bitcoin Signed Message, but is receiving the Armory homepage.
full member
Activity: 182
Merit: 107
January 14, 2016, 07:16:15 AM
#8
With the debug switch -

Code:
(DEBUG) ArmoryQt.py:2474 - Bitcoind started without error
(DEBUG) ArmoryQt.py:1411 - setupSystemTray
(DEBUG) SDM.py:844 - Creating proxy
(INFO) SDM.py:848 - Creating proxy in SDM: host=127.0.0.1, port=8332
(DEBUG) SDM.py:891 - generic socket error
(DEBUG) SDM.py:723 - Bitcoind is no more
(INFO) ArmoryQt.py:1514 - setupUriRegistration
(INFO) ArmoryUtils.py:600 - Executing popen: gconftool-2 --get /desktop/gnome/url-handlers/bitcoin/command
(INFO) ArmoryUtils.py:600 - Executing popen: xdg-mime query default x-scheme-handler/bitcoin
(INFO) ArmoryUtils.py:600 - Executing popen: find /home/alice -type f -name "mimeTypes.rdf"
(DEBUG) ArmoryQt.py:4350 - setupDashboard
(INFO) ArmoryQt.py:664 - Usermode: Advanced
(INFO) ArmoryQt.py:1810 - Changing usermode:
(INFO) ArmoryQt.py:1811 -    From: Advanced
(INFO) ArmoryQt.py:1819 -      To: Advanced
(DEBUG) SDM.py:723 - Bitcoind is no more

I turned off firewalld just to make sure that wasn't the issue, same thing.
It seems to be starting bitcoind without error but debug seems to be indication a "generic socket error" followed by "Bitcoind is no more" (yet it is still running according to ps aux)
full member
Activity: 182
Merit: 107
January 14, 2016, 06:50:57 AM
#7
Here is attempting to start it skipping the announce check

Code:
[alice@localhost ~]$ armory --skip-announce-check
(ERROR) Traceback (most recent call last):
  File "/usr/libexec/armory/ArmoryQt.py", line 7147, in
    form = ArmoryMainWindow(splashScreen=SPLASH)
  File "/usr/libexec/armory/ArmoryQt.py", line 822, in __init__
    self.setDashboardDetails()
  File "/usr/libexec/armory/ArmoryQt.py", line 5655, in setDashboardDetails
    sdmState = TheSDM.getSDMState()
  File "/usr/libexec/armory/SDM.py", line 752, in getSDMState
    state = self.getSDMStateLogic()
  File "/usr/libexec/armory/SDM.py", line 788, in getSDMStateLogic
    latestInfo = self.getTopBlockInfo()
  File "/usr/libexec/armory/SDM.py", line 925, in getTopBlockInfo
    if self.isRunningBitcoind():
  File "/usr/libexec/armory/SDM.py", line 725, in isRunningBitcoind
    self.btcOut, self.btcErr = self.bitcoind.communicate()
  File "/usr/lib64/python2.7/subprocess.py", line 800, in communicate
    return self._communicate(input)
  File "/usr/lib64/python2.7/subprocess.py", line 1396, in _communicate
    self.stdin.flush()
ValueError: I/O operation on closed file

Traceback (most recent call last):
  File "/usr/libexec/armory/ArmoryQt.py", line 7147, in
    form = ArmoryMainWindow(splashScreen=SPLASH)
  File "/usr/libexec/armory/ArmoryQt.py", line 822, in __init__
    self.setDashboardDetails()
  File "/usr/libexec/armory/ArmoryQt.py", line 5655, in setDashboardDetails
    sdmState = TheSDM.getSDMState()
  File "/usr/libexec/armory/SDM.py", line 752, in getSDMState
    state = self.getSDMStateLogic()
  File "/usr/libexec/armory/SDM.py", line 788, in getSDMStateLogic
    latestInfo = self.getTopBlockInfo()
  File "/usr/libexec/armory/SDM.py", line 925, in getTopBlockInfo
    if self.isRunningBitcoind():
  File "/usr/libexec/armory/SDM.py", line 725, in isRunningBitcoind
    self.btcOut, self.btcErr = self.bitcoind.communicate()
  File "/usr/lib64/python2.7/subprocess.py", line 800, in communicate
    return self._communicate(input)
  File "/usr/lib64/python2.7/subprocess.py", line 1396, in _communicate
    self.stdin.flush()
ValueError: I/O operation on closed file

So it seems there is more than one problem.

These are from the log file just before that -

Code:
2016-01-14 03:48 (INFO) -- ArmoryUtils.py:600 - Executing popen: gconftool-2 --get /desktop/gnome/url-handlers/bitcoin/command
2016-01-14 03:48 (INFO) -- ArmoryUtils.py:600 - Executing popen: xdg-mime query default x-scheme-handler/bitcoin
2016-01-14 03:48 (INFO) -- ArmoryUtils.py:600 - Executing popen: find /home/alice -type f -name "mimeTypes.rdf"
2016-01-14 03:48 (INFO) -- ArmoryQt.py:664 - Usermode: Advanced
2016-01-14 03:48 (INFO) -- ArmoryQt.py:1810 - Changing usermode:
2016-01-14 03:48 (INFO) -- ArmoryQt.py:1811 -    From: Advanced
2016-01-14 03:48 (INFO) -- ArmoryQt.py:1819 -      To: Advanced
full member
Activity: 182
Merit: 107
January 14, 2016, 06:32:36 AM
#6
I also have to ask, does this mean that a DoS attack on the armory website means armory stops working because clients can't get the signed messages it seems unable to start without?
full member
Activity: 182
Merit: 107
January 14, 2016, 06:21:01 AM
#5
Well that's interesting - I looked at the logs and saw this is the announcement it is trying to fetch -

2016-01-13 18:31 (INFO) -- announcefetch.py:271 - Fetching: https://bitcoinarmory.com/announce.txt?osvar=centos+linux&os=lin&ver=0.93.3&id=d4cdcaba

When I grabbed that with wget and looked, it appears to grab a wordpress press including crap like googleapi javascript. What the hell is it doing that for?

Here's the log -

http://awel.domblogger.net/7/libre/armorylog.txt
staff
Activity: 3458
Merit: 6793
Just writing some code
January 13, 2016, 11:30:57 PM
#4
From that error message it looks like Armory is unable to verify the signed announcement messages.

Could you post your armory logs?

Also, it would be a good idea to submit a bug report to Armory by going to Help > Submit Bug Report in Armory.
full member
Activity: 182
Merit: 107
January 13, 2016, 07:04:04 PM
#3
Okay after checking out the 0.93.3 release and rebuilding the RPM, the same issue persists.

For what it's worth, bitcoin-qt works just fine.

I'm wondering if my python environment isn't as complete as it should be?
full member
Activity: 182
Merit: 107
January 13, 2016, 06:50:10 PM
#2
Whoa, wait, I'm running an old version? Why the frack doesn't the armory website list the new version if it was released all the way back in October?

That's um really odd.
full member
Activity: 182
Merit: 107
January 13, 2016, 06:42:33 PM
#1
Trying to run Armory on CentOS 7

Built from source as RPM by me - 0.93.2

Here's the error :

Code:
[alice@localhost ~]$ armory
(ERROR) announcefetch.py:312 - Could not verify data in signed message block
Traceback (most recent call last):
  File "/usr/libexec/armory/announcefetch.py", line 304, in __runFetchSequence
    sig, msg = readSigBlock(digestData)
  File "/usr/libexec/armory/jasvet.py", line 589, in readSigBlock
    name = r.split(BEGIN_MARKER)[1].split(DASHX5)[0]
IndexError: list index out of range
(ERROR) Traceback (most recent call last):
  File "/usr/libexec/armory/ArmoryQt.py", line 7158, in
    form = ArmoryMainWindow(splashScreen=SPLASH)
  File "/usr/libexec/armory/ArmoryQt.py", line 822, in __init__
    self.setDashboardDetails()
  File "/usr/libexec/armory/ArmoryQt.py", line 5666, in setDashboardDetails
    sdmState = TheSDM.getSDMState()
  File "/usr/libexec/armory/SDM.py", line 752, in getSDMState
    state = self.getSDMStateLogic()
  File "/usr/libexec/armory/SDM.py", line 788, in getSDMStateLogic
    latestInfo = self.getTopBlockInfo()
  File "/usr/libexec/armory/SDM.py", line 925, in getTopBlockInfo
    if self.isRunningBitcoind():
  File "/usr/libexec/armory/SDM.py", line 725, in isRunningBitcoind
    self.btcOut, self.btcErr = self.bitcoind.communicate()
  File "/usr/lib64/python2.7/subprocess.py", line 800, in communicate
    return self._communicate(input)
  File "/usr/lib64/python2.7/subprocess.py", line 1396, in _communicate
    self.stdin.flush()
ValueError: I/O operation on closed file

Traceback (most recent call last):
  File "/usr/libexec/armory/ArmoryQt.py", line 7158, in
    form = ArmoryMainWindow(splashScreen=SPLASH)
  File "/usr/libexec/armory/ArmoryQt.py", line 822, in __init__
    self.setDashboardDetails()
  File "/usr/libexec/armory/ArmoryQt.py", line 5666, in setDashboardDetails
    sdmState = TheSDM.getSDMState()
  File "/usr/libexec/armory/SDM.py", line 752, in getSDMState
    state = self.getSDMStateLogic()
  File "/usr/libexec/armory/SDM.py", line 788, in getSDMStateLogic
    latestInfo = self.getTopBlockInfo()
  File "/usr/libexec/armory/SDM.py", line 925, in getTopBlockInfo
    if self.isRunningBitcoind():
  File "/usr/libexec/armory/SDM.py", line 725, in isRunningBitcoind
    self.btcOut, self.btcErr = self.bitcoind.communicate()
  File "/usr/lib64/python2.7/subprocess.py", line 800, in communicate
    return self._communicate(input)
  File "/usr/lib64/python2.7/subprocess.py", line 1396, in _communicate
    self.stdin.flush()
ValueError: I/O operation on closed file

Here's how it is built

Code:
%build
sed -ie s?"\$(PREFIX)/lib/armory"?"\$(PREFIX)/libexec/armory"? Makefile
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? ArmoryQt.py
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? dpkgfiles/armory
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? osxbuild/Armory-script.sh
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? osxbuild/armoryd-script.sh
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? osxbuild/objc_armory/ArmoryMac.pro
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? release_scripts/Step2_Offline_PackageSigning.py
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? release_scripts/signannounce.py
sed -ie s?"/usr/lib/armory"?"/usr/libexec/armory"? release_scripts/README.txt
sed -ie 's/\r//' BitTornado/launchmanycore.py

make %{?_smp_mflags}


%install
make install DESTDIR=%{buildroot}

It does start bitcoind before that error occurs.

Any suggestions?

SELinux is disabled so that's not the issue.

Thank you

Pages:
Jump to: