The local publish job is executed into server's main thread instead of being executed in a different one.
This is not such a huge problem because the files are small, but the CLocalPublishJob::DoExecute function contains a ThreadSleep(500) call, which simply blocks the server for 0.5 seconds. This every 10-30 seconds. I have no idea why Valve did this (the sleep is called after a file is deleted and before is verified if the file still exists), but until they fix the problem you can patch the replay.so library. Use a hex editor (http://mh-nexus.de/en/hxd/ for example) and search for C7 04 24 F4 01 00 00 E8 45 EB FD FF Replace the bytes with 90 90 90 90 90 90 90 90 90 90 90 90 This should fix the lag problem for Linux servers. I don't guarantee that there are no side effects, but seems to work ok on my public server. As I understood from SPUF they know that for Linux servers the job is executed into main thread and will provide a fix next week. But is Valve, next week is a relative term... ----- Original Message ----- From: Ronny Schedel Sent: 05/07/11 10:44 AM To: [email protected] Subject: [hlds_linux] TF2: Still massive lag spikes with replay enabled Hi, look at the picture: http://www.ronny-schedel.de/tf2replaylag.jpg This is taken from an empty server, just me standing still and taking a replay. The replay is recorded locally, no FTP transfer. You can see the lag spike in the net graph clearly. Best regards Ronny Schedel _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlds_linux _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlds_linux

