Preventing transfer and duplication of redundantly referenced objects across nodes of an application system
First Claim
1. A system comprising:
- at least one computer readable memory, said computer readable memory having stored thereon program code for preventing transfer and duplication of redundantly referenced embedded objects across different nodes, said program code includingprogram code for generating a plurality of keys, each one of said keys identifying a corresponding one of a plurality of objects,program code for, by a sending node to a receiving node responsive to determining that an embedded object is to be transferred from said sending node to a receiving node with a container object, transferring one of said keys corresponding to said embedded object from said sending node to said receiving node;
program code for transferring, by said sending node to said receiving node, said container object without said embedded object;
program code for determining, by said receiving node responsive to said one of said keys received from said sending node, whether said embedded object is already stored on said receiving node;
program code for, by said receiving node in response to determining that said embedded object is already stored on said receiving node, indicating to said sending node that said embedded object is already stored on said receiving node, storing a pointer to a copy of said embedded object into said container object received by said receiving node from said sending node, and incrementing a reference count associated with said embedded object in said receiving node; and
program code for, by said sending node in response to receiving said indication that said embedded object is already stored on said receiving node, preventing transfer of said embedded object from said sending node to said receiving node with said container object.
0 Assignments
0 Petitions
Accused Products
Abstract
Unique identifiers referred to as “keys” are generated for objects stored on each node. When a container object including at least one embedded object is transferred from a sending node to a receiving node, the sending node sends the key uniquely identifying the embedded object to the receiving node to determine whether the embedded object is already stored on the receiving node. If the receiving node indicates that the embedded object is already stored at the receiving node, then the sending node determines that the embedded object does not need to be sent to the receiving node. In that case, if the embedded object has not been sent, the sending node does not send the embedded object. If the sending node has already started sending the embedded object, then the sending node terminates sending of the embedded object.
10 Citations
28 Claims
-
1. A system comprising:
at least one computer readable memory, said computer readable memory having stored thereon program code for preventing transfer and duplication of redundantly referenced embedded objects across different nodes, said program code including program code for generating a plurality of keys, each one of said keys identifying a corresponding one of a plurality of objects, program code for, by a sending node to a receiving node responsive to determining that an embedded object is to be transferred from said sending node to a receiving node with a container object, transferring one of said keys corresponding to said embedded object from said sending node to said receiving node; program code for transferring, by said sending node to said receiving node, said container object without said embedded object; program code for determining, by said receiving node responsive to said one of said keys received from said sending node, whether said embedded object is already stored on said receiving node; program code for, by said receiving node in response to determining that said embedded object is already stored on said receiving node, indicating to said sending node that said embedded object is already stored on said receiving node, storing a pointer to a copy of said embedded object into said container object received by said receiving node from said sending node, and incrementing a reference count associated with said embedded object in said receiving node; and program code for, by said sending node in response to receiving said indication that said embedded object is already stored on said receiving node, preventing transfer of said embedded object from said sending node to said receiving node with said container object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
17. A computer program product, comprising:
at least one non-transitory computer readable storage medium, said computer readable storage medium having stored thereon program code for preventing transfer and duplication of redundantly referenced embedded objects across different nodes, said program code including program code for generating a plurality of keys, each one of said keys identifying a corresponding one of a plurality of objects, program code for, by a sending node to a receiving node responsive to determining that an embedded object is to be transferred from said sending node to said receiving node with a container object, transferring one of said keys corresponding to said embedded object from said sending node to said receiving node; program code for transferring, by said sending node to said receiving node, said container object without said embedded object; program code for determining, by said receiving node responsive to said one of said keys received from said sending node, whether said embedded object is already stored on said receiving node; program code for, by said receiving node in response to determining that said embedded object is already stored on said receiving node, indicating to said sending node that said embedded object is already stored on said receiving node, storing a pointer to a copy of said embedded object into said container object received by said receiving node from said sending node, and incrementing a reference count associated with said embedded object in said receiving node; and program code for, by said sending node in response to receiving said indication that said embedded object is already stored on said receiving node, preventing transfer of said embedded object from said sending node to said receiving node with said container object.
-
18. A computer-implemented method for preventing transfer and duplication of redundantly referenced embedded objects across different nodes, comprising:
-
generating a plurality of keys, each one of said keys identifying a corresponding one of a plurality of objects; transferring, by a sending node to a receiving node responsive to determining that an embedded object is to be transferred from said sending node to said receiving node with a container object, one of said keys corresponding to said embedded object from said sending node to said receiving node; determining, by said receiving node responsive to said one of said keys received from said sending node, whether said embedded object is already stored on said receiving node; indicating, to said sending node by said receiving node in response to determining that said embedded object is already stored on said receiving node, that said embedded object is already stored on said receiving node; storing, by said receiving node in response to determining that said embedded object is already stored on said receiving node, a pointer to a copy of said embedded object into said container object received by said receiving node from said sending node; incrementing, by said receiving node in response to determining that said embedded object is already stored on said receiving node, a reference count associated with said embedded object in said receiving node; and preventing, by said sending node in response to receiving said indication that said embedded object is already stored on said receiving node, transfer of said embedded object from said sending node to said receiving node with said container object. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification