[ https://issues.apache.org/jira/browse/IGNITE-6627?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16209295#comment-16209295 ]
ASF GitHub Bot commented on IGNITE-6627: ---------------------------------------- GitHub user ptupitsyn opened a pull request: https://github.com/apache/ignite/pull/2876 IGNITE-6627 .NET: Fix repeated known metadata updates Previous commit has broken the BinaryStructureTracker optimization You can merge this pull request into a Git repository by running: $ git pull https://github.com/ptupitsyn/ignite ignite-6627-1 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/ignite/pull/2876.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2876 ---- commit d3c4a3e61a32343aeee012c1b751a96b490fb1bc Author: Pavel Tupitsyn <ptupit...@apache.org> Date: 2017-10-18T13:03:48Z IGNITE-6627 .NET: Fix structure tracker optimization ---- > .NET: cache deserialization fails with complex value type & enum > ---------------------------------------------------------------- > > Key: IGNITE-6627 > URL: https://issues.apache.org/jira/browse/IGNITE-6627 > Project: Ignite > Issue Type: Bug > Components: cache, platforms > Affects Versions: 2.2 > Reporter: Alexey Popov > Assignee: Pavel Tupitsyn > Labels: .NET > Fix For: 2.4 > > > There is an deserialization issue with complex structure. > Please see the sample code below: > {noformat} > public enum SampleEnum : byte > { > One = 0, > Two = 1, > Three = 2 > } > {noformat} > {noformat} > var cache = ignite.GetOrCreateCache<string, > Dictionary<SampleEnum, Dictionary<int, int>>>("mySampleCache"); > cache.Put("DictData", Dict); > var result = cache.Get("DictData"); > {noformat} > var result = cache.Get("DictData"); fails with exception: > {"The constructor to deserialize an object of type > 'System.Collections.Generic.ObjectEqualityComparer`1[SampleProject.SampleEnum]' > was not found."} > If we change > Dictionary<SampleEnum, Dictionary<int, int>> > to > Dictionary<int, Dictionary<int, int>> > then everything works fine -- This message was sent by Atlassian JIRA (v6.4.14#64029)