Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-51 dadcf92f4 -> 31f2c0de2


# ignite-51


Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/31f2c0de
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/31f2c0de
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/31f2c0de

Branch: refs/heads/ignite-51
Commit: 31f2c0de29c9e7bdad0d940ae0d9983fb0b20d97
Parents: dadcf92
Author: sboikov <sboi...@gridgain.com>
Authored: Fri Mar 6 09:51:55 2015 +0300
Committer: sboikov <sboi...@gridgain.com>
Committed: Fri Mar 6 09:51:55 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheMapEntry.java     | 38 +++++++++-----------
 .../IgniteCacheObjectProcessorAdapter.java      |  2 ++
 2 files changed, 19 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31f2c0de/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
index 2cd0645..2d94ac3 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
@@ -211,8 +211,9 @@ public abstract class GridCacheMapEntry implements 
GridCacheEntryEx {
                 if (cctx.kernalContext().config().isPeerClassLoadingEnabled()) 
{
                     Object val0 = null;
 
-                    if (val != null) {
-                        val0 = val.value(cctx.cacheObjectContext(), false);
+                    if (val != null && val.type() != 
CacheObjectAdapter.TYPE_BYTE_ARR) {
+                        val0 = 
cctx.portable().unmarshal(cctx.cacheObjectContext(),
+                            val.valueBytes(cctx.cacheObjectContext()), 
cctx.deploy().globalLoader());
 
                         if (val0 != null)
                             cctx.gridDeploy().deploy(val0.getClass(), 
val0.getClass().getClassLoader());
@@ -386,32 +387,27 @@ public abstract class GridCacheMapEntry implements 
GridCacheEntryEx {
 
         long time = U.currentTimeMillis();
 
-        try {
-            synchronized (this) {
-                if (!obsolete()) {
-                    info = new GridCacheEntryInfo();
+        synchronized (this) {
+            if (!obsolete()) {
+                info = new GridCacheEntryInfo();
 
-                    info.key(key);
-                    info.cacheId(cctx.cacheId());
+                info.key(key);
+                info.cacheId(cctx.cacheId());
 
-                    long expireTime = expireTimeExtras();
+                long expireTime = expireTimeExtras();
 
-                    boolean expired = expireTime != 0 && expireTime <= time;
+                boolean expired = expireTime != 0 && expireTime <= time;
 
-                    info.ttl(ttlExtras());
-                    info.expireTime(expireTime);
-                    info.version(ver);
-                    info.setNew(isStartVersion());
-                    info.setDeleted(deletedUnlocked());
+                info.ttl(ttlExtras());
+                info.expireTime(expireTime);
+                info.version(ver);
+                info.setNew(isStartVersion());
+                info.setDeleted(deletedUnlocked());
 
-                    if (!expired)
-                        info.value(valueBytesUnlocked());
-                }
+                if (!expired)
+                    info.value(valueBytesUnlocked());
             }
         }
-        catch (Exception e) {
-            throw new IgniteException("Failed to unmarshal object while 
creating entry info: " + this, e);
-        }
 
         return info;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31f2c0de/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java
index 6e65c2f..60eac93 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java
@@ -104,6 +104,8 @@ public abstract class IgniteCacheObjectProcessorAdapter 
extends GridProcessorAda
     @Override public CacheObject toCacheObject(GridCacheContext ctx, long 
valPtr, boolean tmp)
         throws IgniteCheckedException
     {
+        assert valPtr != 0;
+
         long ptr = valPtr;
 
         int size = UNSAFE.getInt(ptr);

Reply via email to