Descriptive Problem Summary:
When the Export()ing computer's CPU load is high (~100%), Export()s often return null even though they were received and returned by the exportee.
Numbered Steps to Reproduce Problem:
The easiest way to verify this is with Terulia Relay Chat.
1) download the TRC library, which doubles as a standalone client when run by itself (http://www.byond.com/developer/Gakumerasara/TRC)
2) compile and run it
3) in the TRC console, type "/subscribe test"
4) in the TRC console, type "/channel test"
5) type any text of your choosing in the TRC console to chat (Keep this TRC client open for the following steps...)
6a) log into FFO during peak hours (~8-11p EST) http://www.byond.com/games/Gakumerasara/FinalFantasyOnline or
6b) compile the TRC library into any "game" of your choosing that peaks at 100% CPU use.
7) resize the windows so you can see both TRC chat windows (one in the standalone, one in FFO et al) side-by-side
8) type any text of your choosing in FFO's TRC console to chat
You should notice that 100% of your messages are being received by the standalone client, but many of these same messages are being missed by the high-CPU version.
When you chat, the servers queues your message to any users who should hear it. In your case, the message is being queued to "you" in both the standalone and in FFO et al. I have verified that the server is receiving queries from both servers, i.e. from FFO as well as the standalone, and that the same message is being returned to both. Thus the hangup is on the sender's end, where the returned Export() is simply being ignored.
I can send you any additional code you may need, but the downloadable TRC client is identical to the one that is being used in FFO.
100% of returned Export()s are recognized.
a high proportion of returned Export()s are ignored during peak use (high CPU load)
When does the problem NOT occur?
low CPU load (early mornings, for example)
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
This wasn't a problem in previous BYOND versions (basically all spring). I'm assuming 484 is the problem, though I may need to verify.
Jun 29 2011, 4:32 am