Author

Topic: different blocks between bitcoin core and armory (Read 651 times)

newbie
Activity: 53
Merit: 0
This latest problem is  noticed here and probably solved in test version 4.

https://bitcointalksearch.org/topic/m.19593847

(This thread can be closed)
newbie
Activity: 53
Merit: 0
Starting and stopping bitcoind vs manual

10 manual all oke:

log
https://pastebin.com/K5g6Sux5

dblog:
https://pastebin.com/zq35e08c

2/10 gave me an armory Error/Crash , when clicking at the confirming Close button when closing down.:

log:
https://pastebin.com/eMQsGN26

dblog:
https://pastebin.com/iNMpcfia


I didnt wait long before starting again. I checked if all processes stopped before starting the  cycle over again.

Hope it gives you something to work with


legendary
Activity: 3766
Merit: 1364
Armory Developer
Quote
Is there something you want me to test?

Can you compare bitcoind vs manual node stability? How often does the bitcoind method screw up out of 10?
newbie
Activity: 53
Merit: 0
Second time without bitcoincore started already didnt do anything. Processes were started but nothing happend. I had to kill the armorydb.exe process.

Followed your advice and started bitcoin core first, let it sync completely, started armory....

finished successfully! Balance correct!

Guess there are still some issues when running bitcoincore as daemon in the background ?

Is there something you want me to test?
legendary
Activity: 3766
Merit: 1364
Armory Developer
Start Armory without Core running, what do you get?
newbie
Activity: 53
Merit: 0
bitcoin core chain complete synct.

started armory with a empty database folder.

After some time:
http://imgur.com/a/flbHf
armorylog:
https://pastebin.com/MmeSBPtD

dblog.txt:
https://pastebin.com/AGrSLwES

For me it looks just like before, except I resynct the whole bitcoin core database on a new disk.
I also placed armory's database on a new disk.

What could be the problem here?

*will restart armory again
legendary
Activity: 3766
Merit: 1364
Armory Developer
You shouldn't run the DB until the node is done indexing. The DB is tied to the file on blocks, so it will choke if you change the underlying files (like when reindexing). You have to delete Armory's databases folder or do a rebuild & rescan to fix this.
newbie
Activity: 53
Merit: 0
Bitcoin core still reindexing, but armory crashed on the way :

https://content.screencast.com/users/creamers1759/folders/Jing/media/8fa4da61-e40d-4ff0-9a53-cf1b85297782/2017-06-09_1147.png

Quote
-INFO  - 07:16:04.576: (..\BlockchainScanner.cpp:650) scanned from height #432971 to #433637
-INFO  - 07:16:06.307: (..\BlockchainScanner.cpp:650) scanned from height #433638 to #433787
-INFO  - 07:16:06.619: (..\BlockchainScanner.cpp:225) scanned transaction history in 1907.24s
-INFO  - 07:16:08.836: (..\BlockchainScanner.cpp:1560) resolving txhashes
-INFO  - 07:21:47.731: (..\BlockchainScanner.cpp:1616) 4 blocks hit by tx filters
-ERROR - 11:47:52.546: (..\SocketObject.cpp:126) poll() error in writeToSocket: 10038
-ERROR - 11:47:53.858: (..\BitcoinP2P.cpp:1027) caught SocketError exception in processDataStackThread: poll() error in writeToSocket: 10038
-INFO  - 11:47:53.936: (..\BitcoinP2P.cpp:969) Disconnected from Bitcoin node

newbie
Activity: 53
Merit: 0
Still running Wink

I already did rebuild armory database a few times so I decided to move both (armory and bitcoincore) to another disk and try again.

To be continued...
legendary
Activity: 3766
Merit: 1364
Armory Developer
oke, so you don't think it has anything to do with the bitcoin core database? (I started a 'reindex' 4 hours ago to be sure)

