Patent ID: 7403945

Claim:
A method for detection of deadlocks in a distributed database system comprising a plurality of servers running on a plurality of connected machines sharing access to data, the method comprising: in response to a task at a first server waiting to obtain a lock regulating access to data, sending a search request including lock information to a second server holding the lock; at the second server, examining dependencies of the task holding the lock based on the lock information received with the search request and local lock information; if the task holding the lock is waiting to obtain a lock held by an additional server, forwarding the search request and local lock information to the additional server after appending width and depth information to the search request to facilitate determining when the search is concluded; repeating the examining and forwarding steps until all dependencies which can lead to a deadlock are examined or a deadlock is detected; responding to the search request indicating whether a deadlock was detected and providing lock information and width and depth information found; and if a deadlock is not detected, terminating the search upon determination that the search has concluded based on the width and depth information.