Since the last time I upgraded (0.87.2) I've noticed that Armory only runs for a few days before crashing. I finally ran it from the console so that I could get the error message. This most recent time I started up at block 220285 and it ran fine until this:
New Block: 220990
Added new blocks to memory pool: 1
New Block: 220991
Added new blocks to memory pool: 1
New Block: 220992
Added new blocks to memory pool: 1
New Block: 220993
Added new blocks to memory pool: 1
New Block: 220994
Added new blocks to memory pool: 1
New Block: 220995
Added new blocks to memory pool: 1
New Block: 220996
New block file split! /home/justus/.bitcoin/blocks/blk00042.dat
Segmentation fault
Yeah, the funny thing about that is I just completed a pretty exhaustive set of unit-tests using the 0.87.2-beta code base, to make sure that
shouldn't happen. I set up the test with complicated blockfile splits and it runs flawlessly. But on the real network, it still segfaults... Unfortunately, I noticed it the night before I went out of town for two weeks so there was nothing I could do. If you've seen some of my other threads about Armory managing its own blockchain, that is in my immediate plans and will make this problem go away entirely -- in fact a lot of problems will go away, since most are related to colliding with bitcoind/-qt file management.
I am going to start the new blockchain management stuff (using leveldb), and get a feel for how long it's going to take. If it's going to be smooth, I might just skip fixing this, since it's strictly an artifact of "the old way." Or maybe I'll do both ... I'll run Armory in the debugger while writing the new code and see if I can catch the segfault and put out a temporary fix.