Patent ID: 7945909

Claim:
A computer-implemented method comprising: monitoring an executing task in a data processing environment comprising at least one data repository and at least one data processor, the task having an associated class and at least one historical execution time of the task stored in the data repository, wherein monitoring the executing task includes: using an instance of a distributed application, determining an expected execution time derived using a calculation involving the task's associated class and the at least one historical execution time of the task by obtaining a correlation between the task's at least one associated historical execution time and class and historical information relating to the environment during at least one prior execution of the task, the correlation obtained by establishing weights of connections between processing units in a cortex of a statistical analysis tool; using the instance of the distributed application, sending a request to a particular data processor handling the task for a communication from the particular data processor when an actual execution time of the executing task exceeds the expected execution time; using the instance of the distributed application, sending the request to a thread that includes the task for a communication from the thread that includes the task upon receipt of the communication from the particular data processor responsive to the request to the particular data processor; if a response is not received from the thread that includes the task, initiating recovery of the monitored task; and updating the historical execution time in the data repository using the actual execution time of the task in the data processing environment.