You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/03/05 09:55:25 UTC

[27/50] [abbrv] incubator-ignite git commit: #ignite-51: IgniteTxEntry implements Message: not working version.

#ignite-51: IgniteTxEntry implements Message: not working version.


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

Branch: refs/heads/ignite-user-req
Commit: b4f2f8f5e46edf65bcc3f3544d86e43582dae8eb
Parents: 362d073
Author: ivasilinets <iv...@gridgain.com>
Authored: Wed Mar 4 15:19:50 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Wed Mar 4 15:19:50 2015 +0300

----------------------------------------------------------------------
 .../cache/CacheEntrySerializablePredicate.java  |  8 +++--
 .../cache/transactions/IgniteTxEntry.java       | 38 ++++++++------------
 2 files changed, 20 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b4f2f8f5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntrySerializablePredicate.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntrySerializablePredicate.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntrySerializablePredicate.java
index 583882f..c538910 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntrySerializablePredicate.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntrySerializablePredicate.java
@@ -61,11 +61,13 @@ public class CacheEntrySerializablePredicate implements CacheEntryPredicate {
 
     /** {@inheritDoc} */
     @Override public void finishUnmarshal(GridCacheContext ctx, ClassLoader ldr) throws IgniteCheckedException {
-        assert bytes != null;
+        assert p != null || bytes != null;
 
-        p = ctx.marshaller().unmarshal(bytes, ldr);
+        if (p == null) {
+            p = ctx.marshaller().unmarshal(bytes, ldr);
 
-        p.finishUnmarshal(ctx, ldr);
+            p.finishUnmarshal(ctx, ldr);
+        }
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b4f2f8f5/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
index 3c02341..48b7fb4 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
@@ -100,12 +100,8 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
 
     /** Put filters. */
     @GridToStringInclude
-    @GridDirectTransient
     private CacheEntryPredicate[] filters;
 
-    /** Filter bytes. */
-    private byte[] filterBytes;
-
     /** Flag indicating whether filters passed. Used for fast-commit transactions. */
     @GridDirectTransient
     private boolean filtersPassed;
@@ -651,8 +647,6 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
      * @param filters Put filters.
      */
     public void filters(CacheEntryPredicate[] filters) {
-        filterBytes = null;
-
         this.filters = filters;
     }
 
@@ -701,11 +695,6 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
         if (transformClosBytes == null && entryProcessorsCol != null)
             transformClosBytes = CU.marshal(ctx, entryProcessorsCol);
 
-        if (F.isEmptyOrNulls(filters))
-            filterBytes = null;
-        else if (filterBytes == null)
-            filterBytes = CU.marshal(ctx, filters);
-
         if (transferExpiry)
             transferExpiryPlc = expiryPlc != null && expiryPlc != this.ctx.expiry();
 
@@ -740,16 +729,12 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
         if (transformClosBytes != null && entryProcessorsCol == null)
             entryProcessorsCol = ctx.marshaller().unmarshal(transformClosBytes, clsLdr);
 
-        if (filters == null && filterBytes != null) {
-            filters = ctx.marshaller().unmarshal(filterBytes, clsLdr);
-
-            if (filters == null)
-                filters = CU.empty0();
-            else {
-                for (CacheEntryPredicate p : filters) {
-                    if (p != null)
-                        p.finishUnmarshal(ctx.cacheContext(cacheId), clsLdr);
-                }
+        if (filters == null)
+            filters = CU.empty0();
+        else {
+            for (CacheEntryPredicate p : filters) {
+                if (p != null)
+                    p.finishUnmarshal(ctx.cacheContext(cacheId), clsLdr);
             }
         }
 
@@ -818,7 +803,14 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
                 writer.incrementState();
 
             case 5:
-                if (!writer.writeByteArray("filterBytes", filterBytes))
+                if (!F.isEmptyOrNulls(filters)) {
+                    for (CacheEntryPredicate filter : filters) {
+                        if (filter == null) {
+                            System.out.println("TEST FAIL");
+                        }
+                    }
+                }
+                if (!writer.writeObjectArray("filters", filters, MessageCollectionItemType.MSG))
                     return false;
 
                 writer.incrementState();
@@ -907,7 +899,7 @@ public class IgniteTxEntry implements GridPeerDeployAware, Message {
                 reader.incrementState();
 
             case 5:
-                filterBytes = reader.readByteArray("filterBytes");
+                filters = reader.readObjectArray("filters", MessageCollectionItemType.MSG, CacheEntryPredicate.class);
 
                 if (!reader.isLastRead())
                     return false;