I'm running Tekkit 3.1.2. Nothing appears wrong in the logs, but no-one can connect (EndOfStream error).
I tried connecting with netcat (from both localhost and my home machine), the server waits for me to send something, then closes the connection when I do (this is consistent with normal behaviour). So it likely isn't a network problem.
When a player fails to connect, the log reads: "<ip>:<port> lost connection"
Server console is responsive, if a little laggy.
One thing I've noticed, one of the server threads seems to be pegging a core (the core is reporting 100% userland time and the relevant thread is at constant 100% usage).
The server has been running fine for almost a week, and suddenly stopped working.
I'm unsure exactly when, since we don't have players online 24/7.
My suspicion is that one of my players has created something in tekkit that is broken under multiplayer. When it loads the world anchors, the broken thing is loaded and causes an inf loop somewhere in the server code. I need help trying to work out what thing that is, any debugging techniques I could try, etc.
My setup:
Tekkit 3.1.2 with Nether Ores removed (it was causing a startup crash which I understand is a known issue).
Java version info:
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (6b24-1.11.1-4ubuntu2)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
Operating System is Ubuntu Precise (12.04) 64-bit, specific kernel version "3.2.0-23-virtual"
The hardware...isn't. It's a virtual machine with 4G of RAM, 4 VCPUs which report themselves as "Intel® Xeon® CPU X5650 @ 2.67GHz".
If it makes any difference, minecraft itself is running as a daemon which I start using start-stop-daemon's --background option. Its stdout and stderr are redirected to a file, and its stdin is redirected from a named pipe (which I can write to to type on the server console).
Server log dump (without FINE or FINEST as this exceeded message length limits):