IGNITE-3829: Additional fix.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3aa13f71 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3aa13f71 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3aa13f71 Branch: refs/heads/ignite-3661 Commit: 3aa13f716934a6ccfe49f8bf99ec3b654e263900 Parents: fc2fe7b Author: vozerov-gridgain <voze...@gridgain.com> Authored: Mon Sep 5 10:19:48 2016 +0300 Committer: vozerov-gridgain <voze...@gridgain.com> Committed: Mon Sep 5 10:19:48 2016 +0300 ---------------------------------------------------------------------- .../cache/binary/CacheObjectBinaryProcessorImpl.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/3aa13f71/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java index ecd27f7..82e67ac 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/binary/CacheObjectBinaryProcessorImpl.java @@ -709,10 +709,15 @@ public class CacheObjectBinaryProcessorImpl extends IgniteCacheObjectProcessorIm if (meta != null) { String name = meta.affinityKeyFieldName(); - affKeyFields.putIfAbsent(meta.typeId(), new T1<>(meta.field(name))); + if (name != null) { + BinaryField field = meta.field(name); - if (name != null) - return po.field(name); + affKeyFields.putIfAbsent(meta.typeId(), new T1<>(field)); + + return field.value(po); + } + else + affKeyFields.putIfAbsent(meta.typeId(), new T1<BinaryField>(null)); } else if (po instanceof BinaryObjectEx) { int typeId = ((BinaryObjectEx)po).typeId();