It could. It's just cheaper to rebuild Armory's DB from scratch to confirm than to nuke Core's DB, thus why I told you to rebuild.
newbie
Activity: 53
Merit: 0
oke, so you don't think it has anything to do with the bitcoin core database? (I started a 'reindex' 4 hours ago to be sure)

Will start Armory and point to a new disk volume to see what happens.

Thx for your help so far!
legendary
Activity: 3766
Merit: 1364
Armory Developer
Quote
Could the error "merkle root mismatch" have something to do with it?

This is indicative of a bad block of disk or a corrupt ArmoryDB. If a full rebuild of the DB yields the same issue (at the same spot), then your on disk data is corrupt.

Quote
(btw, I often notice armoryDB.exe runs in the background when I closed the armory client. It still comsumes alot of cpu and memory)

That's usually what happens after the running into a bad block during DB build.
newbie
Activity: 53
Merit: 0
Since I use the .2 test version it completes without crashing but...

After restarting several times it seems that it continuesly starts building the database again at 73%
Also, when the process finishes it shows the different blocks between bitcoin core and armory:

http://imgur.com/a/8XzDR

My balance isnt correct either.

Could the error "merkle root mismatch" have something to do with it?

dbLog.txt
Code:
Log file opened at 13:25:18.000: D:\Armory Database/dbLog.txt
-INFO  - 13:25:18.000: (..\main.cpp:29) Running on 2 threads
-INFO  - 13:25:18.016: (..\main.cpp:30) Ram usage level: 4
-INFO  - 13:25:18.016: (..\BlockUtils.cpp:907) blkfile dir: D:\Bitcoin Core Database\blocks
-INFO  - 13:25:18.016: (..\BlockUtils.cpp:908) lmdb dir: D:\Armory Database\databases
-INFO  - 13:25:18.032: (..\lmdb_wrapper.cpp:388) Opening databases...
-INFO  - 13:25:18.094: (c:\users\goat\code\armory3\cppforswig\BDM_Server.h:248) Listening on port 56745
-INFO  - 13:25:19.170: (..\BDM_Server.cpp:1021) registered bdv: 5d5921c4972f2ce6fadc
-INFO  - 13:25:19.217: (..\BlockUtils.cpp:1091) Executing: doInitialSyncOnLoad
-INFO  - 13:25:19.326: (..\DatabaseBuilder.cpp:169) Reading headers from db
-INFO  - 13:25:55.566: (..\BitcoinP2P.cpp:947) Connected to Bitcoin node
-INFO  - 13:27:20.149: (..\DatabaseBuilder.cpp:208) Found 433790 headers in db
-INFO  - 13:27:26.953: (..\DatabaseBuilder.cpp:51) updating HEADERS db
-INFO  - 13:27:27.528: (..\DatabaseBuilder.cpp:477) Found next block after skipping 610796bytes
-ERROR - 13:27:29.839: (..\BlockDataMap.cpp:79) merkle root mismatch!
-ERROR - 13:27:29.854: (..\BlockDataMap.cpp:80)    header has: 337dfb932602ae49e44cd27959dc2703c3e6adc07155b7d37155922c5a2332e5
-ERROR - 13:27:29.854: (..\BlockDataMap.cpp:81)    block yields: 63d1f5749cd8133fb646bd3e787a1ff7c362bb5460fdc7866134c6f01bfa4e32
-ERROR - 13:27:29.870: (..\DatabaseBuilder.cpp:353) block deser except: invalid merkle root
-INFO  - 13:27:29.963: (..\DatabaseBuilder.cpp:268) parsed block file #646
-INFO  - 13:27:33.082: (..\DatabaseBuilder.cpp:268) parsed block file #647
-INFO  - 13:27:35.453: (..\DatabaseBuilder.cpp:268) parsed block file #648
-INFO  - 13:27:40.946: (..\DatabaseBuilder.cpp:268) parsed block file #649

any suggestions ?

(btw, I often notice armoryDB.exe runs in the background when I closed the armory client. It still comsumes alot of cpu and memory)
Jump to: