Tuesday, 24 July 2007

Bug: CPU loop searching for trend in logs with no weight entries

If a log had an unspecified trend carry-forward and the previous log in the database was present but had no weight entries whatsoever, ``Fill in trend carry-forward from most recent previous log, if required'' would hang in a CPU loop due to a backwards-coded loop termination test. If there were any log entries, the loop would bail out due to a {\tt last}, but for an empty log the termination when the beginning of the log was reached would never occur and the program would crash when the CGI time limit expired. I corrected the loop termination test and verified that the hang no longer occurs for a blank previous log. (Reported by Andres Kievsky.)

No comments: