NPRZ you can view the orders you entered as they came into the server prior to processing here: http://phpdiplomacy.net/doc/nprz.txt
(I expect one of either order ID 1879800, 1879801, or 1879802 is the problem order)
Judging from the logs it looks like the order was never placed. The Hold order remains unchanged throughout. Maybe you set it, forgot to update, and moved on to chat or something? Maybe because one hold order was next to 2 others that you had intended it made them easier to miss? Who knows?
> @NPRZ - I'm with ya man. I've been programming longer than
> Kestas has been alive. He may swear it is impossible, but I
> know better. NOTHING is impossible when it comes to software bugs.
Well this is a good opportunity then, and perfect timing. I'm sure you'll be able to draw on some of your experience and give me your thoughts on the critical code section: http://phpdiplomacy.net/doc/phpDoc/__filesource/fsource_Board_Orders_boardordersorderinterface.php.html#a239
To save you time this is the line I'd particularly like your guidance on:
fwrite($orderLog, print_r($_REQUEST['orderForm'], true)."\n\n") or trigger_error("Couldn't write to order log file.");
You mentioned being too busy to analyze systems, which I understand, but other than setting up filehandlers (generally success or failure affairs) there's not much else to order-logging than that.
I'm wondering how that line, the first to read the contents of the order form and the one which writes it to the orderlog text files, could replace a string like ..
" [1879793] => Array
(
[type] => Move
[toTerr] => Paris
)
"
.. with ..
" [1879793] => Array
(
[type] => Hold
)
"
.. over a dozen times in a row on different requests, for that particular order, without it happening like that before or since.
Normally I'd say PHP standard library functions wouldn't have any code capable of repeatedly recognizing and replacing one valid Diplomacy order in print_r array format with another one, but nothing is impossible with software bugs after all.
You must have some applicable past experience to draw on here, I know you wouldn't repeatedly advertise your seniority and hard-won experience if it didn't have an application or relevance to the problem.