Pavel Tupitsyn created IGNITE-6359:
--------------------------------------
Summary: .NET: Improve tests for object graphs and loops
Key: IGNITE-6359
URL:
https://issues.apache.org/jira/browse/IGNITE-6359 Project: Ignite
Issue Type: Improvement
Components: platforms
Reporter: Pavel Tupitsyn
Priority: Minor
There were a couple of bugs caused by missing `detachment` semantics IGNITE-6354, IGNITE-6081.
We need to make sure that every Ignite API supports object graphs of any complexity with loops.
Details:
{{WriteObject}} uses so-called handles to write referenced objects. So if the object was already written once to a current stream, it is not written again, only the id is written. This is fine when object graph is a cache value, or a cache key.
But sometimes we write multiple cache values to the same stream (e.g. {{PutAll}}), and if these values reference each other, they can't be deserialized later, since each value is stored separately.
{{WriteObjectDetached}} method makes sure that provided object is written as an independent object graph, and before/after stream data is unrelated.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)