Description
Same issue as IGNITE-6081 with PutAll: DataStreamer does not detach objects.
Reproducer:
var obj1 = new Container(); var obj2 = new Container(); var obj3 = new Container(); var obj4 = new Container(); obj1.Inner = obj2; obj2.Inner = obj1; obj3.Inner = obj1; obj4.Inner = obj3; using (var ldr = _grid.GetDataStreamer<int, Container>(CacheName)) { ldr.AllowOverwrite = true; ldr.AddData(1, obj1); ldr.AddData(2, obj2); ldr.AddData(3, obj3); ldr.AddData(4, obj4); } var cache = _grid.GetCache<int, Container>(CacheName); var res = cache[1]; Assert.AreEqual(res, res.Inner.Inner); Assert.IsNotNull(cache[2].Inner); Assert.IsNotNull(cache[2].Inner.Inner); Assert.IsNotNull(cache[3].Inner); Assert.IsNotNull(cache[3].Inner.Inner); Assert.IsNotNull(cache[4].Inner); Assert.IsNull(cache[4].Inner.Inner);
Attachments
Attachments
Issue Links
- links to