System and method for performing data management in a collaborative development environment
View Patent ↗An object that is not linked to a root object of a data model is identified. A first instruction comprising a fingerprint and a request to delete the object from memory is transmitted to a plurality of user devices. A second instruction to undo the first instruction is received from one of the plurality of user devices, and, in response to the second instruction, a third instruction comprising the fingerprint and a request to execute and delete any instruction that includes the fingerprint is transmitted to the plurality of user devices.
1. A method of managing data storage among a plurality of user devices, the method comprising:
identifying an object that is not linked to a root object of a data model;
transmitting to a plurality of user devices a first instruction comprising a fingerprint and a request to delete the object from memory;
deleting, at each of the plurality of user devices, the object;
generating, at each of the plurality of user devices, a reverse instruction that contains the fingerprint;
receiving, substantially simultaneously from each of two of the plurality of user devices, a second instruction to undo the first instruction; and
in response to the second instruction, transmitting to the plurality of user devices a third instruction comprising the fingerprint and a request to execute and delete any instruction that includes the fingerprint.
2. The method of claim 1 , further comprising: deleting the object from the data model.
3. The method of claim 1 , wherein the identifying step and the transmitting step are performed while performing a background garbage collection function.
4. The method of claim 1 , wherein the data model comprises an object constructed using one of a list, a map, and a primitive.
5. A non-transitory computer readable medium having program instructions stored thereon, the instructions capable of execution by a processor and defining the steps of:
identifying an object that is not linked to a root object of a data model;
transmitting to a plurality of user devices a first instruction comprising a fingerprint and a request to delete the object from memory;
deleting, at each of the plurality of user devices, the object;
generating, at each of the plurality of user devices, a reverse instruction that contains the fingerprint;
receiving, substantially simultaneously from each of two of the plurality of user devices, a second instruction to undo the first instruction; and
in response to the second instruction, transmitting to the plurality of user devices a third instruction comprising the fingerprint and a request to execute and delete any instruction that includes the fingerprint.
6. The non-transitory computer readable medium of claim 5 , further comprising instructions defining the step of:
deleting the object from the data model.
7. The non-transitory computer readable medium of claim 5 , wherein the identifying step and the transmitting step are performed while performing a background garbage collection function.
8. The non-transitory computer readable medium of claim 5 , wherein the data model comprises an object constructed using one of a list, a map, and a primitive.