Patent ID: 7469268

Claim:
A processor-based method of managing, at a plurality of processing nodes communicatively coupled in a tree arrangement that converges at a root node, data received from a plurality of processes of a distributed computing arrangement, comprising: in a first processing node of the plurality of processing nodes, receiving data objects from a first subset of the plurality of processes; waiting for a waiting period to receive, from a second subset of the plurality of processes, one or more expected data objects in addition to the received data objects; determining the second subset of processes to be non-responsive based on arrival times of the received data objects relative to a current time and expiration of the waiting period; wherein determining the set of non-responsive processes includes, making a first comparison between a first timeout variable and the arrival time of a first object of the data objects relative to the current time, making a second comparison between a second timeout variable and the arrival time of subsequent objects of the data objects relative to the current time, and determining the set of non-responsive processes based on whether the greater of the first and second comparisons indicates a timeout condition has occurred; aggregating the received data objects into a set of data objects without further waiting for data objects associated with the non-responsive processes; sending the set of data objects and a reference to the non-responsive processes from the first node to a second processing node of the plurality of processing nodes, wherein the second processing node is nearer to the root node than is the first processing node; and in the second processing node, aggregating the set of data objects received from the first processing node with data objects received from a third subset of the plurality of processes and sending the set of data objects to a third processing node that is nearer to the root node than is the second processing node without waiting for data objects associated with the non-responsive processes.