Hi! We recently had a case where a result file was uploaded multiple times over and over again, even after the result was reported.
One of the uploads happened between validation and assimilation, resulting in assimilation of a 'canonical' result that has never been validated (and was actually broken). Certainly this one incident is mainly the result of a misbehaving Client (7.0.3 IIRC), but in any case I think the server code should be robust against such clients. I can think of a couple of options to prevent this from happening again in the future: - Move the result files from the upload directory when the result is reported; validate and assimilate it from this new location (scheduler would need to touch (move) result files) - Make the file upload handler check the result status in the DB (fuh needs DB access, additional DB load) - My current favorite: While receiving a file, the file upload handler appends ".part" to the filename. Only when the upload was successfully completed, the file is renamed to the result file name, but only if there is not already a file with that desired name yet. (the antique_file_deleter will eventually clean up partial uploads, too). Anything that still could go wrong with that behavior? Best, Bernd _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
