I would try to rebuild of the abe database from scratch. (I know, it is slow...)
See ya in 3 weeks duncant :/
Okay, so I rebuilt the database. The first time I fired up the server, it worked perfectly. I started it with "cache = no" and "irc = no". After testing it, I wanted to enable those, so I stopped the server, which worked fine. I edited the config file and restarted the server. As soon as it started up, I got the traceback that I posted above and it doesn't work again. About 1 in 10 times, the server starts properly, the rest of the time I get the traceback above.
Another thing to note, is that when the server wasn't working properly, and I went to shut it down, "electrum-server stop" hung, without printing the "ok" message. The server did shut itself down, but the "electrum-server stop" command never finished. When I Ctrl-C'd it it printed the following traceback:
Traceback (most recent call last):
File "/usr/bin/electrum-server", line 101, in
run_rpc_command(sys.argv[1], stratum_tcp_port)
File "/usr/bin/electrum-server", line 75, in run_rpc_command
o = s.recv(1024)
KeyboardInterrupt
=========== Frustration break occurred here ==========
As an experiment, I tried starting the server with iptables preventing incoming connections on port 50000. I waited until the "block number: XXXXXX" message was printed, then opened the firewall. I tried that a couple of times, and It appears to work fine when I do that. Perhaps there's a race condition between the stratum thread and the thread that interfaces with the database?