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/07/24 13:57:22 UTC

[01/27] incubator-ignite git commit: ignite-630

Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-752 f714fd0a0 -> 31ab0dd30


ignite-630


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

Branch: refs/heads/ignite-752
Commit: 03c790ef9c7821e253816f2d29bfc4f0920ee283
Parents: 19bd611
Author: avinogradov <av...@gridgain.com>
Authored: Tue Apr 28 20:07:49 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue Apr 28 20:07:49 2015 +0300

----------------------------------------------------------------------
 .../rest/protocols/tcp/MockNioSession.java      |  15 --
 .../cache/CacheEvictableEntryImpl.java          |   2 +-
 .../processors/cache/GridCacheAdapter.java      |   2 +-
 .../processors/cache/GridCacheEntryEx.java      |  32 +--
 .../cache/GridCacheEvictionManager.java         |  12 +-
 .../processors/cache/GridCacheMapEntry.java     |  64 +++---
 .../processors/cache/GridCacheUtils.java        |  15 +-
 .../extras/GridCacheAttributesEntryExtras.java  |   8 +-
 .../GridCacheAttributesMvccEntryExtras.java     |   8 +-
 ...dCacheAttributesMvccObsoleteEntryExtras.java |   8 +-
 ...cheAttributesMvccObsoleteTtlEntryExtras.java |   8 +-
 .../GridCacheAttributesMvccTtlEntryExtras.java  |   8 +-
 .../GridCacheAttributesObsoleteEntryExtras.java |   8 +-
 ...idCacheAttributesObsoleteTtlEntryExtras.java |   8 +-
 .../GridCacheAttributesTtlEntryExtras.java      |   8 +-
 .../cache/extras/GridCacheEntryExtras.java      |   4 +-
 .../extras/GridCacheEntryExtrasAdapter.java     |   2 +-
 .../cache/extras/GridCacheMvccEntryExtras.java  |   3 +-
 .../GridCacheMvccObsoleteEntryExtras.java       |   2 +-
 .../GridCacheMvccObsoleteTtlEntryExtras.java    |   2 +-
 .../extras/GridCacheMvccTtlEntryExtras.java     |   2 +-
 .../extras/GridCacheObsoleteEntryExtras.java    |   2 +-
 .../extras/GridCacheObsoleteTtlEntryExtras.java |   2 +-
 .../cache/extras/GridCacheTtlEntryExtras.java   |   2 +-
 .../store/GridCacheStoreManagerAdapter.java     |   2 +-
 .../cache/transactions/IgniteInternalTx.java    |  16 +-
 .../cache/transactions/IgniteTxAdapter.java     |   6 +-
 .../util/lang/GridMetadataAwareAdapter.java     | 228 +++++++++----------
 .../cache/eviction/GridCacheMockEntry.java      |   5 +-
 .../nio/impl/GridNioFilterChainSelfTest.java    |  15 --
 .../lang/GridMetadataAwareAdapterSelfTest.java  |  56 +++--
 31 files changed, 261 insertions(+), 294 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/MockNioSession.java
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/MockNioSession.java b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/MockNioSession.java
index c9d13bb..1e46a94 100644
--- a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/MockNioSession.java
+++ b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/protocols/tcp/MockNioSession.java
@@ -110,21 +110,6 @@ public class MockNioSession extends GridMetadataAwareAdapter implements GridNioS
     }
 
     /** {@inheritDoc} */
-    @Override public <T> T meta(int key) {
-        return meta(new UUID(key, key));
-    }
-
-    /** {@inheritDoc} */
-    @Override public <T> T addMeta(int key, T val) {
-        return addMeta(new UUID(key, key), val);
-    }
-
-    /** {@inheritDoc} */
-    @Override public <T> T removeMeta(int key) {
-        return removeMeta(new UUID(key, key));
-    }
-
-    /** {@inheritDoc} */
     @Override public GridNioFuture<Object> resumeReads() {
         return null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
index 5d6062e..cd056a7 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
@@ -32,7 +32,7 @@ import java.util.*;
  */
 public class CacheEvictableEntryImpl<K, V> implements EvictableEntry<K, V> {
     /** */
-    private static final UUID META_KEY = UUID.randomUUID();
+    private static final int META_KEY = GridMetadataAwareAdapter.nextUniqueKey();
 
     /** Cached entry. */
     @GridToStringInclude

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 3f4e97b..445e613 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -1291,7 +1291,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
         final AffinityTopologyVersion topVer = ctx.affinity().affinityTopologyVersion();
 
         if (!F.isEmpty(keys)) {
-            final UUID uid = CU.uuid(); // Get meta UUID for this thread.
+            final int uid = CU.uid(); // Get meta UID for this thread.
 
             assert keys != null;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index 8d3d089..9a3f1a6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@ -879,68 +879,68 @@ public interface GridCacheEntryEx {
     /**
      * Tests whether or not given metadata is set.
      *
-     * @param name Name of the metadata to test.
+     * @param key Key of the metadata to test.
      * @return Whether or not given metadata is set.
      */
-    public boolean hasMeta(UUID name);
+    public boolean hasMeta(int key);
 
     /**
-     * Gets metadata by name.
+     * Gets metadata by key.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param <V> Type of the value.
      * @return Metadata value or {@code null}.
      */
-    @Nullable public <V> V meta(UUID name);
+    @Nullable public <V> V meta(int key);
 
     /**
      * Adds a new metadata.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param val Metadata value.
      * @param <V> Type of the value.
      * @return Metadata previously associated with given name, or
      *      {@code null} if there was none.
      */
-    @Nullable public <V> V addMeta(UUID name, V val);
+    @Nullable public <V> V addMeta(int key, V val);
 
     /**
      * Adds given metadata value only if it was absent.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param val Value to add if it's not attached already.
      * @param <V> Type of the value.
      * @return {@code null} if new value was put, or current value if put didn't happen.
      */
-    @Nullable public <V> V putMetaIfAbsent(UUID name, V val);
+    @Nullable public <V> V putMetaIfAbsent(int key, V val);
 
     /**
      * Replaces given metadata with new {@code newVal} value only if its current value
      * is equal to {@code curVal}. Otherwise, it is no-op.
      *
-     * @param name Name of the metadata.
+     * @param key Key of the metadata.
      * @param curVal Current value to check.
      * @param newVal New value.
      * @return {@code true} if replacement occurred, {@code false} otherwise.
      */
-    public <V> boolean replaceMeta(UUID name, V curVal, V newVal);
+    public <V> boolean replaceMeta(int key, V curVal, V newVal);
 
     /**
-     * Removes metadata by name.
+     * Removes metadata by key.
      *
-     * @param name Name of the metadata to remove.
+     * @param key Key of the metadata to remove.
      * @param <V> Type of the value.
      * @return Value of removed metadata or {@code null}.
      */
-    @Nullable public <V> V removeMeta(UUID name);
+    @Nullable public <V> V removeMeta(int key);
 
     /**
      * Removes metadata only if its current value is equal to {@code val} passed in.
      *
-     * @param name Name of metadata attribute.
+     * @param key key of metadata attribute.
      * @param val Value to compare.
      * @param <V> Value type.
      * @return {@code True} if value was removed, {@code false} otherwise.
      */
-    public <V> boolean removeMeta(UUID name, V val);
+    public <V> boolean removeMeta(int key, V val);
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
index 9135c16..4550d10 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
@@ -63,6 +63,9 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter {
     /** Unsafe instance. */
     private static final sun.misc.Unsafe unsafe = GridUnsafe.unsafe();
 
+    /** Attribute name used to queue node in entry metadata. */
+    private static final int META_KEY = GridMetadataAwareAdapter.nextUniqueKey();
+
     /** Eviction policy. */
     private EvictionPolicy plc;
 
@@ -72,9 +75,6 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter {
     /** Eviction buffer. */
     private final ConcurrentLinkedDeque8<EvictionInfo> bufEvictQ = new ConcurrentLinkedDeque8<>();
 
-    /** Attribute name used to queue node in entry metadata. */
-    private final UUID meta = UUID.randomUUID();
-
     /** Active eviction futures. */
     private final Map<Long, EvictionFuture> futs = new ConcurrentHashMap8<>();
 
@@ -1005,12 +1005,12 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter {
      */
     private void enqueue(GridCacheEntryEx entry, CacheEntryPredicate[] filter)
         throws GridCacheEntryRemovedException {
-        Node<EvictionInfo> node = entry.meta(meta);
+        Node<EvictionInfo> node = entry.meta(META_KEY);
 
         if (node == null) {
             node = bufEvictQ.addLastx(new EvictionInfo(entry, entry.version(), filter));
 
-            if (entry.putMetaIfAbsent(meta, node) != null)
+            if (entry.putMetaIfAbsent(META_KEY, node) != null)
                 // Was concurrently added, need to clear it from queue.
                 bufEvictQ.unlinkx(node);
             else if (log.isDebugEnabled())
@@ -1655,7 +1655,7 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter {
                 for (EvictionInfo info : evictInfos) {
                     // Queue node may have been stored in entry metadata concurrently, but we don't care
                     // about it since we are currently processing this entry.
-                    Node<EvictionInfo> queueNode = info.entry().removeMeta(meta);
+                    Node<EvictionInfo> queueNode = info.entry().removeMeta(META_KEY);
 
                     if (queueNode != null)
                         bufEvictQ.unlinkx(queueNode);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/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 3dcd0ec..ec0b732 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
@@ -3802,7 +3802,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
      */
     private boolean ensureData(int size) {
         if (attributeDataExtras() == null) {
-            attributeDataExtras(new GridLeanMap<UUID, Object>(size));
+            attributeDataExtras(new GridLeanMap<Integer, Object>(size));
 
             return true;
         }
@@ -3812,40 +3812,40 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
 
     /** {@inheritDoc} */
     @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 addMeta(UUID name, V1 val) {
-        A.notNull(name, "name", val, "val");
+    @Nullable @Override public <V1> V1 addMeta(int key, V1 val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (this) {
             ensureData(1);
 
-            return (V1)attributeDataExtras().put(name, val);
+            return (V1)attributeDataExtras().put(key, val);
         }
     }
 
     /** {@inheritDoc} */
     @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 meta(UUID name) {
-        A.notNull(name, "name");
+    @Nullable @Override public <V1> V1 meta(int key) {
+        A.notNull(key, "key");
 
         synchronized (this) {
-            GridLeanMap<UUID, Object> attrData = attributeDataExtras();
+            GridLeanMap<Integer, Object> attrData = attributeDataExtras();
 
-            return attrData == null ? null : (V1)attrData.get(name);
+            return attrData == null ? null : (V1)attrData.get(key);
         }
     }
 
     /** {@inheritDoc} */
     @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 removeMeta(UUID name) {
-        A.notNull(name, "name");
+    @Nullable @Override public <V1> V1 removeMeta(int key) {
+        A.notNull(key, "key");
 
         synchronized (this) {
-            GridLeanMap<UUID, Object> attrData = attributeDataExtras();
+            GridLeanMap<Integer, Object> attrData = attributeDataExtras();
 
             if (attrData == null)
                 return null;
 
-            V1 old = (V1)attrData.remove(name);
+            V1 old = (V1)attrData.remove(key);
 
             if (attrData.isEmpty())
                 attributeDataExtras(null);
@@ -3856,19 +3856,19 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
 
     /** {@inheritDoc} */
     @SuppressWarnings({"unchecked"})
-    @Override public <V1> boolean removeMeta(UUID name, V1 val) {
-        A.notNull(name, "name", val, "val");
+    @Override public <V1> boolean removeMeta(int key, V1 val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (this) {
-            GridLeanMap<UUID, Object> attrData = attributeDataExtras();
+            GridLeanMap<Integer, Object> attrData = attributeDataExtras();
 
             if (attrData == null)
                 return false;
 
-            V1 old = (V1)attrData.get(name);
+            V1 old = (V1)attrData.get(key);
 
             if (old != null && old.equals(val)) {
-                attrData.remove(name);
+                attrData.remove(key);
 
                 if (attrData.isEmpty())
                     attributeDataExtras(null);
@@ -3881,20 +3881,20 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
     }
 
     /** {@inheritDoc} */
-    @Override public boolean hasMeta(UUID name) {
-        return meta(name) != null;
+    @Override public boolean hasMeta(int key) {
+        return meta(key) != null;
     }
 
     /** {@inheritDoc} */
     @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 putMetaIfAbsent(UUID name, V1 val) {
-        A.notNull(name, "name", val, "val");
+    @Nullable @Override public <V1> V1 putMetaIfAbsent(int key, V1 val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (this) {
-            V1 v = meta(name);
+            V1 v = meta(key);
 
             if (v == null)
-                return addMeta(name, val);
+                return addMeta(key, val);
 
             return v;
         }
@@ -3902,15 +3902,15 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
 
     /** {@inheritDoc} */
     @SuppressWarnings({"RedundantTypeArguments"})
-    @Override public <V1> boolean replaceMeta(UUID name, V1 curVal, V1 newVal) {
-        A.notNull(name, "name", newVal, "newVal", curVal, "curVal");
+    @Override public <V1> boolean replaceMeta(int key, V1 curVal, V1 newVal) {
+        A.notNull(key, "key", newVal, "newVal", curVal, "curVal");
 
         synchronized (this) {
-            if (hasMeta(name)) {
-                V1 val = this.<V1>meta(name);
+            if (hasMeta(key)) {
+                V1 val = this.<V1>meta(key);
 
                 if (val != null && val.equals(curVal)) {
-                    addMeta(name, newVal);
+                    addMeta(key, newVal);
 
                     return true;
                 }
@@ -3930,7 +3930,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
      */
     @SuppressWarnings({"TooBroadScope"})
     protected void writeExternalMeta(ObjectOutput out) throws IOException {
-        Map<UUID, Object> cp;
+        Map<Integer, Object> cp;
 
         // Avoid code warning (suppressing is bad here, because we need this warning for other places).
         synchronized (this) {
@@ -3951,7 +3951,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
      */
     @SuppressWarnings({"unchecked"})
     protected void readExternalMeta(ObjectInput in) throws IOException, ClassNotFoundException {
-        GridLeanMap<UUID, Object> cp = (GridLeanMap<UUID, Object>)in.readObject();
+        GridLeanMap<Integer, Object> cp = (GridLeanMap<Integer, Object>)in.readObject();
 
         synchronized (this) {
             attributeDataExtras(cp);
@@ -4013,14 +4013,14 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
     /**
      * @return Attribute data.
      */
-    @Nullable private GridLeanMap<UUID, Object> attributeDataExtras() {
+    @Nullable private GridLeanMap<Integer, Object> attributeDataExtras() {
         return extras != null ? extras.attributesData() : null;
     }
 
     /**
      * @param attrData Attribute data.
      */
-    private void attributeDataExtras(@Nullable GridLeanMap<UUID, Object> attrData) {
+    private void attributeDataExtras(@Nullable GridLeanMap<Integer, Object> attrData) {
         extras = (extras != null) ? extras.attributesData(attrData) : attrData != null ?
             new GridCacheAttributesEntryExtras(attrData) : null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
index e7c7f9d..687d390 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
@@ -98,12 +98,15 @@ public class GridCacheUtils {
     public static final int SKIP_STORE_FLAG_MASK = 0x1;
 
     /** Per-thread generated UID store. */
-    private static final ThreadLocal<UUID> UUIDS = new ThreadLocal<UUID>() {
-        @Override protected UUID initialValue() {
-            return UUID.randomUUID();
+    private static final ThreadLocal<Integer> UIDS = new ThreadLocal<Integer>() {
+        @Override protected Integer initialValue() {
+            return uidGen.getAndIncrement();
         }
     };
 
+    /** Generates uid. */
+    private static final AtomicInteger uidGen = new GridAtomicInteger();
+
     /** Empty predicate array. */
     private static final IgnitePredicate[] EMPTY = new IgnitePredicate[0];
 
@@ -254,8 +257,8 @@ public class GridCacheUtils {
      *
      * @return ID for this thread.
      */
-    public static UUID uuid() {
-        return UUIDS.get();
+    public static int uid() {
+        return UIDS.get();
     }
 
     /**
@@ -311,7 +314,7 @@ public class GridCacheUtils {
      * @param meta Meta name.
      * @return Filter for entries with meta.
      */
-    public static IgnitePredicate<KeyCacheObject> keyHasMeta(final GridCacheContext ctx, final UUID meta) {
+    public static IgnitePredicate<KeyCacheObject> keyHasMeta(final GridCacheContext ctx, final int meta) {
         return new P1<KeyCacheObject>() {
             @Override public boolean apply(KeyCacheObject k) {
                 GridCacheEntryEx e = ctx.cache().peekEx(k);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
index 00243d5..c4b87ca 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
@@ -30,26 +30,26 @@ import java.util.*;
  */
 public class GridCacheAttributesEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /**
      * Constructor.
      *
      * @param attrData Attributes data.
      */
-    public GridCacheAttributesEntryExtras(GridLeanMap<UUID, Object> attrData) {
+    public GridCacheAttributesEntryExtras(GridLeanMap<Integer, Object> attrData) {
         assert attrData != null;
 
         this.attrData = attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
index a149eb6..f13e6a6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesMvccEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** MVCC. */
     private GridCacheMvcc mvcc;
@@ -41,7 +41,7 @@ public class GridCacheAttributesMvccEntryExtras extends GridCacheEntryExtrasAdap
      * @param attrData Attributes data.
      * @param mvcc MVCC.
      */
-    public GridCacheAttributesMvccEntryExtras(GridLeanMap<UUID, Object> attrData, GridCacheMvcc mvcc) {
+    public GridCacheAttributesMvccEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc) {
         assert attrData != null;
         assert mvcc != null;
 
@@ -50,12 +50,12 @@ public class GridCacheAttributesMvccEntryExtras extends GridCacheEntryExtrasAdap
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
index aecfd9c..4d12be9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** MVCC. */
     private GridCacheMvcc mvcc;
@@ -45,7 +45,7 @@ public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryEx
      * @param mvcc MVCC.
      * @param obsoleteVer Obsolete version.
      */
-    public GridCacheAttributesMvccObsoleteEntryExtras(GridLeanMap<UUID, Object> attrData, GridCacheMvcc mvcc,
+    public GridCacheAttributesMvccObsoleteEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc,
         GridCacheVersion obsoleteVer) {
         assert attrData != null;
         assert mvcc != null;
@@ -57,12 +57,12 @@ public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryEx
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
index e74112c..4adc29d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** MVCC. */
     private GridCacheMvcc mvcc;
@@ -53,7 +53,7 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesMvccObsoleteTtlEntryExtras(GridLeanMap<UUID, Object> attrData, GridCacheMvcc mvcc,
+    public GridCacheAttributesMvccObsoleteTtlEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc,
         GridCacheVersion obsoleteVer, long ttl, long expireTime) {
         assert attrData != null;
         assert mvcc != null;
@@ -68,12 +68,12 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
index 1829378..68dc3bf 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** MVCC. */
     private GridCacheMvcc mvcc;
@@ -49,7 +49,7 @@ public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasA
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesMvccTtlEntryExtras(GridLeanMap<UUID, Object> attrData, GridCacheMvcc mvcc, long ttl,
+    public GridCacheAttributesMvccTtlEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc, long ttl,
         long expireTime) {
         assert attrData != null;
         assert mvcc != null;
@@ -62,12 +62,12 @@ public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasA
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
index a40af9a..c7451a0 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesObsoleteEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** Obsolete version. */
     private GridCacheVersion obsoleteVer;
@@ -41,7 +41,7 @@ public class GridCacheAttributesObsoleteEntryExtras extends GridCacheEntryExtras
      * @param attrData Attributes data.
      * @param obsoleteVer Obsolete version.
      */
-    public GridCacheAttributesObsoleteEntryExtras(GridLeanMap<UUID, Object> attrData, GridCacheVersion obsoleteVer) {
+    public GridCacheAttributesObsoleteEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheVersion obsoleteVer) {
         assert attrData != null;
         assert obsoleteVer != null;
 
@@ -50,12 +50,12 @@ public class GridCacheAttributesObsoleteEntryExtras extends GridCacheEntryExtras
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
index 6179804..09cd41b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** Obsolete version. */
     private GridCacheVersion obsoleteVer;
@@ -49,7 +49,7 @@ public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExt
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesObsoleteTtlEntryExtras(GridLeanMap<UUID, Object> attrData, GridCacheVersion obsoleteVer,
+    public GridCacheAttributesObsoleteTtlEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheVersion obsoleteVer,
         long ttl, long expireTime) {
         assert attrData != null;
         assert obsoleteVer != null;
@@ -62,12 +62,12 @@ public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExt
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
index 1499003..b69f380 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
@@ -30,7 +30,7 @@ import java.util.*;
  */
 public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     /** Attributes data. */
-    private GridLeanMap<UUID, Object> attrData;
+    private GridLeanMap<Integer, Object> attrData;
 
     /** TTL. */
     private long ttl;
@@ -45,7 +45,7 @@ public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapt
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesTtlEntryExtras(GridLeanMap<UUID, Object> attrData, long ttl, long expireTime) {
+    public GridCacheAttributesTtlEntryExtras(GridLeanMap<Integer, Object> attrData, long ttl, long expireTime) {
         assert attrData != null;
         assert ttl != 0;
 
@@ -55,12 +55,12 @@ public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapt
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return attrData;
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
         if (attrData != null) {
             this.attrData = attrData;
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
index e93d020..5a2c00a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
@@ -31,13 +31,13 @@ public interface GridCacheEntryExtras {
     /**
      * @return Attributes data.
      */
-    @Nullable public GridLeanMap<UUID, Object> attributesData();
+    @Nullable public GridLeanMap<Integer, Object> attributesData();
 
     /**
      * @param attrData Attributes data.
      * @return Updated extras.
      */
-    public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData);
+    public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData);
 
     /**
      * @return MVCC.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
index 94ce54f..2eda1bb 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
@@ -28,7 +28,7 @@ import java.util.*;
  */
 public abstract class GridCacheEntryExtrasAdapter implements GridCacheEntryExtras {
     /** {@inheritDoc} */
-    @Override public GridLeanMap<UUID, Object> attributesData() {
+    @Override public GridLeanMap<Integer, Object> attributesData() {
         return null;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
index 6e4091d..a90f1fd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
@@ -42,8 +42,9 @@ public class GridCacheMvccEntryExtras extends GridCacheEntryExtrasAdapter {
         this.mvcc = mvcc;
     }
 
+
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesMvccEntryExtras(attrData, mvcc) : this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
index c8e719d..c02f937 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
@@ -49,7 +49,7 @@ public class GridCacheMvccObsoleteEntryExtras extends GridCacheEntryExtrasAdapte
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesMvccObsoleteEntryExtras(attrData, mvcc, obsoleteVer) : this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
index 719f892..51c5eda 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
@@ -61,7 +61,7 @@ public class GridCacheMvccObsoleteTtlEntryExtras extends GridCacheEntryExtrasAda
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(attrData, mvcc, obsoleteVer, ttl,
             expireTime) : this;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
index e19d60c..58d9c78 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
@@ -54,7 +54,7 @@ public class GridCacheMvccTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesMvccTtlEntryExtras(attrData, mvcc, ttl, expireTime) : this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
index c025c43..1650f9f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
@@ -43,7 +43,7 @@ public class GridCacheObsoleteEntryExtras extends GridCacheEntryExtrasAdapter {
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesObsoleteEntryExtras(attrData, obsoleteVer) : this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
index 9755a96..ab0358d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
@@ -54,7 +54,7 @@ public class GridCacheObsoleteTtlEntryExtras extends GridCacheEntryExtrasAdapter
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesObsoleteTtlEntryExtras(attrData, obsoleteVer, ttl,
             expireTime) : this;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
index 06df09e..abd26f9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
@@ -48,7 +48,7 @@ public class GridCacheTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<UUID, Object> attrData) {
+    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
         return attrData != null ? new GridCacheAttributesTtlEntryExtras(attrData, ttl, expireTime) : this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
index f9a966c..b558347 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
@@ -44,7 +44,7 @@ import java.util.*;
 @SuppressWarnings({"AssignmentToCatchBlockParameter", "unchecked"})
 public abstract class GridCacheStoreManagerAdapter extends GridCacheManagerAdapter implements CacheStoreManager {
     /** */
-    private static final UUID SES_ATTR = UUID.randomUUID();
+    private static final int SES_ATTR = GridMetadataAwareAdapter.nextUniqueKey();
 
     /** */
     protected CacheStore<Object, Object> store;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
index 8dcfcb1..733ac1b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
@@ -190,33 +190,33 @@ public interface IgniteInternalTx extends AutoCloseable, GridTimeoutObject {
     public void rollback() throws IgniteCheckedException;
 
     /**
-     * Removes metadata by name.
+     * Removes metadata by key.
      *
-     * @param name Name of the metadata to remove.
+     * @param key Key of the metadata to remove.
      * @param <T> Type of the value.
      * @return Value of removed metadata or {@code null}.
      */
-    @Nullable public <T> T removeMeta(UUID name);
+    @Nullable public <T> T removeMeta(int key);
 
     /**
-     * Gets metadata by name.
+     * Gets metadata by key.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param <T> Type of the value.
      * @return Metadata value or {@code null}.
      */
-    @Nullable public <T> T meta(UUID name);
+    @Nullable public <T> T meta(int key);
 
     /**
      * Adds a new metadata.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param val Metadata value.
      * @param <T> Type of the value.
      * @return Metadata previously associated with given name, or
      *      {@code null} if there was none.
      */
-    @Nullable public <T> T addMeta(UUID name, T val);
+    @Nullable public <T> T addMeta(int key, T val);
 
     /**
      * @return Size of the transaction.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
index 0e38c43..dee9c98 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
@@ -1710,17 +1710,17 @@ public abstract class IgniteTxAdapter extends GridMetadataAwareAdapter
         }
 
         /** {@inheritDoc} */
-        @Nullable @Override public Object addMeta(UUID name, Object val) {
+        @Nullable @Override public Object addMeta(int key, Object val) {
             throw new IllegalStateException("Deserialized transaction can only be used as read-only.");
         }
 
         /** {@inheritDoc} */
-        @Nullable @Override public Object removeMeta(UUID name) {
+        @Nullable @Override public Object removeMeta(int key) {
             throw new IllegalStateException("Deserialized transaction can only be used as read-only.");
         }
 
         /** {@inheritDoc} */
-        @Nullable @Override public Object meta(UUID name) {
+        @Nullable @Override public Object meta(int key) {
             throw new IllegalStateException("Deserialized transaction can only be used as read-only.");
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
index 6f5d775..650c141 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
@@ -26,20 +26,23 @@ import org.jetbrains.annotations.*;
 import java.io.*;
 import java.util.*;
 import java.util.concurrent.*;
+import java.util.concurrent.atomic.*;
 
 /**
- * Convenient adapter for working with metadata.
- * <h2 class="header">Thread Safety</h2>
- * This class provides necessary synchronization for thread-safe access.
+ * Convenient adapter for working with metadata. <h2 class="header">Thread Safety</h2> This class provides necessary
+ * synchronization for thread-safe access.
  */
-@SuppressWarnings( {"SynchronizeOnNonFinalField"})
+@SuppressWarnings({"SynchronizeOnNonFinalField"})
 public class GridMetadataAwareAdapter {
     /** Attributes. */
     @GridToStringInclude
-    private GridLeanMap<UUID, Object> data;
+    private Object[] data = null;
+
+    /** UID key generator. */
+    private static final AtomicInteger keyGen = new AtomicInteger();
 
     /** Serializable mutex. */
-    @SuppressWarnings( {"FieldAccessedSynchronizedAndUnsynchronized"})
+    @SuppressWarnings({"FieldAccessedSynchronizedAndUnsynchronized"})
     private GridMutex mux;
 
     /**
@@ -50,31 +53,12 @@ public class GridMetadataAwareAdapter {
     }
 
     /**
-     * Creates adapter with predefined data.
+     * Provides next UID.
      *
-     * @param data Data to copy.
+     * @return uid.
      */
-    public GridMetadataAwareAdapter(Map<UUID, Object> data) {
-        mux = new GridMutex();
-
-        if (data != null && !data.isEmpty())
-            this.data = new GridLeanMap<>(data);
-    }
-
-    /**
-     * Ensures that internal data storage is created.
-     *
-     * @param size Amount of data to ensure.
-     * @return {@code true} if data storage was created.
-     */
-    private boolean ensureData(int size) {
-        if (data == null) {
-            data = new GridLeanMap<>(size);
-
-            return true;
-        }
-        else
-            return false;
+    public static int nextUniqueKey() {
+        return keyGen.getAndIncrement();
     }
 
     /**
@@ -85,13 +69,7 @@ public class GridMetadataAwareAdapter {
     public void copyMeta(GridMetadataAwareAdapter from) {
         A.notNull(from, "from");
 
-        synchronized (mux) {
-            Map m = from.allMeta();
-
-            ensureData(m.size());
-
-            data.putAll(from.allMeta());
-        }
+        copyMeta(from.allMeta());
     }
 
     /**
@@ -99,71 +77,80 @@ public class GridMetadataAwareAdapter {
      *
      * @param data Map to copy metadata from.
      */
-    public void copyMeta(Map<UUID, ?> data) {
+    public void copyMeta(Object[] data) {
         A.notNull(data, "data");
 
         synchronized (mux) {
-            ensureData(data.size());
+            if (this.data.length < data.length)
+                this.data = Arrays.copyOf(this.data, data.length);
 
-            this.data.putAll(data);
+            for (int k = 0; k < data.length; k++) {
+                if (data[k] != null)
+                    this.data[k] = data[k];
+            }
         }
     }
 
     /**
      * Adds a new metadata.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param val Metadata value.
      * @param <V> Type of the value.
-     * @return Metadata previously associated with given name, or
-     *      {@code null} if there was none.
+     * @return Metadata previously associated with given name, or {@code null} if there was none.
      */
     @SuppressWarnings({"unchecked"})
-    @Nullable public <V> V addMeta(UUID name, V val) {
-        A.notNull(name, "name", val, "val");
+    @Nullable public <V> V addMeta(int key, V val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (mux) {
-            ensureData(1);
+            if (this.data == null)
+                this.data = new Object[key + 1];
+            else if (this.data.length <= key)
+                this.data = Arrays.copyOf(this.data, key + 1);
+
+            V old = (V)data[key];
 
-            return (V)data.put(name, val);
+            data[key] = val;
+
+            return old;
         }
     }
 
     /**
      * Gets metadata by name.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param <V> Type of the value.
      * @return Metadata value or {@code null}.
      */
     @SuppressWarnings({"unchecked"})
-    @Nullable public <V> V meta(UUID name) {
-        A.notNull(name, "name");
+    @Nullable public <V> V meta(int key) {
+        A.notNull(key, "key");
 
         synchronized (mux) {
-            return data == null ? null : (V)data.get(name);
+            return data != null && data.length > key ? (V)data[key] : null;
         }
     }
 
     /**
-     * Removes metadata by name.
+     * Removes metadata by key.
      *
-     * @param name Name of the metadata to remove.
+     * @param key Name of the metadata to remove.
      * @param <V> Type of the value.
      * @return Value of removed metadata or {@code null}.
      */
     @SuppressWarnings({"unchecked"})
-    @Nullable public <V> V removeMeta(UUID name) {
-        A.notNull(name, "name");
+    @Nullable public <V> V removeMeta(int key) {
+        A.notNull(key, "key");
 
         synchronized (mux) {
-            if (data == null)
+            if (data == null || data.length <= key)
                 return null;
 
-            V old = (V)data.remove(name);
+            V old = (V)data[key];
 
-            if (data.isEmpty())
-                data = null;
+            data[key] = null;
 
             return old;
         }
@@ -172,23 +159,23 @@ public class GridMetadataAwareAdapter {
     /**
      * Removes metadata only if its current value is equal to {@code val} passed in.
      *
-     * @param name Name of metadata attribute.
+     * @param key Name of metadata attribute.
      * @param val Value to compare.
      * @param <V> Value type.
      * @return {@code True} if value was removed, {@code false} otherwise.
      */
     @SuppressWarnings({"unchecked"})
-    public <V> boolean removeMeta(UUID name, V val) {
-        A.notNull(name, "name", val, "val");
+    public <V> boolean removeMeta(int key, V val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (mux) {
-            if (data == null)
+            if (data == null || data.length <= key)
                 return false;
 
-            V old = (V)data.get(name);
+            V old = (V)data[key];
 
             if (old != null && old.equals(val)) {
-                data.remove(name);
+                data[key] = null;
 
                 return true;
             }
@@ -203,41 +190,41 @@ public class GridMetadataAwareAdapter {
      * @param <V> Type of the value.
      * @return All metadata in this entry.
      */
-    @SuppressWarnings( {"unchecked", "RedundantCast"})
-    public <V> Map<UUID, V> allMeta() {
+    public <V> Object[] allMeta() {
         synchronized (mux) {
-            if (data == null)
-                return Collections.emptyMap();
-
-            if (data.size() <= 5)
-                // This is a singleton unmodifiable map.
-                return (Map<UUID, V>)data;
+            return data;
+        }
+    }
 
-            // Return a copy.
-            return new HashMap<>((Map<UUID, V>) data);
+    /**
+     * Removes all meta.
+     */
+    public void removeAllMeta() {
+        synchronized (mux) {
+            data = null;
         }
     }
 
     /**
      * Tests whether or not given metadata is set.
      *
-     * @param name Name of the metadata to test.
+     * @param key key of the metadata to test.
      * @return Whether or not given metadata is set.
      */
-    public boolean hasMeta(UUID name) {
-        return meta(name) != null;
+    public boolean hasMeta(int key) {
+        return meta(key) != null;
     }
 
     /**
      * Tests whether or not given metadata is set.
      *
-     * @param name Name of the metadata to test.
+     * @param key Key of the metadata to test.
      * @return Whether or not given metadata is set.
      */
-    public <V> boolean hasMeta(UUID name, V val) {
-        A.notNull(name, "name");
+    public <V> boolean hasMeta(int key, V val) {
+        A.notNull(key, "key");
 
-        Object v = meta(name);
+        Object v = meta(key);
 
         return v != null && v.equals(val);
     }
@@ -245,43 +232,43 @@ public class GridMetadataAwareAdapter {
     /**
      * Adds given metadata value only if it was absent.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param val Value to add if it's not attached already.
      * @param <V> Type of the value.
      * @return {@code null} if new value was put, or current value if put didn't happen.
      */
     @SuppressWarnings({"unchecked"})
-    @Nullable public <V> V putMetaIfAbsent(UUID name, V val) {
-        A.notNull(name, "name", val, "val");
+    @Nullable public <V> V putMetaIfAbsent(int key, V val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (mux) {
-            V v = (V) meta(name);
+            V v = (V)meta(key);
 
             if (v == null)
-                return addMeta(name, val);
+                return addMeta(key, val);
 
             return v;
         }
     }
 
     /**
-     * Adds given metadata value only if it was absent. This method always returns
-     * the latest value and never previous one.
+     * Adds given metadata value only if it was absent. This method always returns the latest value and never previous
+     * one.
      *
-     * @param name Metadata name.
+     * @param key Metadata key.
      * @param val Value to add if it's not attached already.
      * @param <V> Type of the value.
      * @return The value of the metadata after execution of this method.
      */
     @SuppressWarnings({"unchecked"})
-    public <V> V addMetaIfAbsent(UUID name, V val) {
-        A.notNull(name, "name", val, "val");
+    public <V> V addMetaIfAbsent(int key, V val) {
+        A.notNull(key, "key", val, "val");
 
         synchronized (mux) {
-            V v = (V) meta(name);
+            V v = (V)meta(key);
 
             if (v == null)
-                addMeta(name, v = val);
+                addMeta(key, v = val);
 
             return v;
         }
@@ -290,25 +277,24 @@ public class GridMetadataAwareAdapter {
     /**
      * Adds given metadata value only if it was absent.
      *
-     * @param name Metadata name.
-     * @param c Factory closure to produce value to add if it's not attached already.
-     *      Not that unlike {@link #addMeta(UUID, Object)} method the factory closure will
-     *      not be called unless the value is required and therefore value will only be created
-     *      when it is actually needed. If {@code null} and metadata value is missing - {@code null}
-     *      will be returned from this method.
+     * @param key Metadata key.
+     * @param c Factory closure to produce value to add if it's not attached already. Not that unlike {@link
+     * #addMeta(int, Object)} method the factory closure will not be called unless the value is required and therefore
+     * value will only be created when it is actually needed. If {@code null} and metadata value is missing - {@code
+     * null} will be returned from this method.
      * @param <V> Type of the value.
      * @return The value of the metadata after execution of this method.
      */
     @SuppressWarnings({"unchecked"})
-    @Nullable public <V> V addMetaIfAbsent(UUID name, @Nullable Callable<V> c) {
-        A.notNull(name, "name", c, "c");
+    @Nullable public <V> V addMetaIfAbsent(int key, @Nullable Callable<V> c) {
+        A.notNull(key, "key", c, "c");
 
         synchronized (mux) {
-            V v = (V) meta(name);
+            V v = (V)meta(key);
 
             if (v == null && c != null)
                 try {
-                    addMeta(name, v = c.call());
+                    addMeta(key, v = c.call());
                 }
                 catch (Exception e) {
                     throw F.wrap(e);
@@ -319,24 +305,24 @@ public class GridMetadataAwareAdapter {
     }
 
     /**
-     * Replaces given metadata with new {@code newVal} value only if its current value
-     * is equal to {@code curVal}. Otherwise, it is no-op.
+     * Replaces given metadata with new {@code newVal} value only if its current value is equal to {@code curVal}.
+     * Otherwise, it is no-op.
      *
-     * @param name Name of the metadata.
+     * @param key Key of the metadata.
      * @param curVal Current value to check.
      * @param newVal New value.
      * @return {@code true} if replacement occurred, {@code false} otherwise.
      */
     @SuppressWarnings({"RedundantTypeArguments"})
-    public <V> boolean replaceMeta(UUID name, V curVal, V newVal) {
-        A.notNull(name, "name", newVal, "newVal", curVal, "curVal");
+    public <V> boolean replaceMeta(int key, V curVal, V newVal) {
+        A.notNull(key, "key", newVal, "newVal", curVal, "curVal");
 
         synchronized (mux) {
-            if (hasMeta(name)) {
-                V val = this.<V>meta(name);
+            if (hasMeta(key)) {
+                V val = this.<V>meta(key);
 
                 if (val != null && val.equals(curVal)) {
-                    addMeta(name, newVal);
+                    addMeta(key, newVal);
 
                     return true;
                 }
@@ -347,28 +333,28 @@ public class GridMetadataAwareAdapter {
     }
 
     /**
-     * Convenience way for super-classes which implement {@link Externalizable} to
-     * serialize metadata. Super-classes must call this method explicitly from
-     * within {@link Externalizable#writeExternal(ObjectOutput)} methods implementation.
+     * Convenience way for super-classes which implement {@link Externalizable} to serialize metadata. Super-classes
+     * must call this method explicitly from within {@link Externalizable#writeExternal(ObjectOutput)} methods
+     * implementation.
      *
      * @param out Output to write to.
      * @throws IOException If I/O error occurred.
      */
     protected void writeExternalMeta(ObjectOutput out) throws IOException {
-        Map<UUID, Object> cp;
+        Object[] cp;
 
         // Avoid code warning (suppressing is bad here, because we need this warning for other places).
         synchronized (mux) {
-            cp = new GridLeanMap<>(data);
+            cp = Arrays.copyOf(data, data.length);
         }
 
         out.writeObject(cp);
     }
 
     /**
-     * Convenience way for super-classes which implement {@link Externalizable} to
-     * serialize metadata. Super-classes must call this method explicitly from
-     * within {@link Externalizable#readExternal(ObjectInput)} methods implementation.
+     * Convenience way for super-classes which implement {@link Externalizable} to serialize metadata. Super-classes
+     * must call this method explicitly from within {@link Externalizable#readExternal(ObjectInput)} methods
+     * implementation.
      *
      * @param in Input to read from.
      * @throws IOException If I/O error occurred.
@@ -376,7 +362,7 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     protected void readExternalMeta(ObjectInput in) throws IOException, ClassNotFoundException {
-        GridLeanMap<UUID, Object> cp = (GridLeanMap<UUID, Object>)in.readObject();
+        Object[] cp = (Object[])in.readObject();
 
         synchronized (mux) {
             data = cp;
@@ -391,8 +377,6 @@ public class GridMetadataAwareAdapter {
 
             clone.mux = (GridMutex)mux.clone();
 
-            clone.data = null;
-
             clone.copyMeta(this);
 
             return clone;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
index 5898ed9..3b354ba 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
@@ -32,7 +32,7 @@ import java.util.*;
  */
 public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implements Cache.Entry<K, V>, EvictableEntry<K, V> {
     /** */
-    private static final UUID META_KEY = UUID.randomUUID();
+    private static final int META_KEY = GridMetadataAwareAdapter.nextUniqueKey();
 
     /** */
     @GridToStringInclude
@@ -74,8 +74,7 @@ public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implement
      *
      */
     private void onEvicted() {
-        for (UUID key : allMeta().keySet())
-            removeMeta(key);
+        removeAllMeta();
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
index c9e18e2..94b5da1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
@@ -344,21 +344,6 @@ public class GridNioFilterChainSelfTest extends GridCommonAbstractTest {
         }
 
         /** {@inheritDoc} */
-        @Override public <T> T meta(int key) {
-            return meta(new UUID(key, key));
-        }
-
-        /** {@inheritDoc} */
-        @Override public <T> T addMeta(int key, T val) {
-            return addMeta(new UUID(key, key), val);
-        }
-
-        /** {@inheritDoc} */
-        @Override public <T> T removeMeta(int key) {
-            return removeMeta(new UUID(key, key));
-        }
-
-        /** {@inheritDoc} */
         @Override public GridNioFuture<Object> resumeReads() {
             return null;
         }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03c790ef/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java b/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
index 42eebed..981145d 100644
--- a/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
@@ -18,10 +18,8 @@
 package org.apache.ignite.lang;
 
 import org.apache.ignite.internal.util.lang.*;
-import org.apache.ignite.internal.util.typedef.*;
 import org.apache.ignite.testframework.junits.common.*;
 
-import java.util.*;
 import java.util.concurrent.*;
 
 /**
@@ -41,17 +39,17 @@ public class GridMetadataAwareAdapterSelfTest extends GridCommonAbstractTest {
     public void test() {
         GridMetadataAwareAdapter ma = new GridMetadataAwareAdapter();
 
-        UUID attr1 = UUID.randomUUID();
-        UUID attr2 = UUID.randomUUID();
-        UUID attr3 = UUID.randomUUID();
-        UUID attr4 = UUID.randomUUID();
-        UUID attr156 = UUID.randomUUID();
-        UUID k1 = UUID.randomUUID();
-        UUID k2 = UUID.randomUUID();
-        UUID k3 = UUID.randomUUID();
-        UUID a1 = UUID.randomUUID();
-        UUID a2 = UUID.randomUUID();
-        UUID a3 = UUID.randomUUID();
+        int attr1 = GridMetadataAwareAdapter.nextUniqueKey();
+        int attr2 = GridMetadataAwareAdapter.nextUniqueKey();
+        int attr3 = GridMetadataAwareAdapter.nextUniqueKey();
+        int attr4 = GridMetadataAwareAdapter.nextUniqueKey();
+        int attr156 = GridMetadataAwareAdapter.nextUniqueKey();
+        int k1 = GridMetadataAwareAdapter.nextUniqueKey();
+        int k2 = GridMetadataAwareAdapter.nextUniqueKey();
+        int k3 = GridMetadataAwareAdapter.nextUniqueKey();
+        int a1 = GridMetadataAwareAdapter.nextUniqueKey();
+        int a2 = GridMetadataAwareAdapter.nextUniqueKey();
+        int a3 = GridMetadataAwareAdapter.nextUniqueKey();
 
         // addMeta(name, val).
         assert ma.addMeta(attr1, "val1") == null;
@@ -70,13 +68,12 @@ public class GridMetadataAwareAdapterSelfTest extends GridCommonAbstractTest {
         assertEquals(new Integer(1), ma.meta(attr2));
 
         // allMeta().
-        Map<UUID, Object> allMeta = ma.allMeta();
+        Object[] allMeta = ma.allMeta();
 
         assert allMeta != null;
-        assert allMeta.size() == 2;
 
-        assertEquals("val1", allMeta.get(attr1));
-        assertEquals(1, allMeta.get(attr2));
+        assertEquals("val1", allMeta[attr1]);
+        assertEquals(1, allMeta[attr2]);
 
         // addMetaIfAbsent(name, val).
         assert ma.addMetaIfAbsent(attr2, 2) == 1;
@@ -106,24 +103,37 @@ public class GridMetadataAwareAdapterSelfTest extends GridCommonAbstractTest {
         assert ma.replaceMeta(attr2, 1, 4);
 
         // copyMeta(from).
-        ma.copyMeta(new GridMetadataAwareAdapter(F.<UUID, Object>asMap(k1, "v1", k2, 2)));
+        GridMetadataAwareAdapter adapter = new GridMetadataAwareAdapter();
+        adapter.addMeta(k1, "v1");
+        adapter.addMeta(k2, 2);
+
+        ma.copyMeta(adapter);
+
+        allMeta = ma.allMeta();
 
         assertEquals("v1", ma.meta(k1));
         assertEquals(new Integer(2), ma.meta(k2));
-        assertEquals("val1", allMeta.get(attr1));
-        assertEquals(4, allMeta.get(attr2));
+        assertEquals("val1", allMeta[attr1]);
+        assertEquals(4, allMeta[attr2]);
 
         assert !ma.hasMeta(k3);
 
         // copyMeta(from).
-        ma.copyMeta(F.asMap(a1, 1, a2, 2));
+        Object[] objs = new Object[20];
+
+        objs[a1] = 1;
+        objs[a2] = 2;
+        objs[19] = 19;
+
+        ma.copyMeta(objs);
 
         assertEquals(new Integer(1), ma.meta(a1));
         assertEquals(new Integer(2), ma.meta(a2));
         assertEquals("v1", ma.meta(k1));
         assertEquals(new Integer(2), ma.meta(k2));
-        assertEquals("val1", allMeta.get(attr1));
-        assertEquals(4, allMeta.get(attr2));
+        assertEquals("val1", allMeta[attr1]);
+        assertEquals(4, allMeta[attr2]);
+        assertEquals(19, 19);
 
         assert !ma.hasMeta(a3);
     }


[19/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/master' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: 80cec1be0ef9887894e67e580c2e22e9be585c29
Parents: df0c86a 0055b40
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Thu Jul 23 14:49:01 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Thu Jul 23 14:49:01 2015 +0300

----------------------------------------------------------------------
 modules/apache-license-gen/pom.xml              |  13 -
 .../java/org/apache/ignite/IgniteCache.java     |   3 +-
 .../apache/ignite/IgniteSystemProperties.java   |   8 +
 .../AffinityNodeAddressHashResolver.java        |   8 +-
 .../affinity/AffinityNodeHashResolver.java      |   5 +
 .../affinity/AffinityNodeIdHashResolver.java    |   6 +
 .../rendezvous/RendezvousAffinityFunction.java  |  22 +-
 .../configuration/CacheConfiguration.java       |   4 +-
 .../configuration/IgniteConfiguration.java      |  26 ++
 .../apache/ignite/internal/IgniteKernal.java    |   3 +
 .../ignite/internal/IgniteNodeAttributes.java   |   3 +
 .../processors/cache/GridCacheAttributes.java   |   8 +-
 .../processors/cache/GridCacheMvccManager.java  |  14 +
 .../processors/cache/GridCacheProcessor.java    | 113 ++++--
 .../processors/cache/IgniteInternalCache.java   |   4 +-
 .../distributed/dht/GridDhtTxFinishFuture.java  |  13 +-
 .../distributed/dht/GridDhtTxPrepareFuture.java |  16 +-
 .../GridDhtPartitionsExchangeFuture.java        |  10 +-
 .../near/GridNearOptimisticTxPrepareFuture.java |   4 +-
 .../GridNearPessimisticTxPrepareFuture.java     |   2 +-
 .../near/GridNearTxFinishFuture.java            |  17 +-
 .../cache/transactions/IgniteTxManager.java     |   5 +-
 .../ignite/internal/util/IgniteUtils.java       |  31 +-
 .../ignite/internal/util/nio/GridNioServer.java |   9 +
 .../util/nio/GridSelectorNioSessionImpl.java    |   8 +
 .../ignite/spi/discovery/tcp/ServerImpl.java    |  58 +--
 .../spi/discovery/tcp/TcpDiscoverySpi.java      |   3 +-
 .../tcp/internal/TcpDiscoveryNode.java          |  18 +-
 .../IgniteClientReconnectFailoverTest.java      |   6 +
 .../cache/CacheAffinityCallSelfTest.java        |  10 +-
 .../cache/GridCachePutAllFailoverSelfTest.java  |   3 +
 .../GridCacheAbstractNodeRestartSelfTest.java   |   9 +
 ...NearDisabledOptimisticTxNodeRestartTest.java |  31 ++
 .../GridCachePartitionedFailoverSelfTest.java   |   5 -
 ...achePartitionedMultiNodeFullApiSelfTest.java |   4 +-
 ...ePartitionedOptimisticTxNodeRestartTest.java |  12 +-
 .../internal/util/nio/GridNioSelfTest.java      |  88 +++-
 .../internal/util/nio/GridNioSslSelfTest.java   |  16 +-
 .../tcp/TcpDiscoveryMultiThreadedTest.java      |   2 +
 ...DiscoveryNodeConfigConsistentIdSelfTest.java |  76 ++++
 .../testframework/junits/GridAbstractTest.java  |   3 +-
 .../IgniteCacheFailoverTestSuite2.java          |   4 +
 .../testsuites/IgniteCacheRestartTestSuite.java |   5 +-
 .../IgniteSpiDiscoverySelfTestSuite.java        |   1 +
 .../processors/query/h2/sql/GridSqlAlias.java   |   4 +
 .../processors/query/h2/sql/GridSqlColumn.java  |   4 +
 .../processors/query/h2/sql/GridSqlConst.java   |   4 +
 .../processors/query/h2/sql/GridSqlElement.java |  40 +-
 .../query/h2/sql/GridSqlFunction.java           |   2 +
 .../processors/query/h2/sql/GridSqlJoin.java    |   4 +
 .../query/h2/sql/GridSqlOperation.java          |  21 +-
 .../query/h2/sql/GridSqlOperationType.java      |   2 +
 .../query/h2/sql/GridSqlParameter.java          |   4 +
 .../query/h2/sql/GridSqlPlaceholder.java        |   4 +
 .../processors/query/h2/sql/GridSqlQuery.java   |  25 +-
 .../query/h2/sql/GridSqlQueryParser.java        |  11 +-
 .../query/h2/sql/GridSqlQuerySplitter.java      | 405 ++++++++++++-------
 .../processors/query/h2/sql/GridSqlSelect.java  |  91 ++---
 .../query/h2/sql/GridSqlSubquery.java           |   4 +
 .../processors/query/h2/sql/GridSqlTable.java   |   4 +
 .../processors/query/h2/sql/GridSqlType.java    |  10 +-
 .../processors/query/h2/sql/GridSqlUnion.java   |  11 -
 .../cache/GridCacheCrossCacheQuerySelfTest.java |  77 +---
 ...QueryOffheapEvictsMultiThreadedSelfTest.java |   5 +
 .../IgniteCacheQueryNodeRestartSelfTest.java    |   5 -
 .../org/apache/ignite/spark/IgniteContext.scala |  14 +
 pom.xml                                         |  12 +-
 67 files changed, 928 insertions(+), 544 deletions(-)
----------------------------------------------------------------------



[09/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: 387dcf698da634b6a62cf00331b9985206dae944
Parents: 03439e2 08360c9
Author: avinogradov <av...@gridgain.com>
Authored: Tue May 12 17:14:42 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue May 12 17:14:42 2015 +0300

----------------------------------------------------------------------
 assembly/release-base.xml                       |    4 +-
 bin/ignite-schema-import.bat                    |    2 +-
 bin/ignite-schema-import.sh                     |    2 +-
 bin/ignite.bat                                  |    2 +-
 bin/ignite.sh                                   |    2 +-
 bin/ignitevisorcmd.bat                          |    2 +-
 bin/ignitevisorcmd.sh                           |    2 +-
 bin/include/build-classpath.bat                 |   46 +
 bin/include/build-classpath.sh                  |   71 +
 bin/include/target-classpath.bat                |   46 -
 bin/include/target-classpath.sh                 |   71 -
 examples/pom.xml                                |    2 +-
 modules/aop/pom.xml                             |    2 +-
 modules/aws/pom.xml                             |    2 +-
 modules/clients/pom.xml                         |    2 +-
 modules/cloud/pom.xml                           |    4 +-
 .../TcpDiscoveryCloudIpFinderSelfTest.java      |    2 -
 modules/codegen/pom.xml                         |    2 +-
 .../ignite/codegen/MessageCodeGenerator.java    |    4 +-
 modules/core/pom.xml                            |    2 +-
 .../communication/GridIoMessageFactory.java     |    4 +-
 .../cache/DynamicCacheDescriptor.java           |   16 +-
 .../processors/cache/GridCacheAdapter.java      |  544 +-
 .../cache/GridCacheEvictionManager.java         |    2 +-
 .../processors/cache/GridCacheMapEntry.java     |   18 +-
 .../GridCachePartitionExchangeManager.java      |    3 +
 .../processors/cache/GridCacheProcessor.java    |  189 +-
 .../processors/cache/GridCacheProxyImpl.java    |   24 -
 .../processors/cache/GridCacheSwapManager.java  |  215 +-
 .../processors/cache/GridCacheTtlManager.java   |   42 +-
 .../processors/cache/GridCacheUtils.java        |    5 +-
 .../processors/cache/IgniteInternalCache.java   |   27 -
 ...ridCacheOptimisticCheckPreparedTxFuture.java |  434 --
 ...idCacheOptimisticCheckPreparedTxRequest.java |  232 -
 ...dCacheOptimisticCheckPreparedTxResponse.java |  179 -
 .../distributed/GridCacheTxRecoveryFuture.java  |  506 ++
 .../distributed/GridCacheTxRecoveryRequest.java |  261 +
 .../GridCacheTxRecoveryResponse.java            |  182 +
 .../GridDistributedTxRemoteAdapter.java         |    2 +-
 .../distributed/dht/GridDhtLocalPartition.java  |    2 +-
 .../dht/GridPartitionedGetFuture.java           |    2 +-
 .../colocated/GridDhtColocatedLockFuture.java   |    2 +
 .../distributed/near/GridNearCacheAdapter.java  |   10 -
 .../processors/cache/local/GridLocalCache.java  |    8 +-
 .../local/atomic/GridLocalAtomicCache.java      |   27 +-
 .../cache/query/GridCacheQueryManager.java      |   21 +-
 .../cache/query/GridCacheSqlQuery.java          |    2 +-
 .../cache/query/GridCacheTwoStepQuery.java      |   17 +
 .../cache/transactions/IgniteInternalTx.java    |    5 +-
 .../cache/transactions/IgniteTxAdapter.java     |    2 +-
 .../cache/transactions/IgniteTxHandler.java     |   38 +-
 .../transactions/IgniteTxLocalAdapter.java      |   14 +-
 .../cache/transactions/IgniteTxManager.java     |  173 +-
 .../datastreamer/DataStreamerImpl.java          |    2 +
 .../processors/igfs/IgfsDataManager.java        |    3 +
 .../processors/igfs/IgfsDeleteWorker.java       |    4 +
 .../processors/igfs/IgfsMetaManager.java        |    2 +-
 .../internal/processors/igfs/IgfsUtils.java     |   11 +-
 .../offheap/GridOffHeapProcessor.java           |   17 +
 .../processors/resource/GridResourceField.java  |   11 +
 .../processors/resource/GridResourceIoc.java    |  387 +-
 .../processors/resource/GridResourceMethod.java |   13 +
 .../resource/GridResourceProcessor.java         |    4 +-
 .../ignite/internal/util/IgniteUtils.java       |   15 +
 .../util/lang/GridFilteredIterator.java         |    2 +-
 .../ignite/internal/util/lang/GridFunc.java     | 7218 +++++-------------
 .../util/offheap/GridOffHeapPartitionedMap.java |    9 +
 .../unsafe/GridUnsafePartitionedMap.java        |  155 +-
 .../internal/visor/query/VisorQueryArg.java     |   14 +-
 .../internal/visor/query/VisorQueryJob.java     |    2 +
 .../spi/discovery/tcp/TcpDiscoverySpi.java      |   46 +-
 .../resources/META-INF/classnames.properties    |   12 +-
 .../core/src/main/resources/ignite.properties   |    2 +-
 .../internal/GridUpdateNotifierSelfTest.java    |   21 +-
 .../processors/cache/CacheGetFromJobTest.java   |  110 +
 .../GridCacheAbstractFailoverSelfTest.java      |    4 +-
 .../cache/GridCacheAbstractFullApiSelfTest.java |  227 +-
 .../cache/GridCacheAbstractSelfTest.java        |    4 +-
 .../cache/OffHeapTieredTransactionSelfTest.java |  127 +
 ...CacheLoadingConcurrentGridStartSelfTest.java |   49 +-
 .../GridCacheAbstractNodeRestartSelfTest.java   |   94 +-
 ...xOriginatingNodeFailureAbstractSelfTest.java |    2 +-
 ...icOffHeapTieredMultiNodeFullApiSelfTest.java |   43 +
 ...ionedNearDisabledOffHeapFullApiSelfTest.java |    8 +-
 ...DisabledOffHeapMultiNodeFullApiSelfTest.java |    8 +-
 ...abledOffHeapTieredAtomicFullApiSelfTest.java |   56 +
 ...earDisabledOffHeapTieredFullApiSelfTest.java |   33 +
 ...edOffHeapTieredMultiNodeFullApiSelfTest.java |   33 +
 ...rDisabledPrimaryNodeFailureRecoveryTest.java |   31 +
 ...rtitionedPrimaryNodeFailureRecoveryTest.java |   31 +
 ...woBackupsPrimaryNodeFailureRecoveryTest.java |   37 +
 ...ePrimaryNodeFailureRecoveryAbstractTest.java |  533 ++
 ...CacheAtomicOffHeapTieredFullApiSelfTest.java |   32 +
 ...icOffHeapTieredMultiNodeFullApiSelfTest.java |   33 +
 ...yWriteOrderOffHeapTieredFullApiSelfTest.java |   33 +
 ...erOffHeapTieredMultiNodeFullApiSelfTest.java |   33 +
 ...achePartitionedMultiNodeFullApiSelfTest.java |   15 +-
 .../GridCachePartitionedNodeRestartTest.java    |    4 +-
 ...dCachePartitionedOffHeapFullApiSelfTest.java |    8 +-
 ...titionedOffHeapMultiNodeFullApiSelfTest.java |    8 +-
 ...PartitionedOffHeapTieredFullApiSelfTest.java |   32 +
 ...edOffHeapTieredMultiNodeFullApiSelfTest.java |   72 +
 ...ePartitionedOptimisticTxNodeRestartTest.java |    4 +-
 .../GridCacheReplicatedNodeRestartSelfTest.java |    2 +
 ...idCacheReplicatedOffHeapFullApiSelfTest.java |    8 +-
 ...plicatedOffHeapMultiNodeFullApiSelfTest.java |    8 +-
 ...eReplicatedOffHeapTieredFullApiSelfTest.java |   33 +
 ...edOffHeapTieredMultiNodeFullApiSelfTest.java |   33 +
 .../IgniteCacheExpiryPolicyAbstractTest.java    |    2 +-
 .../IgniteCacheExpiryPolicyTestSuite.java       |    2 +
 .../expiry/IgniteCacheTtlCleanupSelfTest.java   |   85 +
 ...LocalAtomicOffHeapTieredFullApiSelfTest.java |   32 +
 .../GridCacheLocalOffHeapFullApiSelfTest.java   |    6 +-
 ...dCacheLocalOffHeapTieredFullApiSelfTest.java |   32 +
 .../igfs/IgfsClientCacheSelfTest.java           |  132 +
 .../processors/igfs/IgfsOneClientNodeTest.java  |  133 +
 .../processors/igfs/IgfsStreamsSelfTest.java    |    2 +-
 .../spi/discovery/tcp/TcpDiscoverySelfTest.java |   65 +-
 .../ignite/testsuites/IgniteBasicTestSuite.java |    1 +
 .../IgniteCacheFullApiSelfTestSuite.java        |   18 +
 .../testsuites/IgniteCacheRestartTestSuite.java |    5 +-
 .../ignite/testsuites/IgniteCacheTestSuite.java |  296 -
 .../testsuites/IgniteCacheTestSuite2.java       |  141 +
 .../testsuites/IgniteCacheTestSuite3.java       |  140 +
 .../testsuites/IgniteCacheTestSuite4.java       |  131 +
 .../IgniteCacheTxRecoverySelfTestSuite.java     |    4 +
 .../ignite/testsuites/IgniteIgfsTestSuite.java  |    3 +
 modules/extdata/p2p/pom.xml                     |    2 +-
 modules/extdata/uri/pom.xml                     |    2 +-
 modules/gce/pom.xml                             |    4 +-
 modules/geospatial/pom.xml                      |    2 +-
 modules/hadoop/pom.xml                          |    2 +-
 modules/hibernate/pom.xml                       |    2 +-
 modules/indexing/pom.xml                        |    2 +-
 .../processors/query/h2/IgniteH2Indexing.java   |    4 +
 .../processors/query/h2/sql/GridSqlQuery.java   |   20 +
 .../query/h2/sql/GridSqlQueryParser.java        |   10 +-
 .../query/h2/sql/GridSqlQuerySplitter.java      |   11 +-
 .../processors/query/h2/sql/GridSqlSelect.java  |    2 +-
 .../processors/query/h2/sql/GridSqlUnion.java   |    2 +-
 .../query/h2/twostep/GridMapQueryExecutor.java  |    3 +
 .../h2/twostep/GridReduceQueryExecutor.java     |  119 +-
 .../cache/GridCacheOffheapIndexGetSelfTest.java |  111 +
 .../IgniteCacheAbstractFieldsQuerySelfTest.java |   21 +
 ...eQueryMultiThreadedOffHeapTiredSelfTest.java |   37 +
 .../IgniteCacheQueryMultiThreadedSelfTest.java  |   29 +-
 .../IgniteCacheQuerySelfTestSuite.java          |    1 +
 .../IgniteCacheWithIndexingTestSuite.java       |    2 +
 modules/jcl/pom.xml                             |    2 +-
 modules/jta/pom.xml                             |    2 +-
 modules/log4j/pom.xml                           |    2 +-
 modules/rest-http/pom.xml                       |    2 +-
 modules/scalar/pom.xml                          |    2 +-
 .../ignite/scalar/ScalarConversions.scala       |    8 -
 modules/schedule/pom.xml                        |    2 +-
 modules/schema-import/pom.xml                   |    2 +-
 .../ignite/schema/generator/CodeGenerator.java  |   47 +-
 modules/slf4j/pom.xml                           |    2 +-
 modules/spring/pom.xml                          |    2 +-
 modules/ssh/pom.xml                             |    2 +-
 modules/tools/pom.xml                           |    2 +-
 modules/urideploy/pom.xml                       |    2 +-
 modules/visor-console/pom.xml                   |    2 +-
 .../commands/cache/VisorCacheScanCommand.scala  |    2 +-
 modules/visor-plugins/pom.xml                   |    2 +-
 modules/web/pom.xml                             |    2 +-
 modules/yardstick/pom.xml                       |    2 +-
 parent/pom.xml                                  |    2 +
 pom.xml                                         |  115 +-
 169 files changed, 6945 insertions(+), 8097 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/387dcf69/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/387dcf69/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/387dcf69/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/387dcf69/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/387dcf69/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/387dcf69/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------


[15/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/master' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-630

Conflicts:
	modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
	modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java


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

Branch: refs/heads/ignite-752
Commit: dc18c3da2c7f19e27af42f48617db1bcde97746c
Parents: fd541fc fbc38d7
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Thu Jul 16 18:34:40 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Thu Jul 16 18:34:40 2015 +0300

----------------------------------------------------------------------
 .gitignore                                      |    3 +-
 DEVNOTES.txt                                    |   71 +-
 LICENSE                                         |  238 +
 LICENSE.txt                                     |  238 -
 NOTICE                                          |   12 +
 NOTICE.txt                                      |   12 -
 RELEASE_NOTES.txt                               |   26 +
 assembly/LICENSE_FABRIC                         |  306 +
 assembly/LICENSE_HADOOP                         |  259 +
 assembly/NOTICE_FABRIC                          |   13 +
 assembly/NOTICE_HADOOP                          |   12 +
 assembly/dependencies-fabric.xml                |   15 +
 assembly/dependencies-hadoop.xml                |   12 +
 assembly/dependencies-visor-console.xml         |   23 +-
 assembly/release-base.xml                       |   10 -
 assembly/release-fabric.xml                     |   12 +
 assembly/release-hadoop.xml                     |   12 +
 bin/ignite.bat                                  |    8 +-
 bin/ignite.sh                                   |    6 +-
 bin/include/parseargs.bat                       |    1 +
 bin/include/parseargs.sh                        |    3 +
 dev-tools/build.gradle                          |   35 +-
 .../gradle/wrapper/gradle-wrapper.properties    |   20 +
 dev-tools/gradlew                               |  233 +
 dev-tools/slurp.sh                              |   76 +
 dev-tools/src/main/groovy/jiraslurp.groovy      |  592 +-
 examples/config/example-cache.xml               |    2 +
 examples/pom.xml                                |   36 +-
 .../hibernate/CacheHibernatePersonStore.java    |  202 +-
 .../hibernate/CacheHibernateStoreExample.java   |   17 +
 .../store/jdbc/CacheJdbcPersonStore.java        |  180 +-
 .../store/jdbc/CacheJdbcStoreExample.java       |   13 +
 .../store/spring/CacheSpringPersonStore.java    |  128 +
 .../store/spring/CacheSpringStoreExample.java   |  143 +
 .../datagrid/store/spring/package-info.java     |   22 +
 .../client/memcache/MemcacheRestExample.java    |   32 +-
 .../streaming/StreamTransformerExample.java     |    4 +-
 .../streaming/StreamVisitorExample.java         |    4 +-
 .../ignite/examples/streaming/package-info.java |    1 -
 .../streaming/wordcount/CacheConfig.java        |    2 +-
 .../streaming/wordcount/QueryWords.java         |   12 +-
 .../streaming/wordcount/StreamWords.java        |   12 +-
 .../streaming/wordcount/package-info.java       |    1 -
 .../socket/WordsSocketStreamerClient.java       |   82 +
 .../socket/WordsSocketStreamerServer.java       |  124 +
 .../wordcount/socket/package-info.java          |   21 +
 .../examples/ScalarCacheAffinityExample.scala   |    2 +-
 .../scalar/examples/ScalarCacheExample.scala    |    2 +-
 .../ScalarCachePopularNumbersExample.scala      |    2 +-
 .../examples/ScalarCacheQueryExample.scala      |    2 +-
 .../examples/ScalarSnowflakeSchemaExample.scala |    4 +-
 idea/ignite_codeStyle.xml                       |  147 +
 modules/aop/licenses/aspectj-epl-license.txt    |   69 -
 modules/aop/pom.xml                             |    2 +-
 modules/apache-license-gen/pom.xml              |   48 +
 .../src/main/resources/META-INF/licenses.txt.vm |   42 +
 modules/aws/pom.xml                             |    2 +-
 .../s3/S3CheckpointManagerSelfTest.java         |    2 +-
 .../checkpoint/s3/S3CheckpointSpiSelfTest.java  |    4 +-
 .../s3/S3CheckpointSpiStartStopSelfTest.java    |    2 +-
 .../s3/S3SessionCheckpointSelfTest.java         |    2 +-
 .../s3/TcpDiscoveryS3IpFinderSelfTest.java      |    2 +-
 modules/clients/pom.xml                         |    2 +-
 .../ClientAbstractConnectivitySelfTest.java     |   18 +-
 .../client/router/TcpSslRouterSelfTest.java     |    5 +
 .../client/suite/IgniteClientTestSuite.java     |    3 +-
 modules/cloud/pom.xml                           |    2 +-
 .../cloud/TcpDiscoveryCloudIpFinder.java        |   25 +-
 .../TcpDiscoveryCloudIpFinderSelfTest.java      |    3 +-
 modules/codegen/pom.xml                         |    2 +-
 modules/core/licenses/jsr166-license.txt        |    3 +
 modules/core/licenses/snaptree-bsd-license.txt  |    2 +-
 modules/core/pom.xml                            |   14 +-
 modules/core/src/main/java/META-INF/LICENSE     |  238 +
 modules/core/src/main/java/META-INF/NOTICE      |   12 +
 .../src/main/java/org/apache/ignite/Ignite.java |   10 +-
 .../java/org/apache/ignite/IgniteCache.java     |   60 +-
 .../IgniteClientDisconnectedException.java      |   61 +
 .../java/org/apache/ignite/IgniteCluster.java   |    8 +
 .../java/org/apache/ignite/IgniteServices.java  |    5 +-
 .../apache/ignite/IgniteSystemProperties.java   |    9 +
 .../main/java/org/apache/ignite/Ignition.java   |   18 +-
 .../org/apache/ignite/cache/CacheManager.java   |   13 +-
 .../org/apache/ignite/cache/CacheMetrics.java   |  187 +-
 .../apache/ignite/cache/CacheTypeMetadata.java  |   53 +-
 .../affinity/fair/FairAffinityFunction.java     |    5 +-
 .../ignite/cache/eviction/EvictableEntry.java   |    7 +
 .../ignite/cache/eviction/EvictionPolicy.java   |    2 +
 .../cache/eviction/fifo/FifoEvictionPolicy.java |  112 +-
 .../eviction/fifo/FifoEvictionPolicyMBean.java  |   22 +
 .../cache/eviction/lru/LruEvictionPolicy.java   |  130 +-
 .../eviction/lru/LruEvictionPolicyMBean.java    |   38 +
 .../eviction/random/RandomEvictionPolicy.java   |   10 +-
 .../eviction/sorted/SortedEvictionPolicy.java   |  146 +-
 .../sorted/SortedEvictionPolicyMBean.java       |   22 +
 .../apache/ignite/cache/query/QueryMetrics.java |    6 +-
 .../apache/ignite/cache/query/ScanQuery.java    |   48 +-
 .../apache/ignite/cache/store/CacheStore.java   |    2 +
 .../ignite/cache/store/CacheStoreSession.java   |   22 +
 .../cache/store/CacheStoreSessionListener.java  |  133 +
 .../cache/store/jdbc/CacheJdbcBlobStore.java    |   22 +-
 .../store/jdbc/CacheJdbcBlobStoreFactory.java   |  290 +
 .../cache/store/jdbc/CacheJdbcPojoStore.java    |    6 +-
 .../store/jdbc/CacheJdbcPojoStoreFactory.java   |  148 +
 .../jdbc/CacheJdbcStoreSessionListener.java     |  141 +
 .../org/apache/ignite/cluster/ClusterGroup.java |   18 +-
 .../org/apache/ignite/cluster/ClusterNode.java  |   26 +-
 .../configuration/CacheConfiguration.java       |  179 +-
 .../configuration/IgniteConfiguration.java      |   48 +-
 .../configuration/IgniteReflectionFactory.java  |   81 +-
 .../configuration/NearCacheConfiguration.java   |   10 +-
 .../configuration/TransactionConfiguration.java |   23 +
 .../org/apache/ignite/igfs/IgfsUserContext.java |  119 +
 .../igfs/secondary/IgfsSecondaryFileSystem.java |    7 +
 .../ignite/internal/ClusterMetricsSnapshot.java |   14 +
 .../apache/ignite/internal/GridComponent.java   |   18 +
 .../internal/GridEventConsumeHandler.java       |  126 +-
 .../ignite/internal/GridJobSiblingImpl.java     |    2 +-
 .../ignite/internal/GridKernalContext.java      |   10 +
 .../ignite/internal/GridKernalContextImpl.java  |   44 +-
 .../ignite/internal/GridKernalGateway.java      |   46 +-
 .../ignite/internal/GridKernalGatewayImpl.java  |   85 +-
 .../apache/ignite/internal/GridKernalState.java |    3 +
 .../ignite/internal/GridPluginComponent.java    |   11 +
 .../ignite/internal/GridPluginContext.java      |    6 +
 ...gniteClientDisconnectedCheckedException.java |   49 +
 .../apache/ignite/internal/IgniteKernal.java    |  336 +-
 .../ignite/internal/IgniteNodeAttributes.java   |    5 +-
 .../org/apache/ignite/internal/IgnitionEx.java  |  166 +-
 .../internal/MarshallerContextAdapter.java      |   82 +-
 .../ignite/internal/MarshallerContextImpl.java  |   38 +-
 .../client/GridClientConfiguration.java         |    2 +-
 .../GridClientOptimizedMarshaller.java          |   26 +
 .../impl/GridTcpRouterNioListenerAdapter.java   |    2 +-
 .../internal/cluster/ClusterGroupAdapter.java   |   50 +-
 .../cluster/IgniteClusterAsyncImpl.java         |   17 +-
 .../internal/cluster/IgniteClusterImpl.java     |   18 +
 .../internal/events/DiscoveryCustomEvent.java   |   18 +-
 .../internal/igfs/common/IgfsMarshaller.java    |   35 +-
 .../igfs/common/IgfsPathControlRequest.java     |   22 +
 .../interop/InteropAwareEventFilter.java        |   37 +
 .../internal/interop/InteropBootstrap.java      |   35 +
 .../interop/InteropBootstrapFactory.java        |   39 +
 .../internal/interop/InteropException.java      |   71 +
 .../internal/interop/InteropIgnition.java       |  241 +
 .../interop/InteropLocalEventListener.java      |   28 +
 .../interop/InteropNoCallbackException.java     |   50 +
 .../internal/interop/InteropProcessor.java      |   51 +
 .../internal/managers/GridManagerAdapter.java   |   95 +-
 .../checkpoint/GridCheckpointManager.java       |   52 +-
 .../managers/communication/GridIoManager.java   |  294 +-
 .../managers/communication/GridIoMessage.java   |   15 +-
 .../managers/communication/GridIoPolicy.java    |   32 +-
 .../GridLifecycleAwareMessageFilter.java        |    5 +-
 .../deployment/GridDeploymentCommunication.java |    2 +-
 .../deployment/GridDeploymentManager.java       |   95 +-
 .../managers/discovery/CustomEventListener.java |   31 +
 .../discovery/CustomMessageWrapper.java         |   63 +
 .../discovery/DiscoveryCustomMessage.java       |   54 +
 .../discovery/GridDiscoveryManager.java         |  530 +-
 .../eventstorage/GridEventStorageManager.java   |   26 +-
 .../managers/indexing/GridIndexingManager.java  |    4 -
 .../processors/GridProcessorAdapter.java        |   11 +
 .../affinity/AffinityTopologyVersion.java       |    7 -
 .../affinity/GridAffinityAssignment.java        |   12 +
 .../affinity/GridAffinityAssignmentCache.java   |   66 +-
 .../affinity/GridAffinityProcessor.java         |   23 +-
 .../cache/CacheEvictableEntryImpl.java          |   31 +
 .../processors/cache/CacheMetricsImpl.java      |  367 +-
 .../cache/CacheMetricsMXBeanImpl.java           |  100 +
 .../processors/cache/CacheMetricsSnapshot.java  |  380 +-
 .../processors/cache/CacheObjectImpl.java       |    1 -
 .../processors/cache/CacheOperationContext.java |   44 +-
 .../cache/CacheOsConflictResolutionManager.java |    6 +
 .../internal/processors/cache/CacheType.java    |    8 +-
 .../cache/DynamicCacheChangeBatch.java          |   46 +-
 .../cache/DynamicCacheChangeRequest.java        |   39 +-
 .../cache/DynamicCacheDescriptor.java           |   19 +
 .../processors/cache/GridCacheAdapter.java      |  203 +-
 .../cache/GridCacheAffinityManager.java         |   35 +-
 .../processors/cache/GridCacheAtomicFuture.java |   12 +-
 .../processors/cache/GridCacheAttributes.java   |    3 +
 .../cache/GridCacheConcurrentMap.java           |   36 +-
 .../processors/cache/GridCacheContext.java      |   50 +-
 .../cache/GridCacheDeploymentManager.java       |   10 +-
 .../processors/cache/GridCacheEntryEx.java      |    7 +
 .../processors/cache/GridCacheGateway.java      |  122 +-
 .../processors/cache/GridCacheIoManager.java    |   96 +-
 .../processors/cache/GridCacheManager.java      |    6 +
 .../cache/GridCacheManagerAdapter.java          |    6 +
 .../processors/cache/GridCacheMapEntry.java     |  105 +-
 .../processors/cache/GridCacheMessage.java      |   51 -
 .../processors/cache/GridCacheMvccManager.java  |   81 +-
 .../GridCachePartitionExchangeManager.java      |  261 +-
 .../processors/cache/GridCachePreloader.java    |   11 +-
 .../cache/GridCachePreloaderAdapter.java        |   16 +-
 .../processors/cache/GridCacheProcessor.java    |  739 ++-
 .../processors/cache/GridCacheProxyImpl.java    |   36 +-
 .../cache/GridCacheSharedContext.java           |  168 +-
 .../cache/GridCacheSharedManager.java           |   11 +-
 .../cache/GridCacheSharedManagerAdapter.java    |   20 +-
 .../processors/cache/GridCacheSwapManager.java  |  394 +-
 .../processors/cache/GridCacheTtlManager.java   |    9 +-
 .../processors/cache/GridCacheUtils.java        |  348 +-
 .../processors/cache/IgniteCacheFutureImpl.java |   53 +
 .../processors/cache/IgniteCacheProxy.java      |  574 +-
 .../processors/cache/IgniteInternalCache.java   |   43 +-
 .../processors/cache/KeyCacheObjectImpl.java    |   11 +-
 .../processors/cache/QueryCursorImpl.java       |   23 +-
 .../cache/affinity/GridCacheAffinityImpl.java   |   10 +-
 .../CacheDataStructuresManager.java             |   37 +-
 .../distributed/GridCacheTxFinishSync.java      |   46 +
 .../distributed/GridCacheTxRecoveryRequest.java |   26 +-
 .../GridCacheTxRecoveryResponse.java            |   14 +-
 .../distributed/GridDistributedBaseMessage.java |   77 +-
 .../distributed/GridDistributedCacheEntry.java  |    7 -
 .../distributed/GridDistributedLockRequest.java |  123 +-
 .../GridDistributedLockResponse.java            |   14 +-
 .../GridDistributedTxFinishRequest.java         |  101 +-
 .../distributed/GridDistributedTxMapping.java   |   22 +-
 .../GridDistributedTxPrepareRequest.java        |  137 +-
 .../GridDistributedTxPrepareResponse.java       |   64 +-
 .../GridDistributedTxRemoteAdapter.java         |   33 +-
 .../GridDistributedUnlockRequest.java           |    6 +-
 .../dht/GridClientPartitionTopology.java        |   10 +-
 .../dht/GridDhtAssignmentFetchFuture.java       |    4 +-
 .../distributed/dht/GridDhtCacheAdapter.java    |   47 +-
 .../distributed/dht/GridDhtCacheEntry.java      |   10 +-
 .../cache/distributed/dht/GridDhtGetFuture.java |   11 +-
 .../distributed/dht/GridDhtLocalPartition.java  |   66 +-
 .../distributed/dht/GridDhtLockFuture.java      |   14 +-
 .../distributed/dht/GridDhtLockRequest.java     |  101 +-
 .../distributed/dht/GridDhtLockResponse.java    |   18 +-
 .../dht/GridDhtPartitionTopologyImpl.java       |   66 +-
 .../dht/GridDhtPartitionsReservation.java       |  292 +
 .../dht/GridDhtTransactionalCacheAdapter.java   |  230 +-
 .../distributed/dht/GridDhtTxFinishFuture.java  |    3 -
 .../distributed/dht/GridDhtTxFinishRequest.java |   46 +-
 .../cache/distributed/dht/GridDhtTxLocal.java   |    9 +-
 .../distributed/dht/GridDhtTxLocalAdapter.java  |   79 +-
 .../distributed/dht/GridDhtTxPrepareFuture.java |   22 +-
 .../dht/GridDhtTxPrepareRequest.java            |   60 +-
 .../dht/GridDhtTxPrepareResponse.java           |   22 +-
 .../cache/distributed/dht/GridDhtTxRemote.java  |   13 +-
 .../distributed/dht/GridDhtUnlockRequest.java   |    6 +-
 .../dht/GridPartitionedGetFuture.java           |   26 +-
 .../cache/distributed/dht/GridReservable.java   |   35 +
 .../dht/atomic/GridDhtAtomicCache.java          |   70 +-
 .../dht/atomic/GridDhtAtomicUpdateFuture.java   |   23 +-
 .../dht/atomic/GridNearAtomicUpdateFuture.java  |  297 +-
 .../dht/atomic/GridNearAtomicUpdateRequest.java |  134 +-
 .../dht/colocated/GridDhtColocatedCache.java    |   12 +-
 .../colocated/GridDhtColocatedLockFuture.java   |  223 +-
 .../dht/preloader/GridDhtForceKeysFuture.java   |   44 +-
 .../preloader/GridDhtPartitionDemandPool.java   |   26 +-
 .../dht/preloader/GridDhtPartitionMap.java      |   28 +-
 .../preloader/GridDhtPartitionSupplyPool.java   |   29 +-
 .../GridDhtPartitionsExchangeFuture.java        |  529 +-
 .../preloader/GridDhtPartitionsFullMessage.java |    4 +-
 .../GridDhtPartitionsSingleMessage.java         |   33 +-
 .../dht/preloader/GridDhtPreloader.java         |   55 +-
 .../preloader/GridDhtPreloaderAssignments.java  |    3 +-
 .../distributed/near/GridNearAtomicCache.java   |    5 +
 .../distributed/near/GridNearCacheAdapter.java  |   10 +-
 .../distributed/near/GridNearCacheEntry.java    |    2 +-
 .../distributed/near/GridNearGetFuture.java     |   19 +-
 .../distributed/near/GridNearLockFuture.java    |  277 +-
 .../distributed/near/GridNearLockRequest.java   |   91 +-
 .../distributed/near/GridNearLockResponse.java  |   30 +-
 .../near/GridNearOptimisticTxPrepareFuture.java |   98 +-
 .../GridNearPessimisticTxPrepareFuture.java     |    7 +-
 .../near/GridNearTransactionalCache.java        |    8 +-
 .../near/GridNearTxFinishRequest.java           |   31 +-
 .../cache/distributed/near/GridNearTxLocal.java |   71 +-
 .../near/GridNearTxPrepareFutureAdapter.java    |    9 +-
 .../near/GridNearTxPrepareRequest.java          |   86 +-
 .../near/GridNearTxPrepareResponse.java         |   94 +-
 .../distributed/near/GridNearTxRemote.java      |   29 +-
 .../distributed/near/GridNearUnlockRequest.java |    2 +-
 .../cache/dr/GridOsCacheDrManager.java          |    7 +-
 .../cache/jta/CacheJtaManagerAdapter.java       |   17 +-
 .../cache/jta/CacheNoopJtaManager.java          |    2 +-
 .../processors/cache/local/GridLocalCache.java  |    6 +-
 .../local/atomic/GridLocalAtomicCache.java      |   31 +-
 .../processors/cache/query/CacheQuery.java      |    2 +-
 .../query/GridCacheDistributedQueryManager.java |   25 +
 .../cache/query/GridCacheQueryAdapter.java      |  205 +-
 .../cache/query/GridCacheQueryErrorFuture.java  |    2 +
 .../query/GridCacheQueryFutureAdapter.java      |    2 +-
 .../cache/query/GridCacheQueryManager.java      |  243 +-
 .../cache/query/GridCacheQueryRequest.java      |   47 +-
 .../cache/query/GridCacheTwoStepQuery.java      |   22 +-
 .../processors/cache/query/QueryCursorEx.java   |    8 +
 .../continuous/CacheContinuousQueryHandler.java |   17 +-
 .../continuous/CacheContinuousQueryManager.java |   28 +-
 .../cache/store/CacheOsStoreManager.java        |    1 -
 .../cache/store/CacheStoreManager.java          |    7 +-
 .../store/GridCacheStoreManagerAdapter.java     |  202 +-
 .../cache/transactions/IgniteInternalTx.java    |   18 +-
 .../transactions/IgniteTransactionsImpl.java    |   61 +-
 .../cache/transactions/IgniteTxAdapter.java     |  125 +-
 .../cache/transactions/IgniteTxEntry.java       |   48 +-
 .../cache/transactions/IgniteTxHandler.java     |  157 +-
 .../transactions/IgniteTxLocalAdapter.java      |  346 +-
 .../cache/transactions/IgniteTxLocalEx.java     |   21 +-
 .../cache/transactions/IgniteTxManager.java     |  108 +-
 .../transactions/TransactionProxyImpl.java      |    2 +-
 .../cache/version/GridCacheVersionManager.java  |    9 +-
 .../cacheobject/IgniteCacheObjectProcessor.java |   14 +-
 .../IgniteCacheObjectProcessorImpl.java         |   14 +-
 .../processors/clock/GridClockServer.java       |   21 +-
 .../clock/GridClockSyncProcessor.java           |    6 +-
 .../processors/cluster/ClusterProcessor.java    |   11 +
 .../continuous/AbstractContinuousMessage.java   |   63 +
 .../continuous/GridContinuousHandler.java       |    9 +-
 .../continuous/GridContinuousMessageType.java   |   12 -
 .../continuous/GridContinuousProcessor.java     |  932 +--
 .../processors/continuous/StartRequestData.java |  267 +
 .../StartRoutineAckDiscoveryMessage.java        |   63 +
 .../StartRoutineDiscoveryMessage.java           |   85 +
 .../StopRoutineAckDiscoveryMessage.java         |   49 +
 .../continuous/StopRoutineDiscoveryMessage.java |   49 +
 .../datastreamer/DataStreamProcessor.java       |   27 +-
 .../datastreamer/DataStreamerCacheUpdaters.java |    2 +-
 .../datastreamer/DataStreamerImpl.java          |  192 +-
 .../datastructures/DataStructuresProcessor.java |  306 +-
 .../datastructures/GridCacheAtomicLongImpl.java |   58 +-
 .../GridCacheAtomicReferenceImpl.java           |   34 +-
 .../GridCacheAtomicSequenceImpl.java            |   44 +-
 .../GridCacheAtomicStampedImpl.java             |   54 +-
 .../GridCacheCountDownLatchImpl.java            |   82 +-
 .../datastructures/GridCacheRemovable.java      |    6 +-
 .../datastructures/GridCacheSetImpl.java        |   19 +-
 .../datastructures/GridCacheSetProxy.java       |   47 +-
 .../dr/IgniteDrDataStreamerCacheUpdater.java    |    7 +-
 .../internal/processors/hadoop/HadoopJob.java   |    2 +-
 .../processors/hadoop/HadoopJobInfo.java        |    4 +-
 .../processors/hadoop/HadoopTaskContext.java    |   14 +-
 .../hadoop/counter/HadoopCounterWriter.java     |    5 +-
 .../internal/processors/igfs/IgfsContext.java   |    5 +-
 .../ignite/internal/processors/igfs/IgfsEx.java |    8 +-
 .../internal/processors/igfs/IgfsImpl.java      |    8 +-
 .../processors/igfs/IgfsIpcHandler.java         |  184 +-
 .../processors/igfs/IgfsMetaManager.java        |    2 +-
 .../igfs/IgfsSecondaryFileSystemImpl.java       |    9 +-
 .../internal/processors/igfs/IgfsServer.java    |    4 +-
 .../internal/processors/igfs/IgfsUtils.java     |   16 +
 .../processors/job/GridJobProcessor.java        |    2 +-
 .../internal/processors/job/GridJobWorker.java  |    2 +-
 .../offheap/GridOffHeapProcessor.java           |   19 +-
 .../processors/plugin/CachePluginManager.java   |   10 +-
 .../plugin/IgnitePluginProcessor.java           |   19 +-
 .../portable/GridPortableInputStream.java       |   10 +
 .../processors/query/GridQueryIndexing.java     |   33 +-
 .../processors/query/GridQueryProcessor.java    |  443 +-
 .../messages/GridQueryNextPageResponse.java     |   35 +-
 .../h2/twostep/messages/GridQueryRequest.java   |  111 +-
 .../processors/rest/GridRestProcessor.java      |    4 +-
 .../rest/client/message/GridRouterRequest.java  |   18 +
 .../rest/client/message/GridRouterResponse.java |   18 +
 .../handlers/task/GridTaskCommandHandler.java   |   12 +-
 .../rest/protocols/tcp/GridTcpRestProtocol.java |    3 +-
 .../service/GridServiceProcessor.java           |  170 +-
 .../processors/service/GridServiceProxy.java    |   13 +-
 .../processors/task/GridTaskProcessor.java      |   78 +-
 .../processors/task/GridTaskWorker.java         |   63 +-
 .../timeout/GridSpiTimeoutObject.java           |   73 +
 .../timeout/GridTimeoutProcessor.java           |  105 +-
 .../IgniteTxRollbackCheckedException.java       |    9 +
 .../internal/util/GridConfigurationFinder.java  |   55 +-
 .../apache/ignite/internal/util/GridDebug.java  |   48 +-
 .../ignite/internal/util/GridJavaProcess.java   |   30 +-
 .../ignite/internal/util/IgniteUtils.java       |   68 +-
 .../internal/util/future/GridFutureAdapter.java |    4 +-
 .../util/future/GridFutureChainListener.java    |    4 -
 .../internal/util/future/IgniteFutureImpl.java  |   30 +-
 .../shmem/IpcSharedMemoryClientEndpoint.java    |    7 +-
 .../ipc/shmem/IpcSharedMemoryNativeLoader.java  |  151 +-
 .../shmem/IpcSharedMemoryServerEndpoint.java    |   14 +-
 .../util/ipc/shmem/IpcSharedMemoryUtils.java    |    4 +-
 .../ignite/internal/util/lang/GridFunc.java     |    2 +
 .../internal/util/nio/GridBufferedParser.java   |    4 -
 .../util/nio/GridCommunicationClient.java       |   30 +-
 .../internal/util/nio/GridDelimitedParser.java  |   91 +
 .../util/nio/GridNioDelimitedBuffer.java        |  106 +
 .../util/nio/GridNioMessageTracker.java         |   23 +-
 .../util/nio/GridNioRecoveryDescriptor.java     |   13 +-
 .../ignite/internal/util/nio/GridNioServer.java |   64 +-
 .../util/nio/GridShmemCommunicationClient.java  |  146 +
 .../util/nio/GridTcpCommunicationClient.java    |  554 --
 .../util/nio/GridTcpNioCommunicationClient.java |    8 -
 .../util/spring/IgniteSpringHelper.java         |   10 +
 .../apache/ignite/internal/visor/VisorJob.java  |    2 +
 .../internal/visor/VisorMultiNodeTask.java      |    2 +-
 .../ignite/internal/visor/cache/VisorCache.java |    2 +-
 .../visor/cache/VisorCacheConfiguration.java    |   11 -
 .../VisorCacheConfigurationCollectorJob.java    |    6 +-
 .../internal/visor/cache/VisorCacheMetrics.java |   19 +-
 .../cache/VisorCacheMetricsCollectorTask.java   |   10 +-
 .../visor/cache/VisorCacheStopTask.java         |    2 +-
 .../cache/VisorCacheStoreConfiguration.java     |    5 +-
 .../internal/visor/log/VisorLogSearchTask.java  |    2 +-
 .../visor/node/VisorNodeDataCollectorJob.java   |    4 +
 .../visor/node/VisorNodeDataCollectorTask.java  |    9 +-
 .../node/VisorNodeDataCollectorTaskResult.java  |   17 +-
 .../node/VisorNodeSuppressedErrorsTask.java     |   12 +-
 .../visor/query/VisorQueryCleanupTask.java      |   14 +
 .../internal/visor/query/VisorQueryJob.java     |   13 +-
 .../internal/visor/query/VisorQueryTask.java    |    3 +-
 .../util/VisorClusterGroupEmptyException.java   |   37 +
 .../visor/util/VisorExceptionWrapper.java       |   81 +
 .../internal/visor/util/VisorTaskUtils.java     |    6 +-
 .../ignite/marshaller/MarshallerContext.java    |    8 +
 .../ignite/mxbean/CacheMetricsMXBean.java       |   80 +
 .../org/apache/ignite/plugin/PluginContext.java |    6 +
 .../apache/ignite/plugin/PluginProvider.java    |   26 +-
 .../plugin/extensions/communication/IoPool.java |   42 +
 .../plugin/security/SecuritySubjectType.java    |    3 +-
 .../SpringApplicationContextResource.java       |    4 +-
 .../apache/ignite/resources/SpringResource.java |    6 +-
 .../org/apache/ignite/services/Service.java     |    5 +-
 .../java/org/apache/ignite/spi/IgniteSpi.java   |   15 +
 .../org/apache/ignite/spi/IgniteSpiAdapter.java |  142 +-
 .../org/apache/ignite/spi/IgniteSpiContext.java |   66 +-
 .../ignite/spi/IgniteSpiTimeoutObject.java      |   44 +
 .../spi/checkpoint/noop/NoopCheckpointSpi.java  |    3 +-
 .../communication/tcp/TcpCommunicationSpi.java  | 1337 ++--
 .../tcp/TcpCommunicationSpiMBean.java           |   29 +-
 .../ignite/spi/discovery/DiscoverySpi.java      |   23 +-
 .../discovery/DiscoverySpiCustomMessage.java    |   40 +
 .../spi/discovery/DiscoverySpiDataExchange.java |    3 +-
 .../spi/discovery/DiscoverySpiListener.java     |    5 +-
 .../ignite/spi/discovery/tcp/ClientImpl.java    | 1976 ++++++
 .../ignite/spi/discovery/tcp/ServerImpl.java    | 4952 +++++++++++++++
 .../discovery/tcp/TcpClientDiscoverySpi.java    | 1264 ----
 .../tcp/TcpClientDiscoverySpiMBean.java         |  164 -
 .../spi/discovery/tcp/TcpDiscoveryImpl.java     |  286 +
 .../spi/discovery/tcp/TcpDiscoverySpi.java      | 5823 ++++--------------
 .../discovery/tcp/TcpDiscoverySpiAdapter.java   | 1160 ----
 .../spi/discovery/tcp/TcpDiscoverySpiMBean.java |    9 +
 .../tcp/internal/TcpDiscoveryNode.java          |   54 +-
 .../tcp/internal/TcpDiscoveryNodesRing.java     |   10 +-
 .../tcp/internal/TcpDiscoveryStatistics.java    |   10 +-
 .../tcp/ipfinder/TcpDiscoveryIpFinder.java      |   10 +-
 .../ipfinder/TcpDiscoveryIpFinderAdapter.java   |   34 +-
 .../TcpDiscoveryMulticastIpFinder.java          |  114 +-
 .../messages/TcpDiscoveryAbstractMessage.java   |   37 +-
 .../messages/TcpDiscoveryClientAckResponse.java |   64 +
 .../TcpDiscoveryClientHeartbeatMessage.java     |   67 +
 .../messages/TcpDiscoveryClientPingRequest.java |   56 +
 .../TcpDiscoveryClientPingResponse.java         |   67 +
 .../TcpDiscoveryCustomEventMessage.java         |   41 +-
 .../messages/TcpDiscoveryHandshakeResponse.java |   14 +
 .../messages/TcpDiscoveryHeartbeatMessage.java  |   28 +-
 .../TcpDiscoveryNodeAddFinishedMessage.java     |   43 +
 .../messages/TcpDiscoveryNodeAddedMessage.java  |    2 +-
 .../messages/TcpDiscoveryNodeFailedMessage.java |   18 +
 .../tcp/messages/TcpDiscoveryPingRequest.java   |    6 +
 .../tcp/messages/TcpDiscoveryPingResponse.java  |   15 +-
 .../RoundRobinGlobalLoadBalancer.java           |    2 +-
 .../spi/swapspace/file/FileSwapSpaceSpi.java    |   10 +-
 .../startup/cmdline/CommandLineStartup.java     |    3 +-
 .../startup/cmdline/CommandLineTransformer.java |    9 +
 .../org/apache/ignite/stream/StreamAdapter.java |  111 +
 .../ignite/stream/StreamTupleExtractor.java     |   33 +
 .../stream/socket/SocketMessageConverter.java   |   31 +
 .../ignite/stream/socket/SocketStreamer.java    |  218 +
 .../ignite/stream/socket/package-info.java      |   21 +
 .../java/org/jsr166/ConcurrentHashMap8.java     |    8 +-
 .../java/org/jsr166/ConcurrentLinkedDeque8.java |  586 +-
 .../src/main/java/org/jsr166/LongAdder8.java    |   35 +-
 .../core/src/main/java/org/jsr166/README.txt    |   11 +
 .../src/main/java/org/jsr166/Striped64_8.java   |   22 +-
 .../java/org/jsr166/ThreadLocalRandom8.java     |   19 +-
 .../src/main/java/org/jsr166/package-info.java  |   12 +-
 .../META-INF/classnames-jdk.properties          |    3 +
 .../core/src/main/resources/ignite.properties   |    2 +-
 .../core/src/test/config/spark/spark-config.xml |   46 +
 modules/core/src/test/config/tests.properties   |    8 +-
 .../ignite/GridSuppressedExceptionSelfTest.java |    4 +-
 .../affinity/IgniteClientNodeAffinityTest.java  |  192 +
 .../IgniteFairAffinityDynamicCacheSelfTest.java |    3 +-
 ...cheStoreSessionListenerAbstractSelfTest.java |  333 +
 ...heStoreSessionListenerLifecycleSelfTest.java |  395 ++
 .../CacheJdbcStoreSessionListenerSelfTest.java  |  175 +
 .../internal/ClusterGroupAbstractTest.java      |  777 +++
 .../internal/ClusterGroupHostsSelfTest.java     |  141 +
 .../ignite/internal/ClusterGroupSelfTest.java   |  251 +
 .../ignite/internal/GridAffinitySelfTest.java   |    1 +
 .../internal/GridDiscoveryEventSelfTest.java    |   13 +-
 ...ridFailFastNodeFailureDetectionSelfTest.java |   22 +-
 .../GridFailoverTaskWithPredicateSelfTest.java  |    3 -
 .../GridJobMasterLeaveAwareSelfTest.java        |    2 -
 .../internal/GridJobStealingSelfTest.java       |    3 -
 .../internal/GridProjectionAbstractTest.java    |  768 ---
 .../GridProjectionForCachesSelfTest.java        |   11 +-
 ...ectionLocalJobMultipleArgumentsSelfTest.java |    2 -
 .../ignite/internal/GridProjectionSelfTest.java |  251 -
 .../internal/GridReleaseTypeSelfTest.java       |   77 +-
 .../apache/ignite/internal/GridSelfTest.java    |   30 +-
 .../GridTaskExecutionContextSelfTest.java       |    9 -
 .../GridTaskFailoverAffinityRunTest.java        |  170 +
 .../internal/GridUpdateNotifierSelfTest.java    |   15 +-
 .../IgniteClientReconnectAbstractTest.java      |  363 ++
 .../IgniteClientReconnectApiExceptionTest.java  |  846 +++
 .../IgniteClientReconnectAtomicsTest.java       |  672 ++
 .../IgniteClientReconnectCacheTest.java         | 1202 ++++
 .../IgniteClientReconnectCollectionsTest.java   |  443 ++
 .../IgniteClientReconnectComputeTest.java       |  192 +
 ...eClientReconnectContinuousProcessorTest.java |  372 ++
 ...IgniteClientReconnectDiscoveryStateTest.java |  123 +
 ...niteClientReconnectFailoverAbstractTest.java |  231 +
 .../IgniteClientReconnectFailoverTest.java      |  212 +
 .../IgniteClientReconnectServicesTest.java      |  260 +
 .../internal/IgniteClientReconnectStopTest.java |  106 +
 .../IgniteClientReconnectStreamerTest.java      |  233 +
 .../IgniteComputeEmptyClusterGroupTest.java     |    3 -
 .../IgniteComputeTopologyExceptionTest.java     |    9 -
 .../IgniteSlowClientDetectionSelfTest.java      |  188 +
 .../communication/GridIoManagerSelfTest.java    |    2 +-
 .../GridDeploymentManagerStopSelfTest.java      |    7 +
 .../GridDiscoveryManagerAliveCacheSelfTest.java |   82 +-
 .../GridDiscoveryManagerAttributesSelfTest.java |  122 +-
 .../discovery/GridDiscoveryManagerSelfTest.java |   46 +-
 .../IgniteTopologyPrintFormatSelfTest.java      |  289 +
 .../GridCacheTxLoadFromStoreOnLockSelfTest.java |   34 +-
 .../GridAffinityProcessorAbstractSelfTest.java  |    1 +
 .../cache/CacheClientStoreSelfTest.java         |  228 +
 .../cache/CacheFutureExceptionSelfTest.java     |  158 +
 .../CacheMetricsForClusterGroupSelfTest.java    |   10 +-
 .../cache/CacheOffheapMapEntrySelfTest.java     |    7 +-
 .../CacheReadThroughAtomicRestartSelfTest.java  |   32 +
 ...heReadThroughLocalAtomicRestartSelfTest.java |   32 +
 .../CacheReadThroughLocalRestartSelfTest.java   |   32 +
 ...dThroughReplicatedAtomicRestartSelfTest.java |   32 +
 ...cheReadThroughReplicatedRestartSelfTest.java |   32 +
 .../cache/CacheReadThroughRestartSelfTest.java  |  133 +
 .../cache/CacheRemoveAllSelfTest.java           |    2 +-
 .../cache/CacheStopAndDestroySelfTest.java      |  859 +++
 .../CacheStoreUsageMultinodeAbstractTest.java   |  305 +
 ...eUsageMultinodeDynamicStartAbstractTest.java |  169 +
 ...oreUsageMultinodeDynamicStartAtomicTest.java |   32 +
 ...heStoreUsageMultinodeDynamicStartTxTest.java |   32 +
 ...reUsageMultinodeStaticStartAbstractTest.java |  158 +
 ...toreUsageMultinodeStaticStartAtomicTest.java |   32 +
 ...cheStoreUsageMultinodeStaticStartTxTest.java |   32 +
 .../GridCacheAbstractFailoverSelfTest.java      |   10 +-
 .../cache/GridCacheAbstractFullApiSelfTest.java |  507 +-
 .../cache/GridCacheAbstractMetricsSelfTest.java |   48 +-
 .../GridCacheAbstractRemoveFailureTest.java     |   23 +
 .../cache/GridCacheAbstractSelfTest.java        |   21 +-
 .../cache/GridCacheAffinityRoutingSelfTest.java |    4 +-
 .../GridCacheAtomicMessageCountSelfTest.java    |    1 +
 .../GridCacheConcurrentTxMultiNodeTest.java     |    8 +-
 ...idCacheConfigurationConsistencySelfTest.java |   14 +-
 .../cache/GridCacheDeploymentSelfTest.java      |    3 -
 .../cache/GridCacheEntryMemorySizeSelfTest.java |   91 +-
 .../GridCacheExAbstractFullApiSelfTest.java     |  103 -
 .../cache/GridCacheMemoryModeSelfTest.java      |   25 +-
 ...GridCacheMixedPartitionExchangeSelfTest.java |    2 +-
 ...ridCacheMultinodeUpdateAbstractSelfTest.java |    9 +
 ...inodeUpdateNearEnabledNoBackupsSelfTest.java |    2 +-
 ...CacheMultinodeUpdateNearEnabledSelfTest.java |    2 +-
 .../processors/cache/GridCacheOffHeapTest.java  |   33 +-
 .../cache/GridCachePutAllFailoverSelfTest.java  |    1 +
 .../GridCacheReferenceCleanupSelfTest.java      |    3 -
 .../cache/GridCacheReloadSelfTest.java          |    6 +-
 .../GridCacheReturnValueTransferSelfTest.java   |    3 +
 .../processors/cache/GridCacheStopSelfTest.java |    5 +
 ...acheTcpClientDiscoveryMultiThreadedTest.java |  190 +
 .../processors/cache/GridCacheTestEntryEx.java  |    4 +
 .../GridCacheVariableTopologySelfTest.java      |   12 +-
 .../cache/GridCacheVersionMultinodeTest.java    |    6 +-
 ...ProjectionForCachesOnDaemonNodeSelfTest.java |    2 +-
 .../IgniteCacheAbstractStopBusySelfTest.java    |   38 +-
 .../cache/IgniteCacheAbstractTest.java          |    5 +-
 .../IgniteCacheAtomicStopBusySelfTest.java      |    8 +-
 .../IgniteCacheConfigurationTemplateTest.java   |   28 +-
 .../cache/IgniteCacheDynamicStopSelfTest.java   |    6 +-
 .../IgniteCacheEntryListenerAbstractTest.java   |   14 +-
 .../IgniteCacheInterceptorSelfTestSuite.java    |    2 +-
 .../cache/IgniteCacheInvokeReadThroughTest.java |    5 +
 .../cache/IgniteCacheNearLockValueSelfTest.java |  148 +
 .../IgniteCacheP2pUnmarshallingErrorTest.java   |   29 +-
 ...gniteCacheP2pUnmarshallingNearErrorTest.java |   13 +-
 ...CacheP2pUnmarshallingRebalanceErrorTest.java |   15 +-
 .../IgniteCacheP2pUnmarshallingTxErrorTest.java |   25 +-
 .../IgniteCachePartitionMapUpdateTest.java      |  226 +
 .../cache/IgniteCachePeekModesAbstractTest.java |    5 +-
 ...gniteCacheTransactionalStopBusySelfTest.java |   13 +-
 .../IgniteDaemonNodeMarshallerCacheTest.java    |  192 +
 ...eDynamicCacheStartNoExchangeTimeoutTest.java |  466 ++
 .../cache/IgniteDynamicCacheStartSelfTest.java  |  286 +-
 ...niteDynamicCacheWithConfigStartSelfTest.java |   97 +
 .../IgniteDynamicClientCacheStartSelfTest.java  |  284 +
 .../cache/IgniteInternalCacheTypesTest.java     |    3 +-
 ...teStartCacheInTransactionAtomicSelfTest.java |   32 +
 .../IgniteStartCacheInTransactionSelfTest.java  |  254 +
 .../cache/IgniteSystemCacheOnClientTest.java    |   97 +
 .../IgniteTxExceptionAbstractSelfTest.java      |    1 +
 .../IgniteTxMultiThreadedAbstractTest.java      |    4 +-
 ...cheAtomicReferenceMultiNodeAbstractTest.java |   11 -
 .../GridCacheQueueApiSelfAbstractTest.java      |    4 +-
 ...GridCacheQueueMultiNodeAbstractSelfTest.java |    6 +-
 ...dCacheQueueMultiNodeConsistencySelfTest.java |    5 +
 ...CacheQueueRotativeMultiNodeAbstractTest.java |   10 -
 .../GridCacheSetAbstractSelfTest.java           |   31 +-
 .../IgniteClientDataStructuresAbstractTest.java |  340 +
 .../IgniteClientDataStructuresTest.java         |   28 +
 ...IgniteClientDiscoveryDataStructuresTest.java |   28 +
 .../IgniteCountDownLatchAbstractSelfTest.java   |  114 +-
 .../IgniteDataStructureWithJobTest.java         |  111 +
 ...omicOffheapQueueCreateMultiNodeSelfTest.java |    5 +
 ...ionedAtomicQueueCreateMultiNodeSelfTest.java |    5 +
 ...rtitionedDataStructuresFailoverSelfTest.java |    5 +
 ...edOffheapDataStructuresFailoverSelfTest.java |    5 +
 ...PartitionedQueueCreateMultiNodeSelfTest.java |    5 +
 ...dCachePartitionedQueueEntryMoveSelfTest.java |    5 +
 ...nedQueueFailoverDataConsistencySelfTest.java |    5 +
 ...eplicatedDataStructuresFailoverSelfTest.java |    5 +
 ...CacheLoadingConcurrentGridStartSelfTest.java |    5 +
 .../GridCacheAbstractJobExecutionTest.java      |    3 -
 .../GridCacheAbstractNodeRestartSelfTest.java   |   12 +-
 .../GridCacheClientModesAbstractSelfTest.java   |   94 +-
 ...ientModesTcpClientDiscoveryAbstractTest.java |  168 +
 .../distributed/GridCacheMixedModeSelfTest.java |    3 +
 ...ridCachePartitionNotLoadedEventSelfTest.java |   82 +
 .../GridCachePreloadLifecycleAbstractTest.java  |    2 -
 .../distributed/IgniteCache150ClientsTest.java  |  189 +
 ...niteCacheClientNodeChangingTopologyTest.java | 1803 ++++++
 .../IgniteCacheClientNodeConcurrentStart.java   |  113 +
 ...teCacheClientNodePartitionsExchangeTest.java |  656 ++
 .../distributed/IgniteCacheManyClientsTest.java |  318 +
 .../IgniteCacheMessageRecoveryAbstractTest.java |    1 +
 .../IgniteCacheSystemTransactionsSelfTest.java  |    2 +-
 .../IgniteCacheTxMessageRecoveryTest.java       |    5 +
 .../IgniteCrossCacheTxStoreSelfTest.java        |  147 +-
 ...heAbstractTransformWriteThroughSelfTest.java |    3 -
 .../dht/GridCacheClientOnlySelfTest.java        |   60 +-
 .../GridCacheColocatedTxExceptionSelfTest.java  |    5 +
 .../GridCacheDhtClientRemoveFailureTest.java    |   28 +
 ...GridCacheDhtEvictionNearReadersSelfTest.java |   11 +-
 .../dht/GridCacheDhtEvictionSelfTest.java       |   11 +-
 .../GridCacheExColocatedFullApiSelfTest.java    |   33 -
 ...ePartitionedNearDisabledMetricsSelfTest.java |    4 +-
 ...dCachePartitionedTopologyChangeSelfTest.java |    5 +
 .../dht/IgniteCacheMultiTxLockSelfTest.java     |   53 +-
 .../IgniteCachePutRetryAbstractSelfTest.java    |  147 +
 .../dht/IgniteCachePutRetryAtomicSelfTest.java  |   34 +
 ...gniteCachePutRetryTransactionalSelfTest.java |   74 +
 ...cClientInvalidPartitionHandlingSelfTest.java |   29 +
 .../GridCacheAtomicClientRemoveFailureTest.java |   28 +
 ...eAtomicInvalidPartitionHandlingSelfTest.java |   30 +-
 ...unctionExcludeNeighborsAbstractSelfTest.java |    3 +-
 ...eAtomicNearOnlyMultiNodeFullApiSelfTest.java |    3 +
 .../near/GridCacheAtomicNearOnlySelfTest.java   |   32 -
 .../near/GridCacheExNearFullApiSelfTest.java    |   39 -
 .../near/GridCacheNearEvictionSelfTest.java     |    3 -
 ...idCacheNearOnlyMultiNodeFullApiSelfTest.java |   12 +-
 .../near/GridCacheNearOnlySelfTest.java         |   63 +-
 .../near/GridCacheNearOnlyTopologySelfTest.java |    1 +
 .../near/GridCacheNearTxExceptionSelfTest.java  |    5 +
 .../near/GridCacheNearTxMultiNodeSelfTest.java  |   10 +-
 ...ionedClientOnlyNoPrimaryFullApiSelfTest.java |    5 +-
 .../GridCachePartitionedEvictionSelfTest.java   |   11 +-
 .../GridCachePartitionedFailoverSelfTest.java   |    5 +
 ...PartitionedFullApiMultithreadedSelfTest.java |    5 +
 .../GridCachePartitionedFullApiSelfTest.java    |   32 +
 ...idCachePartitionedHitsAndMissesSelfTest.java |    3 -
 ...achePartitionedMultiNodeFullApiSelfTest.java |   99 +-
 ...ePartitionedMultiThreadedPutGetSelfTest.java |    6 +-
 ...edOffHeapTieredMultiNodeFullApiSelfTest.java |    2 +-
 ...ePartitionedOptimisticTxNodeRestartTest.java |    5 +
 ...achePartitionedPreloadLifecycleSelfTest.java |    2 +-
 ...CachePartitionedTxMultiThreadedSelfTest.java |    5 +
 .../GridCachePartitionedTxSalvageSelfTest.java  |   37 +-
 ...idCacheRendezvousAffinityClientSelfTest.java |    4 +
 .../near/IgniteCacheNearOnlyTxTest.java         |  190 +
 .../GridCacheExReplicatedFullApiSelfTest.java   |   33 -
 .../GridCacheReplicatedClientOnlySelfTest.java  |   43 -
 ...eReplicatedFullApiMultithreadedSelfTest.java |    5 +
 .../GridCacheReplicatedInvalidateSelfTest.java  |    7 +-
 ...ridCacheReplicatedMultiNodeLockSelfTest.java |    5 +
 .../GridCacheReplicatedMultiNodeSelfTest.java   |    5 +
 .../GridCacheReplicatedNearOnlySelfTest.java    |   43 -
 .../GridCacheReplicatedTxExceptionSelfTest.java |    5 +
 .../GridCacheSyncReplicatedPreloadSelfTest.java |    1 -
 .../replicated/GridReplicatedTxPreloadTest.java |    2 +
 ...acheAtomicReplicatedNodeRestartSelfTest.java |    5 +
 ...CacheReplicatedPreloadLifecycleSelfTest.java |    6 +-
 .../cache/eviction/EvictionAbstractTest.java    | 1056 ++++
 .../GridCacheBatchEvictUnswapSelfTest.java      |    5 +-
 ...heConcurrentEvictionConsistencySelfTest.java |   97 +-
 .../GridCacheConcurrentEvictionsSelfTest.java   |   29 +-
 .../GridCacheDistributedEvictionsSelfTest.java  |    5 +-
 .../GridCacheEmptyEntriesAbstractSelfTest.java  |   11 +-
 .../eviction/GridCacheEvictionAbstractTest.java |  484 --
 .../GridCacheEvictionFilterSelfTest.java        |    2 +-
 .../GridCacheEvictionTouchSelfTest.java         |   22 +-
 .../cache/eviction/GridCacheMockEntry.java      |    5 +
 ...cheSynchronousEvictionsFailoverSelfTest.java |    5 +
 .../fifo/FifoEvictionPolicySelfTest.java        |  262 +
 ...ridCacheFifoBatchEvictionPolicySelfTest.java |  384 --
 .../GridCacheFifoEvictionPolicySelfTest.java    |  372 --
 .../lru/GridCacheLruEvictionPolicySelfTest.java |  417 --
 .../GridCacheLruNearEvictionPolicySelfTest.java |  136 -
 ...heNearOnlyLruNearEvictionPolicySelfTest.java |  171 -
 .../eviction/lru/LruEvictionPolicySelfTest.java |  353 ++
 .../lru/LruNearEvictionPolicySelfTest.java      |  140 +
 .../LruNearOnlyNearEvictionPolicySelfTest.java  |  172 +
 .../GridCacheRandomEvictionPolicySelfTest.java  |  258 -
 .../RandomEvictionPolicyCacheSizeSelfTest.java  |   78 +
 .../random/RandomEvictionPolicySelfTest.java    |  357 ++
 ...dCacheSortedBatchEvictionPolicySelfTest.java |  385 --
 ...acheSortedEvictionPolicyPerformanceTest.java |  135 -
 .../GridCacheSortedEvictionPolicySelfTest.java  |  373 --
 .../SortedEvictionPolicyPerformanceTest.java    |  134 +
 .../sorted/SortedEvictionPolicySelfTest.java    |  266 +
 .../IgniteCacheClientNearCacheExpiryTest.java   |  103 +
 .../IgniteCacheExpiryPolicyAbstractTest.java    |   10 +-
 .../IgniteCacheExpiryPolicyTestSuite.java       |    2 +
 ...eCacheExpiryPolicyWithStoreAbstractTest.java |    4 +-
 .../IgniteCacheTxStoreSessionTest.java          |    4 +
 ...CacheLocalOffHeapAndSwapMetricsSelfTest.java |  412 ++
 .../local/GridCacheExLocalFullApiSelfTest.java  |   30 -
 ...dCacheLocalFullApiMultithreadedSelfTest.java |    5 +
 .../GridCacheLocalTxExceptionSelfTest.java      |    5 +
 ...OnlyFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 ...AtomicClientOnlyMultiJvmFullApiSelfTest.java |   31 +
 ...tOnlyMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...pyOnReadDisabledMultiJvmFullApiSelfTest.java |   31 +
 ...omicFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 .../GridCacheAtomicMultiJvmFullApiSelfTest.java |   30 +
 ...tomicMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...bledFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 ...tomicNearEnabledMultiJvmFullApiSelfTest.java |   31 +
 ...rimaryWriteOrderMultiJvmFullApiSelfTest.java |   31 +
 ...heAtomicNearOnlyMultiJvmFullApiSelfTest.java |   31 +
 ...rOnlyMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...cheAtomicOffHeapMultiJvmFullApiSelfTest.java |   31 +
 ...micOffHeapTieredMultiJvmFullApiSelfTest.java |   36 +
 ...rderFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 ...rimaryWriteOrderMultiJvmFullApiSelfTest.java |   31 +
 ...OrderMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...rityOrderOffHeapMultiJvmFullApiSelfTest.java |   31 +
 ...derOffHeapTieredMultiJvmFullApiSelfTest.java |   36 +
 ...OnlyFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 ...ridCacheNearOnlyMultiJvmFullApiSelfTest.java |   30 +
 ...rOnlyMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...pyOnReadDisabledMultiJvmFullApiSelfTest.java |   31 +
 ...onedFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 ...CachePartitionedMultiJvmFullApiSelfTest.java |   30 +
 ...ionedMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...micOffHeapTieredMultiJvmFullApiSelfTest.java |   36 +
 ...bledFairAffinityMultiJvmFullApiSelfTest.java |   31 +
 ...onedNearDisabledMultiJvmFullApiSelfTest.java |   31 +
 ...abledMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...rDisabledOffHeapMultiJvmFullApiSelfTest.java |   31 +
 ...ledOffHeapTieredMultiJvmFullApiSelfTest.java |   36 +
 ...rtitionedOffHeapMultiJvmFullApiSelfTest.java |   31 +
 ...nedOffHeapTieredMultiJvmFullApiSelfTest.java |   36 +
 ...ReplicatedAtomicMultiJvmFullApiSelfTest.java |   31 +
 ...rimaryWriteOrderMultiJvmFullApiSelfTest.java |   31 +
 ...dCacheReplicatedMultiJvmFullApiSelfTest.java |   30 +
 ...catedMultiJvmP2PDisabledFullApiSelfTest.java |   31 +
 ...plicatedNearOnlyMultiJvmFullApiSelfTest.java |   37 +
 ...eplicatedOffHeapMultiJvmFullApiSelfTest.java |   31 +
 ...tedOffHeapTieredMultiJvmFullApiSelfTest.java |   36 +
 .../GridCacheSwapScanQueryAbstractSelfTest.java |  115 +-
 ...ridCacheContinuousQueryAbstractSelfTest.java |    8 +-
 ...CacheClientWriteBehindStoreAbstractTest.java |  104 +
 ...teCacheClientWriteBehindStoreAtomicTest.java |   38 +
 .../IgnteCacheClientWriteBehindStoreTxTest.java |   32 +
 .../closure/GridClosureProcessorSelfTest.java   |   29 +-
 .../continuous/GridEventConsumeSelfTest.java    |   98 +-
 .../DataStreamProcessorSelfTest.java            |   48 +-
 .../DataStreamerMultiThreadedSelfTest.java      |   62 +-
 .../DataStreamerMultinodeCreateCacheTest.java   |   99 +
 .../igfs/IgfsClientCacheSelfTest.java           |   12 +-
 .../processors/igfs/IgfsCommonAbstractTest.java |   10 -
 .../processors/igfs/IgfsModesSelfTest.java      |    4 +-
 .../processors/igfs/IgfsOneClientNodeTest.java  |    8 +-
 .../service/ClosureServiceClientsNodesTest.java |  251 +
 .../service/GridServiceClientNodeTest.java      |   81 +
 .../internal/util/IgniteUtilsSelfTest.java      |   22 +
 .../ipc/shmem/IgfsSharedMemoryTestServer.java   |    2 +
 .../IpcSharedMemoryCrashDetectionSelfTest.java  |    2 +-
 .../ipc/shmem/IpcSharedMemorySpaceSelfTest.java |    2 +-
 .../ipc/shmem/IpcSharedMemoryUtilsSelfTest.java |    2 +-
 .../LoadWithCorruptedLibFileTestRunner.java     |    2 +-
 .../IpcSharedMemoryBenchmarkReader.java         |    2 +-
 .../IpcSharedMemoryBenchmarkWriter.java         |    2 +-
 .../nio/GridNioDelimitedBufferSelfTest.java     |  112 +
 .../internal/util/nio/GridNioSelfTest.java      |   15 +-
 .../internal/util/nio/GridNioSslSelfTest.java   |    2 +
 .../unsafe/GridUnsafeMemorySelfTest.java        |    4 +-
 .../tostring/GridToStringBuilderSelfTest.java   |    4 +-
 .../loadtests/GridCacheMultiNodeLoadTest.java   |    5 +-
 .../communication/GridIoManagerBenchmark0.java  |    1 +
 .../GridCachePartitionedAtomicLongLoadTest.java |    6 +-
 .../loadtests/hashmap/GridCacheTestContext.java |    6 +-
 .../swap/GridSwapEvictAllBenchmark.java         |    6 +-
 .../marshaller/MarshallerContextTestImpl.java   |   29 +-
 .../OptimizedMarshallerNodeFailoverTest.java    |    4 +-
 ...GridMessagingNoPeerClassLoadingSelfTest.java |    7 +-
 .../ignite/messaging/GridMessagingSelfTest.java |   16 +-
 .../IgniteMessagingWithClientTest.java          |  166 +
 .../p2p/GridP2PLocalDeploymentSelfTest.java     |    6 +-
 .../p2p/GridP2PRemoteClassLoadersSelfTest.java  |   31 +-
 .../spi/GridTcpSpiForwardingSelfTest.java       |    4 +-
 .../GridTcpCommunicationSpiAbstractTest.java    |   17 +-
 ...mmunicationSpiConcurrentConnectSelfTest.java |    6 +-
 .../GridTcpCommunicationSpiConfigSelfTest.java  |    3 -
 ...cpCommunicationSpiMultithreadedSelfTest.java |   23 +-
 ...pCommunicationSpiMultithreadedShmemTest.java |   28 +
 ...dTcpCommunicationSpiRecoveryAckSelfTest.java |    1 +
 ...GridTcpCommunicationSpiRecoverySelfTest.java |    1 +
 .../GridTcpCommunicationSpiShmemSelfTest.java   |   38 +
 .../tcp/GridTcpCommunicationSpiTcpSelfTest.java |    7 +
 .../discovery/AbstractDiscoverySelfTest.java    |   21 +-
 ...pClientDiscoveryMarshallerCheckSelfTest.java |   76 +
 .../tcp/TcpClientDiscoverySelfTest.java         |  700 ---
 .../tcp/TcpClientDiscoverySpiMulticastTest.java |  129 +
 .../tcp/TcpClientDiscoverySpiSelfTest.java      | 2174 +++++++
 .../tcp/TcpDiscoveryConcurrentStartTest.java    |   61 +-
 .../tcp/TcpDiscoveryMultiThreadedTest.java      |   56 +-
 .../TcpDiscoveryNodeConsistentIdSelfTest.java   |   80 +
 .../spi/discovery/tcp/TcpDiscoverySelfTest.java |   46 +-
 .../inmemory/GridTestSwapSpaceSpi.java          |    3 +-
 .../GridCommandLineTransformerSelfTest.java     |   12 +-
 .../stream/socket/SocketStreamerSelfTest.java   |  310 +
 .../ignite/stream/socket/package-info.java      |   21 +
 .../testframework/GridSpiTestContext.java       |   42 +-
 .../ignite/testframework/GridTestUtils.java     |   31 +-
 .../config/GridTestProperties.java              |   14 +-
 .../testframework/junits/GridAbstractTest.java  |  410 +-
 .../junits/GridTestKernalContext.java           |    3 +-
 .../junits/IgniteTestResources.java             |   16 +-
 .../junits/cache/TestCacheSession.java          |   18 +
 .../cache/TestThreadLocalCacheSession.java      |   15 +
 .../junits/common/GridCommonAbstractTest.java   |  148 +-
 .../junits/multijvm/AffinityProcessProxy.java   |  195 +
 .../multijvm/IgniteCacheProcessProxy.java       |  602 ++
 .../multijvm/IgniteClusterProcessProxy.java     |  325 +
 .../multijvm/IgniteEventsProcessProxy.java      |  148 +
 .../junits/multijvm/IgniteNodeRunner.java       |  184 +
 .../junits/multijvm/IgniteProcessProxy.java     |  571 ++
 .../ignite/testsuites/IgniteBasicTestSuite.java |   37 +-
 .../IgniteCacheDataStructuresSelfTestSuite.java |   28 +-
 .../IgniteCacheEvictionSelfTestSuite.java       |   18 +-
 .../IgniteCacheFailoverTestSuite.java           |   27 +-
 .../IgniteCacheFailoverTestSuite2.java          |   47 +
 ...IgniteCacheFullApiMultiJvmSelfTestSuite.java |   89 +
 .../IgniteCacheFullApiSelfTestSuite.java        |   14 +-
 .../IgniteCacheMetricsSelfTestSuite.java        |    1 +
 .../IgniteCacheNearOnlySelfTestSuite.java       |   16 +-
 ...gniteCacheP2pUnmarshallingErrorTestSuit.java |   41 -
 ...niteCacheP2pUnmarshallingErrorTestSuite.java |   53 +
 .../testsuites/IgniteCacheRestartTestSuite.java |   10 +-
 .../IgniteCacheTcpClientDiscoveryTestSuite.java |   47 +
 .../ignite/testsuites/IgniteCacheTestSuite.java |   56 +-
 .../testsuites/IgniteCacheTestSuite2.java       |   16 +-
 .../testsuites/IgniteCacheTestSuite3.java       |   14 +-
 .../testsuites/IgniteCacheTestSuite4.java       |   37 +-
 .../IgniteCacheWriteBehindTestSuite.java        |    2 +
 .../IgniteClientReconnectTestSuite.java         |   48 +
 .../testsuites/IgniteClientTestSuite.java       |   38 +
 .../testsuites/IgniteComputeGridTestSuite.java  |    1 +
 .../testsuites/IgniteKernalSelfTestSuite.java   |   24 +-
 .../IgniteMarshallerSelfTestSuite.java          |   28 +-
 .../IgniteSpiCommunicationSelfTestSuite.java    |    2 +
 .../IgniteSpiDiscoverySelfTestSuite.java        |    9 +-
 .../testsuites/IgniteStreamSelfTestSuite.java   |   39 +
 .../testsuites/IgniteUtilSelfTestSuite.java     |   19 +-
 .../apache/ignite/util/GridRandomSelfTest.java  |    4 +-
 .../ignite/util/TestTcpCommunicationSpi.java    |   21 +
 modules/core/src/test/resources/helloworld.gar  |  Bin 6092 -> 0 bytes
 modules/core/src/test/resources/helloworld1.gar |  Bin 6092 -> 0 bytes
 modules/core/src/test/resources/readme.txt      |    6 -
 modules/docker/Dockerfile                       |   55 +
 modules/docker/README.txt                       |   11 +
 modules/docker/build_users_libs.sh              |   39 +
 modules/docker/download_ignite.sh               |   49 +
 modules/docker/execute.sh                       |   62 +
 modules/docker/run.sh                           |   34 +
 modules/extdata/p2p/pom.xml                     |    4 +-
 .../p2p/GridP2PContinuousDeploymentTask1.java   |    2 +-
 .../tests/p2p/P2PTestTaskExternalPath1.java     |   10 +-
 .../tests/p2p/P2PTestTaskExternalPath2.java     |    8 +-
 .../CacheConfigurationP2PTestClient.java        |    4 +-
 modules/extdata/uri/META-INF/ignite.xml         |   38 +
 .../extdata/uri/modules/uri-dependency/pom.xml  |   40 +
 .../deployment/uri/tasks/GarHelloWorldBean.java |   60 +
 .../src/main/resources/gar-example.properties   |   18 +
 modules/extdata/uri/pom.xml                     |   50 +-
 .../deployment/uri/tasks/GarHelloWorldTask.java |   81 +
 .../deployment/uri/tasks/gar-spring-bean.xml    |   29 +
 modules/gce/pom.xml                             |    2 +-
 .../gce/TcpDiscoveryGoogleStorageIpFinder.java  |   43 +-
 .../geospatial/licenses/jts-lgpl-license.txt    |  165 -
 modules/geospatial/pom.xml                      |    2 +-
 .../query/h2/GridH2IndexingGeoSelfTest.java     |   20 +-
 modules/hadoop/pom.xml                          |   81 +-
 .../fs/IgniteHadoopFileSystemCounterWriter.java |   21 +-
 .../fs/IgniteHadoopIgfsSecondaryFileSystem.java |  165 +-
 .../hadoop/fs/v1/IgniteHadoopFileSystem.java    |  137 +-
 .../hadoop/fs/v2/IgniteHadoopFileSystem.java    |   32 +-
 .../processors/hadoop/HadoopClassLoader.java    |   29 +
 .../processors/hadoop/HadoopDefaultJobInfo.java |   27 +-
 .../internal/processors/hadoop/HadoopUtils.java |   51 +-
 .../hadoop/SecondaryFileSystemProvider.java     |   58 +-
 .../hadoop/fs/HadoopDistributedFileSystem.java  |   91 -
 .../hadoop/fs/HadoopFileSystemCacheUtils.java   |  241 +
 .../hadoop/fs/HadoopFileSystemsUtils.java       |   26 +-
 .../hadoop/fs/HadoopLazyConcurrentMap.java      |  209 +
 .../processors/hadoop/igfs/HadoopIgfsEx.java    |    6 +
 .../hadoop/igfs/HadoopIgfsInProc.java           |  170 +-
 .../processors/hadoop/igfs/HadoopIgfsIpcIo.java |    2 +-
 .../hadoop/igfs/HadoopIgfsOutProc.java          |   33 +-
 .../hadoop/igfs/HadoopIgfsWrapper.java          |   19 +-
 .../hadoop/jobtracker/HadoopJobTracker.java     |   25 +-
 .../hadoop/taskexecutor/HadoopRunnableTask.java |   20 +-
 .../child/HadoopChildProcessRunner.java         |    3 +-
 .../processors/hadoop/v2/HadoopV2Context.java   |   10 +-
 .../processors/hadoop/v2/HadoopV2Job.java       |  111 +-
 .../hadoop/v2/HadoopV2JobResourceManager.java   |   40 +-
 .../hadoop/v2/HadoopV2TaskContext.java          |   85 +-
 .../hadoop/HadoopClientProtocolSelfTest.java    |    6 +-
 .../HadoopIgfs20FileSystemAbstractSelfTest.java |   73 +-
 ...oopSecondaryFileSystemConfigurationTest.java |   18 +-
 .../apache/ignite/igfs/IgfsEventsTestSuite.java |    5 +-
 .../igfs/IgfsNearOnlyMultiNodeSelfTest.java     |    5 +-
 .../IgniteHadoopFileSystemAbstractSelfTest.java |   65 +-
 .../IgniteHadoopFileSystemClientSelfTest.java   |    2 +-
 ...IgniteHadoopFileSystemHandshakeSelfTest.java |    7 +
 .../IgniteHadoopFileSystemIpcCacheSelfTest.java |    9 +
 .../hadoop/HadoopAbstractSelfTest.java          |   19 +-
 .../hadoop/HadoopCommandLineTest.java           |   14 +-
 .../hadoop/HadoopFileSystemsTest.java           |   23 +-
 .../processors/hadoop/HadoopMapReduceTest.java  |  185 +-
 .../hadoop/HadoopTaskExecutionSelfTest.java     |    2 +-
 .../hadoop/HadoopTasksAllVersionsTest.java      |   15 +-
 .../processors/hadoop/HadoopTasksV1Test.java    |    8 +-
 .../processors/hadoop/HadoopTasksV2Test.java    |    8 +-
 .../processors/hadoop/HadoopV2JobSelfTest.java  |    8 +-
 .../collections/HadoopAbstractMapTest.java      |   15 +-
 .../collections/HadoopHashMapSelfTest.java      |    4 +-
 .../collections/HadoopSkipListSelfTest.java     |    4 +-
 .../HadoopExternalTaskExecutionSelfTest.java    |    2 +
 .../HadoopExternalCommunicationSelfTest.java    |    5 +
 .../testsuites/IgniteHadoopTestSuite.java       |   11 +-
 .../IgniteIgfsLinuxAndMacOSTestSuite.java       |    3 +-
 .../licenses/hibernate-lgpl-2.1-license.txt     |  174 -
 modules/hibernate/pom.xml                       |   16 +-
 .../HibernateTransactionalDataRegion.java       |   12 +-
 .../hibernate/CacheHibernateBlobStore.java      |   87 +-
 .../CacheHibernateBlobStoreFactory.java         |  235 +
 .../CacheHibernateStoreSessionListener.java     |  216 +
 .../hibernate/src/test/config/factory-cache.xml |   59 +
 .../src/test/config/factory-cache1.xml          |   61 +
 .../config/factory-incorrect-store-cache.xml    |   56 +
 .../hibernate/HibernateL2CacheSelfTest.java     |    2 +
 .../CacheHibernateStoreFactorySelfTest.java     |  273 +
 ...heHibernateStoreSessionListenerSelfTest.java |  228 +
 .../testsuites/IgniteHibernateTestSuite.java    |    8 +-
 modules/indexing/licenses/h2-epl-license.txt    |   69 -
 modules/indexing/pom.xml                        |   18 +-
 .../processors/query/h2/IgniteH2Indexing.java   |  145 +-
 .../query/h2/opt/GridH2AbstractKeyValueRow.java |   18 +-
 .../query/h2/opt/GridH2KeyValueRowOffheap.java  |   12 +-
 .../processors/query/h2/opt/GridH2Table.java    |    2 +-
 .../query/h2/sql/GridSqlOperationType.java      |    2 +-
 .../query/h2/sql/GridSqlQuerySplitter.java      |   53 +-
 .../query/h2/twostep/GridMapQueryExecutor.java  |  321 +-
 .../query/h2/twostep/GridMergeIndex.java        |   62 +-
 .../h2/twostep/GridMergeIndexUnsorted.java      |    7 +-
 .../h2/twostep/GridReduceQueryExecutor.java     |  714 ++-
 .../query/h2/twostep/GridResultPage.java        |   21 +-
 .../CacheAbstractQueryMetricsSelfTest.java      |  358 ++
 .../cache/CacheLocalQueryMetricsSelfTest.java   |   33 +
 ...titionedQueryMetricsDistributedSelfTest.java |   33 +
 ...chePartitionedQueryMetricsLocalSelfTest.java |   33 +
 ...plicatedQueryMetricsDistributedSelfTest.java |   33 +
 ...acheReplicatedQueryMetricsLocalSelfTest.java |   33 +
 ...CacheScanPartitionQueryFallbackSelfTest.java |  408 ++
 .../cache/GridCacheCrossCacheQuerySelfTest.java |   25 +-
 .../cache/GridCacheOffHeapSelfTest.java         |    1 -
 .../GridCacheOffheapIndexEntryEvictTest.java    |  200 +
 .../cache/GridCacheOffheapIndexGetSelfTest.java |   80 +-
 .../cache/GridCacheQueryMetricsSelfTest.java    |  152 -
 ...idCacheReduceQueryMultithreadedSelfTest.java |   10 -
 .../processors/cache/GridCacheSwapSelfTest.java |    3 -
 .../cache/GridIndexingWithNoopSwapSelfTest.java |    6 +-
 .../IgniteCacheAbstractFieldsQuerySelfTest.java |   13 +-
 .../cache/IgniteCacheAbstractQuerySelfTest.java |   85 +-
 ...acheConfigurationPrimitiveTypesSelfTest.java |  104 +
 .../cache/IgniteCacheOffheapEvictQueryTest.java |  196 +
 ...niteCacheP2pUnmarshallingQueryErrorTest.java |    3 +-
 ...hePartitionedQueryMultiThreadedSelfTest.java |   40 +-
 ...QueryMultiThreadedOffHeapTieredSelfTest.java |   37 +
 ...eQueryMultiThreadedOffHeapTiredSelfTest.java |   37 -
 .../IgniteCacheQueryMultiThreadedSelfTest.java  |   19 +-
 ...ClientReconnectCacheQueriesFailoverTest.java |  225 +
 .../cache/IgniteClientReconnectQueriesTest.java |  427 ++
 ...lientQueryReplicatedNodeRestartSelfTest.java |  419 ++
 .../IgniteCacheQueryNodeRestartSelfTest.java    |   41 +-
 .../IgniteCacheQueryNodeRestartSelfTest2.java   |  388 ++
 .../local/IgniteCacheLocalQuerySelfTest.java    |    6 +
 ...dCacheAbstractReduceFieldsQuerySelfTest.java |    5 +-
 .../cache/ttl/CacheTtlAbstractSelfTest.java     |    6 +-
 .../h2/GridIndexingSpiAbstractSelfTest.java     |    4 +-
 .../query/h2/sql/BaseH2CompareQueryTest.java    |   22 +-
 .../query/h2/sql/GridQueryParsingTest.java      |    5 +-
 .../IgniteCacheQuerySelfTestSuite.java          |   16 +-
 .../IgniteCacheWithIndexingTestSuite.java       |    4 +
 modules/jcl/pom.xml                             |    2 +-
 modules/jta/licenses/jta-license.txt            |    2 +
 modules/jta/pom.xml                             |    2 +-
 .../apache/ignite/cache/jta/CacheTmLookup.java  |    3 +-
 .../processors/cache/jta/CacheJtaManager.java   |   76 +-
 .../cache/jta/GridCacheXAResource.java          |   34 +-
 .../processors/cache/GridCacheJtaSelfTest.java  |   52 +-
 .../GridTmLookupLifecycleAwareSelfTest.java     |   29 +-
 modules/kafka/licenses/apache-2.0.txt           |  202 +
 modules/kafka/pom.xml                           |  105 +
 .../ignite/stream/kafka/KafkaStreamer.java      |  220 +
 .../kafka/IgniteKafkaStreamerSelfTestSuite.java |   37 +
 .../stream/kafka/KafkaEmbeddedBroker.java       |  378 ++
 .../kafka/KafkaIgniteStreamerSelfTest.java      |  227 +
 .../ignite/stream/kafka/SimplePartitioner.java  |   53 +
 modules/log4j/pom.xml                           |    2 +-
 modules/mesos/README.txt                        |   28 +
 modules/mesos/licenses/apache-2.0.txt           |  202 +
 modules/mesos/pom.xml                           |  101 +
 .../apache/ignite/mesos/ClusterProperties.java  |  548 ++
 .../apache/ignite/mesos/IgniteFramework.java    |  119 +
 .../apache/ignite/mesos/IgniteScheduler.java    |  379 ++
 .../org/apache/ignite/mesos/IgniteTask.java     |   86 +
 .../org/apache/ignite/mesos/package-info.java   |   22 +
 .../ignite/mesos/resource/IgniteProvider.java   |  234 +
 .../ignite/mesos/resource/JettyServer.java      |   61 +
 .../ignite/mesos/resource/ResourceHandler.java  |  142 +
 .../ignite/mesos/resource/ResourceProvider.java |  120 +
 .../ignite/mesos/resource/package-info.java     |   22 +
 .../main/resources/ignite-default-config.xml    |   35 +
 .../org/apache/ignite/IgniteMesosTestSuite.java |   38 +
 .../ignite/mesos/IgniteSchedulerSelfTest.java   |  464 ++
 modules/rest-http/pom.xml                       |   20 +-
 modules/scalar-2.10/README.txt                  |    4 +
 modules/scalar-2.10/licenses/apache-2.0.txt     |  202 +
 modules/scalar-2.10/pom.xml                     |  197 +
 modules/scalar/licenses/scala-bsd-license.txt   |   18 -
 modules/scalar/pom.xml                          |    2 +-
 .../licenses/cron4j-lgpl-2.1-license.txt        |  174 -
 modules/schedule/pom.xml                        |    2 +-
 modules/schema-import/pom.xml                   |    2 +-
 .../ignite/schema/model/PojoDescriptor.java     |    2 +
 .../apache/ignite/schema/model/PojoField.java   |    1 +
 .../parser/dialect/OracleMetadataDialect.java   |    2 +-
 modules/slf4j/licenses/sl4j-mit-license.txt     |   21 -
 modules/slf4j/pom.xml                           |    2 +-
 modules/spark-2.10/README.txt                   |    4 +
 modules/spark-2.10/licenses/apache-2.0.txt      |  202 +
 modules/spark-2.10/pom.xml                      |  120 +
 modules/spark/README.txt                        |    8 +
 modules/spark/licenses/apache-2.0.txt           |  202 +
 modules/spark/pom.xml                           |  110 +
 .../org/apache/ignite/spark/IgniteContext.scala |  161 +
 .../org/apache/ignite/spark/IgniteRDD.scala     |  244 +
 .../apache/ignite/spark/JavaIgniteContext.scala |   63 +
 .../org/apache/ignite/spark/JavaIgniteRDD.scala |   99 +
 .../ignite/spark/impl/IgniteAbstractRDD.scala   |   39 +
 .../ignite/spark/impl/IgnitePartition.scala     |   24 +
 .../ignite/spark/impl/IgniteQueryIterator.scala |   27 +
 .../apache/ignite/spark/impl/IgniteSqlRDD.scala |   41 +
 .../spark/impl/JavaIgniteAbstractRDD.scala      |   34 +
 .../ignite/spark/JavaIgniteRDDSelfTest.java     |  298 +
 .../scala/org/apache/ignite/spark/Entity.scala  |   28 +
 .../org/apache/ignite/spark/IgniteRddSpec.scala |  249 +
 modules/spring/pom.xml                          |   23 +-
 .../apache/ignite/cache/spring/SpringCache.java |    2 +-
 .../ignite/cache/spring/SpringCacheManager.java |   22 +-
 .../spring/CacheSpringStoreSessionListener.java |  207 +
 .../GridResourceSpringBeanInjector.java         |    2 +-
 .../util/spring/IgniteSpringHelperImpl.java     |   89 +-
 .../src/test/config/incorrect-store-cache.xml   |   57 +
 modules/spring/src/test/config/node.xml         |   43 +
 modules/spring/src/test/config/node1.xml        |   45 +
 .../test/config/pojo-incorrect-store-cache.xml  |   56 +
 modules/spring/src/test/config/store-cache.xml  |   59 +
 modules/spring/src/test/config/store-cache1.xml |   62 +
 .../jdbc/CacheJdbcBlobStoreFactorySelfTest.java |  172 +
 .../jdbc/CacheJdbcPojoStoreFactorySelfTest.java |  193 +
 ...CacheSpringStoreSessionListenerSelfTest.java |  197 +
 .../IgniteExcludeInConfigurationTest.java       |   81 +
 .../org/apache/ignite/spring/sprint-exclude.xml |   76 +
 .../testsuites/IgniteSpringTestSuite.java       |   10 +
 modules/ssh/licenses/jcraft-revised-bsd.txt     |   28 -
 modules/ssh/pom.xml                             |    2 +-
 modules/tools/licenses/jodd-revised-bsd.txt     |   21 -
 modules/tools/pom.xml                           |    2 +-
 .../ignite/tools/classgen/ClassesGenerator.java |   30 +-
 .../urideploy/licenses/jtidy-mit-license.txt    |   50 -
 modules/urideploy/pom.xml                       |   16 +-
 .../GridTaskUriDeploymentDeadlockSelfTest.java  |   13 +-
 .../ignite/p2p/GridP2PDisabledSelfTest.java     |    2 +-
 modules/visor-console-2.10/README.txt           |    4 +
 modules/visor-console-2.10/pom.xml              |  174 +
 .../licenses/jcraft-revised-bsd.txt             |   28 -
 .../licenses/jline-bsd-license.txt              |   18 -
 .../licenses/scala-bsd-license.txt              |   18 -
 modules/visor-console/pom.xml                   |    2 +-
 .../ignite/visor/commands/VisorConsole.scala    |    3 +-
 .../commands/cache/VisorCacheCommand.scala      |    9 +-
 .../commands/cache/VisorCacheScanCommand.scala  |    2 +-
 .../visor/commands/node/VisorNodeCommand.scala  |    2 +-
 .../visor/commands/open/VisorOpenCommand.scala  |  319 +
 .../commands/tasks/VisorTasksCommand.scala      |    2 +-
 .../scala/org/apache/ignite/visor/visor.scala   |  291 +-
 .../ignite/visor/VisorRuntimeBaseSpec.scala     |    2 +
 .../commands/kill/VisorKillCommandSpec.scala    |    1 +
 .../commands/start/VisorStartCommandSpec.scala  |    1 +
 .../commands/tasks/VisorTasksCommandSpec.scala  |    1 +
 .../commands/vvm/VisorVvmCommandSpec.scala      |    1 +
 .../licenses/slf4j-mit-license.txt              |   21 -
 modules/visor-plugins/pom.xml                   |    2 +-
 modules/web/pom.xml                             |   12 +-
 .../IgniteWebSessionSelfTestSuite.java          |    2 +-
 .../config/benchmark-client-mode.properties     |   89 +
 .../config/benchmark-put-indexed-val.properties |   64 +
 modules/yardstick/config/ignite-base-config.xml |   23 +
 modules/yardstick/pom.xml                       |    2 +-
 .../cache/IgnitePutIndexedValue1Benchmark.java  |   42 +
 .../cache/IgnitePutIndexedValue2Benchmark.java  |   42 +
 .../cache/IgnitePutIndexedValue8Benchmark.java  |   42 +
 .../ignite/yardstick/cache/model/Person1.java   |   55 +
 .../ignite/yardstick/cache/model/Person2.java   |   67 +
 .../ignite/yardstick/cache/model/Person8.java   |  109 +
 modules/yarn/README.txt                         |   28 +
 modules/yarn/licenses/apache-2.0.txt            |  202 +
 modules/yarn/pom.xml                            |  101 +
 .../apache/ignite/yarn/ApplicationMaster.java   |  400 ++
 .../apache/ignite/yarn/ClusterProperties.java   |  432 ++
 .../org/apache/ignite/yarn/IgniteContainer.java |   84 +
 .../org/apache/ignite/yarn/IgniteProvider.java  |  339 +
 .../apache/ignite/yarn/IgniteYarnClient.java    |  178 +
 .../org/apache/ignite/yarn/package-info.java    |   22 +
 .../ignite/yarn/utils/IgniteYarnUtils.java      |   81 +
 .../main/resources/ignite-default-config.xml    |   35 +
 .../org/apache/ignite/IgniteYarnTestSuite.java  |   38 +
 .../yarn/IgniteApplicationMasterSelfTest.java   |  532 ++
 parent/pom.xml                                  |  110 +-
 pom.xml                                         |   79 +-
 scripts/git-apply-patch.sh                      |    8 +-
 scripts/git-format-patch.sh                     |   16 +-
 scripts/git-patch-functions.sh                  |   36 +-
 scripts/git-patch-prop.sh                       |    2 +-
 1157 files changed, 79870 insertions(+), 24888 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index 9a3f1a6,3857b35..f50d6b2
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@@ -942,5 -943,10 +943,11 @@@ public interface GridCacheEntryEx 
       * @param <V> Value type.
       * @return {@code True} if value was removed, {@code false} otherwise.
       */
+     public <V> boolean removeMeta(UUID name, V val);
+ 
+     /**
+      * Calls {@link GridDhtLocalPartition#onUnlock()} for this entry's partition.
+      */
+     public void onUnlock();
 +    public <V> boolean removeMeta(int key, V val);
  }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/dc18c3da/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
index 989ad0a,5d183bf..333fae5
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
@@@ -80,7 -83,13 +80,12 @@@ public class GridCacheMockEntry<K, V> e
          return !evicted;
      }
  
+     /** {@inheritDoc} */
+     @Override public int size() {
+         return 0;
+     }
+ 
      /**
 -     *
       * @return Evicted or not.
       */
      public boolean isEvicted() {


[04/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: 4ceabaa85ff3b91745b8d80fbf06a5e7f7799a36
Parents: c438a76 5f8f6f4
Author: avinogradov <av...@gridgain.com>
Authored: Tue May 5 15:15:56 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue May 5 15:15:56 2015 +0300

----------------------------------------------------------------------
 DEVNOTES.txt                                    |  34 +-
 assembly/release-base.xml                       |   2 +
 assembly/release-schema-import.xml              |  50 +++
 dev-tools/.gitignore                            |   2 +
 dev-tools/build.gradle                          |  46 +++
 dev-tools/src/main/groovy/jiraslurp.groovy      | 147 ++++++++
 examples/pom.xml                                |   2 +-
 .../streaming/wordcount/CacheConfig.java        |   5 -
 modules/aop/pom.xml                             |   2 +-
 modules/aws/pom.xml                             |   2 +-
 .../config/grid-client-config.properties        |  50 +--
 modules/clients/pom.xml                         |   2 +-
 .../ClientPropertiesConfigurationSelfTest.java  |  12 +-
 modules/cloud/pom.xml                           |   6 +-
 modules/codegen/pom.xml                         |   2 +-
 .../ignite/codegen/MessageCodeGenerator.java    |  26 +-
 modules/core/pom.xml                            |   2 +-
 .../java/org/apache/ignite/IgniteCache.java     |   5 +
 .../org/apache/ignite/IgniteJdbcDriver.java     |  81 +++--
 .../configuration/CacheConfiguration.java       | 259 +++++++++++---
 .../configuration/IgniteConfiguration.java      | 344 +++++++++++++++----
 .../ignite/internal/GridDirectCollection.java   |   3 +
 .../ignite/internal/GridUpdateNotifier.java     |  66 +++-
 .../ignite/internal/IgniteComponentType.java    |  36 +-
 .../apache/ignite/internal/IgniteKernal.java    |  83 +++--
 .../org/apache/ignite/internal/IgnitionEx.java  |  15 +-
 .../client/GridClientConfiguration.java         |   2 +-
 .../managers/communication/GridIoManager.java   |  30 +-
 .../communication/GridIoMessageFactory.java     |   8 +
 .../managers/indexing/GridIndexingManager.java  |  14 +-
 .../processors/cache/CacheObjectImpl.java       |   2 +-
 .../processors/cache/GridCacheIoManager.java    | 314 +++++++++++++----
 .../processors/cache/GridCacheMapEntry.java     |   9 +-
 .../processors/cache/GridCacheMessage.java      |   8 +-
 .../processors/cache/GridCacheProcessor.java    |   3 +-
 .../processors/cache/GridCacheSwapManager.java  |  35 +-
 .../processors/cache/GridCacheTtlManager.java   | 168 +++++----
 .../processors/cache/GridCacheUtils.java        |   5 +-
 .../dht/atomic/GridDhtAtomicUpdateResponse.java |   8 +
 .../dht/atomic/GridNearAtomicUpdateFuture.java  |   2 +-
 .../atomic/GridNearAtomicUpdateResponse.java    |  18 +-
 .../dht/preloader/GridDhtForceKeysFuture.java   |   6 +
 .../dht/preloader/GridDhtForceKeysResponse.java |  54 ++-
 .../distributed/near/GridNearGetResponse.java   |   8 +-
 .../cache/query/GridCacheQueryManager.java      |  22 +-
 .../cache/query/GridCacheSqlQuery.java          | 135 +++++++-
 .../cache/query/GridCacheTwoStepQuery.java      |   8 +-
 .../processors/query/GridQueryIndexing.java     |  19 +-
 .../processors/query/GridQueryProcessor.java    |  78 ++++-
 .../messages/GridQueryNextPageResponse.java     |  68 ++--
 .../h2/twostep/messages/GridQueryRequest.java   |  21 +-
 .../internal/visor/cache/VisorCacheMetrics.java |  53 +--
 .../cache/VisorCacheNearConfiguration.java      |   4 +-
 .../visor/cache/VisorCacheStartTask.java        | 155 +++++++++
 .../internal/visor/util/VisorTaskUtils.java     |  10 +
 .../apache/ignite/lang/IgniteAsyncSupport.java  |   4 +-
 .../org/apache/ignite/spi/IgniteSpiAdapter.java |  19 +-
 .../discovery/tcp/TcpClientDiscoverySpi.java    |   4 -
 .../spi/discovery/tcp/TcpDiscoverySpi.java      |   4 -
 .../discovery/tcp/TcpDiscoverySpiAdapter.java   |   8 +-
 .../resources/META-INF/classnames.properties    |  13 +
 .../core/src/main/resources/ignite.properties   |   2 +-
 .../internal/GridUpdateNotifierSelfTest.java    |  13 +-
 .../cache/GridCacheSwapReloadSelfTest.java      |  20 +-
 .../IgniteCacheEntryListenerAbstractTest.java   |   4 +-
 .../IgniteCacheP2pUnmarshallingErrorTest.java   | 189 ++++++++++
 ...gniteCacheP2pUnmarshallingNearErrorTest.java |  56 +++
 ...CacheP2pUnmarshallingRebalanceErrorTest.java |  80 +++++
 .../IgniteCacheP2pUnmarshallingTxErrorTest.java | 109 ++++++
 .../cache/IgniteCachePeekModesAbstractTest.java |  15 +-
 ...CacheLoadingConcurrentGridStartSelfTest.java | 154 +++++++++
 ...GridCacheLoadingConcurrentGridStartTest.java | 154 ---------
 .../dht/GridCacheDhtPreloadSelfTest.java        |   2 +-
 ...idFileSwapSpaceSpiMultithreadedLoadTest.java |   4 +-
 .../tcp/TcpClientDiscoverySelfTest.java         |   8 +
 .../ignite/testsuites/IgniteBasicTestSuite.java |   1 +
 ...gniteCacheP2pUnmarshallingErrorTestSuit.java |  41 +++
 .../ignite/testsuites/IgniteCacheTestSuite.java |   2 +-
 modules/extdata/p2p/pom.xml                     |   2 +-
 modules/extdata/uri/pom.xml                     |   2 +-
 modules/gce/pom.xml                             |   6 +-
 modules/geospatial/pom.xml                      |   2 +-
 modules/hadoop/pom.xml                          |   2 +-
 modules/hibernate/pom.xml                       |   2 +-
 modules/indexing/pom.xml                        |   2 +-
 .../processors/query/h2/IgniteH2Indexing.java   | 169 ++++++++-
 .../query/h2/opt/GridH2AbstractKeyValueRow.java |  92 +----
 .../query/h2/opt/GridH2KeyValueRowOffheap.java  |   7 +-
 .../query/h2/opt/GridH2KeyValueRowOnheap.java   |   6 +-
 .../query/h2/opt/GridH2RowDescriptor.java       |  14 +-
 .../processors/query/h2/opt/GridH2Table.java    |  10 +-
 .../query/h2/opt/GridH2ValueCacheObject.java    | 191 ++++++++++
 .../query/h2/opt/GridLuceneIndex.java           |  84 +++--
 .../query/h2/twostep/GridMapQueryExecutor.java  |  21 +-
 .../query/h2/twostep/GridMergeIndex.java        |   6 +-
 .../h2/twostep/GridMergeIndexUnsorted.java      |   4 +-
 .../h2/twostep/GridReduceQueryExecutor.java     |  13 +-
 .../query/h2/twostep/GridResultPage.java        |  80 ++++-
 .../query/h2/twostep/msg/GridH2Array.java       | 124 +++++++
 .../query/h2/twostep/msg/GridH2Boolean.java     | 112 ++++++
 .../query/h2/twostep/msg/GridH2Byte.java        | 113 ++++++
 .../query/h2/twostep/msg/GridH2Bytes.java       | 113 ++++++
 .../query/h2/twostep/msg/GridH2CacheObject.java | 148 ++++++++
 .../query/h2/twostep/msg/GridH2Date.java        | 115 +++++++
 .../query/h2/twostep/msg/GridH2Decimal.java     | 134 ++++++++
 .../query/h2/twostep/msg/GridH2Double.java      | 113 ++++++
 .../query/h2/twostep/msg/GridH2Float.java       | 113 ++++++
 .../query/h2/twostep/msg/GridH2Geometry.java    | 134 ++++++++
 .../query/h2/twostep/msg/GridH2Integer.java     | 113 ++++++
 .../query/h2/twostep/msg/GridH2JavaObject.java  | 113 ++++++
 .../query/h2/twostep/msg/GridH2Long.java        | 113 ++++++
 .../query/h2/twostep/msg/GridH2Null.java        |  78 +++++
 .../query/h2/twostep/msg/GridH2Short.java       | 113 ++++++
 .../query/h2/twostep/msg/GridH2String.java      | 115 +++++++
 .../query/h2/twostep/msg/GridH2Time.java        | 116 +++++++
 .../query/h2/twostep/msg/GridH2Timestamp.java   | 133 +++++++
 .../query/h2/twostep/msg/GridH2Uuid.java        | 133 +++++++
 .../h2/twostep/msg/GridH2ValueMessage.java      |  49 +++
 .../twostep/msg/GridH2ValueMessageFactory.java  | 201 +++++++++++
 .../cache/GridCacheOffHeapAndSwapSelfTest.java  |  11 +-
 .../cache/GridCacheOffHeapSelfTest.java         |  11 +-
 ...niteCacheP2pUnmarshallingQueryErrorTest.java |  56 +++
 .../IgniteCacheQueryMultiThreadedSelfTest.java  |   6 +-
 .../h2/GridIndexingSpiAbstractSelfTest.java     | 130 +++++--
 .../IgniteCacheQuerySelfTestSuite.java          |   3 +
 modules/jcl/pom.xml                             |   2 +-
 modules/jta/pom.xml                             |   2 +-
 modules/log4j/pom.xml                           |   2 +-
 modules/rest-http/pom.xml                       |   2 +-
 modules/scalar/pom.xml                          |   2 +-
 modules/schedule/pom.xml                        |   2 +-
 modules/schema-import/pom.xml                   |   8 +-
 modules/slf4j/pom.xml                           |   2 +-
 modules/spring/pom.xml                          |   2 +-
 .../util/spring/IgniteSpringHelperImpl.java     |   2 +-
 modules/ssh/pom.xml                             |   2 +-
 modules/tools/pom.xml                           |   2 +-
 modules/urideploy/pom.xml                       |   2 +-
 modules/visor-console/pom.xml                   |   2 +-
 .../commands/cache/VisorCacheCommand.scala      |   2 +-
 modules/visor-plugins/pom.xml                   |   2 +-
 modules/web/pom.xml                             |   2 +-
 modules/yardstick/pom.xml                       |   2 +-
 pom.xml                                         | 232 +++++++++++--
 144 files changed, 6100 insertions(+), 1059 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4ceabaa8/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/4ceabaa8/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------


[03/27] incubator-ignite git commit: ignite-630

Posted by sb...@apache.org.
ignite-630


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

Branch: refs/heads/ignite-752
Commit: c438a763f67ff01d963659536b27f83ebd450a6a
Parents: 1c708d1
Author: avinogradov <av...@gridgain.com>
Authored: Wed Apr 29 16:15:56 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Wed Apr 29 16:15:56 2015 +0300

----------------------------------------------------------------------
 .../internal/util/lang/GridMetadataAwareAdapter.java      | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c438a763/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
index 650c141..134cee9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
@@ -191,9 +191,13 @@ public class GridMetadataAwareAdapter {
      * @return All metadata in this entry.
      */
     public <V> Object[] allMeta() {
+        Object[] cp;
+
         synchronized (mux) {
-            return data;
+            cp = Arrays.copyOf(data, data.length);
         }
+
+        return cp;
     }
 
     /**
@@ -345,7 +349,7 @@ public class GridMetadataAwareAdapter {
 
         // Avoid code warning (suppressing is bad here, because we need this warning for other places).
         synchronized (mux) {
-            cp = Arrays.copyOf(data, data.length);
+            cp = Arrays.copyOf(this.data, this.data.length);
         }
 
         out.writeObject(cp);
@@ -365,7 +369,7 @@ public class GridMetadataAwareAdapter {
         Object[] cp = (Object[])in.readObject();
 
         synchronized (mux) {
-            data = cp;
+            this.data = cp;
         }
     }
 


[13/27] incubator-ignite git commit: # ignite-630 review

Posted by sb...@apache.org.
# ignite-630 review


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

Branch: refs/heads/ignite-752
Commit: 9b993710956b75d72def6bfd1697307be718f6f1
Parents: db24c99
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Thu May 14 18:28:02 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Thu May 14 18:28:02 2015 +0300

----------------------------------------------------------------------
 .../ignite/internal/util/lang/GridMetadataAwareAdapter.java       | 3 +--
 .../internal/processors/cache/eviction/GridCacheMockEntry.java    | 1 -
 2 files changed, 1 insertion(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/9b993710/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
index 917dbcc..b28a4d9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
@@ -74,7 +74,6 @@ public class GridMetadataAwareAdapter {
     private Object[] data = null;
 
     /** Serializable mutex. */
-    @SuppressWarnings({"FieldAccessedSynchronizedAndUnsynchronized"})
     private GridMutex mux;
 
     /**
@@ -90,7 +89,7 @@ public class GridMetadataAwareAdapter {
      * @param from Metadata aware instance to copy metadata from.
      */
     public void copyMeta(GridMetadataAwareAdapter from) {
-        A.notNull(from, "from");
+        assert from != null;
 
         copyMeta(from.allMeta());
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/9b993710/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
index 7b3d92b..2342ad0 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
@@ -24,7 +24,6 @@ import org.apache.ignite.internal.util.typedef.internal.*;
 import org.jetbrains.annotations.*;
 
 import javax.cache.*;
-import java.util.*;
 
 
 /**


[24/27] incubator-ignite git commit: Merge remote-tracking branch 'origin/master'

Posted by sb...@apache.org.
Merge remote-tracking branch 'origin/master'


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

Branch: refs/heads/ignite-752
Commit: ae148f1c5ea551b0d6cac3e82cfcff21197c88e0
Parents: fcf5ecb ed5d3ed
Author: ashutak <as...@gridgain.com>
Authored: Fri Jul 24 12:42:27 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Fri Jul 24 12:42:27 2015 +0300

----------------------------------------------------------------------
 .../rest/protocols/tcp/MockNioSession.java      |  15 -
 .../store/jdbc/CacheJdbcBlobStoreFactory.java   |   2 +-
 .../apache/ignite/internal/IgniteKernal.java    |   5 +
 .../cache/CacheEvictableEntryImpl.java          |   2 +-
 .../processors/cache/GridCacheAdapter.java      |  13 +-
 .../processors/cache/GridCacheEntryEx.java      |  32 +-
 .../cache/GridCacheEvictionManager.java         |  12 +-
 .../processors/cache/GridCacheMapEntry.java     | 208 +------------
 .../processors/cache/GridCacheUtils.java        |  18 +-
 .../extras/GridCacheAttributesEntryExtras.java  |  37 +--
 .../GridCacheAttributesMvccEntryExtras.java     |  35 +--
 ...dCacheAttributesMvccObsoleteEntryExtras.java |  35 +--
 ...cheAttributesMvccObsoleteTtlEntryExtras.java |  35 +--
 .../GridCacheAttributesMvccTtlEntryExtras.java  |  35 +--
 .../GridCacheAttributesObsoleteEntryExtras.java |  36 +--
 ...idCacheAttributesObsoleteTtlEntryExtras.java |  36 +--
 .../GridCacheAttributesTtlEntryExtras.java      |  36 +--
 .../cache/extras/GridCacheEntryExtras.java      |  14 -
 .../extras/GridCacheEntryExtrasAdapter.java     |   8 -
 .../cache/extras/GridCacheMvccEntryExtras.java  |   8 -
 .../GridCacheMvccObsoleteEntryExtras.java       |   8 -
 .../GridCacheMvccObsoleteTtlEntryExtras.java    |   9 -
 .../extras/GridCacheMvccTtlEntryExtras.java     |   8 -
 .../extras/GridCacheObsoleteEntryExtras.java    |   8 -
 .../extras/GridCacheObsoleteTtlEntryExtras.java |   9 -
 .../cache/extras/GridCacheTtlEntryExtras.java   |   8 -
 .../store/GridCacheStoreManagerAdapter.java     |   2 +-
 .../cache/transactions/IgniteInternalTx.java    |  16 +-
 .../cache/transactions/IgniteTxAdapter.java     |   6 +-
 .../util/lang/GridMetadataAwareAdapter.java     | 296 +++++++++----------
 .../cache/eviction/GridCacheMockEntry.java      |  12 +-
 .../nio/impl/GridNioFilterChainSelfTest.java    |  15 -
 .../GridMetadataAwareAdapterLoadSelfTest.java   | 135 +++++++++
 .../lang/GridMetadataAwareAdapterSelfTest.java  |  58 ++--
 34 files changed, 415 insertions(+), 797 deletions(-)
----------------------------------------------------------------------



[23/27] incubator-ignite git commit: # refactor ignite README files

Posted by sb...@apache.org.
# refactor ignite README files


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

Branch: refs/heads/ignite-752
Commit: fcf5ecb62ac03b9adfa2be8e91e494c1cedb2b30
Parents: 0055b40
Author: ashutak <as...@gridgain.com>
Authored: Fri Jul 24 12:38:20 2015 +0300
Committer: ashutak <as...@gridgain.com>
Committed: Fri Jul 24 12:38:20 2015 +0300

----------------------------------------------------------------------
 modules/clients/README.txt            |  16 ++++
 modules/clients/readme.md             |  32 -------
 modules/clients/readme.pdf            | Bin 47887 -> 0 bytes
 modules/hadoop/docs/HADOOP_README.txt | 122 ++++++++++++++++++++++++++
 modules/hadoop/docs/hadoop_readme.md  | 135 -----------------------------
 modules/hadoop/docs/hadoop_readme.pdf | Bin 82219 -> 0 bytes
 modules/yardstick/README.md           |  85 ------------------
 modules/yardstick/README.txt          |  93 ++++++++++++++++++++
 parent/pom.xml                        |   2 +
 9 files changed, 233 insertions(+), 252 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/clients/README.txt
----------------------------------------------------------------------
diff --git a/modules/clients/README.txt b/modules/clients/README.txt
new file mode 100644
index 0000000..8299c33
--- /dev/null
+++ b/modules/clients/README.txt
@@ -0,0 +1,16 @@
+Java Client README
+==================
+Java Client is a lightweight gateway to Ignite nodes.
+
+Client communicates with grid nodes via REST interface and provides reduced but powerful subset of Ignite API.
+Java Client allows to use Ignite features from devices and environments where fully-functional Ignite node
+could not (or should not) be started.
+
+Client vs Grid Node
+===================
+Note that for performance and ease-of-use reasons, you should always prefer to start grid node in your cluster
+instead of remote client. Grid node will generally perform a lot faster and can easily exhibit client-only
+functionality by excluding it from task/job execution and from caching data.
+
+For example, you can prevent a grid node from participating in caching by setting
+`CacheConfiguration.setDistributionMode(...)` value to either `CLIENT_ONLY` or `NEAR_ONLY`.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/clients/readme.md
----------------------------------------------------------------------
diff --git a/modules/clients/readme.md b/modules/clients/readme.md
deleted file mode 100644
index 007daf4..0000000
--- a/modules/clients/readme.md
+++ /dev/null
@@ -1,32 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-
-<center>
-![Ignite Logo](https://ignite.incubator.apache.org/images/logo3.png "Ignite Logo")
-</center>
-
-## Java Client README
-
-Java Client is a **lightweight gateway** to Ignite nodes.
-
-Client communicates with grid nodes via REST interface and provides reduced but powerful subset of Ignite API.
-Java Client allows to use Ignite features from devices and environments where fully-functional Ignite node
-could not (*or should not*) be started.
-
-## Client vs Grid Node
-Note that for performance and ease-of-use reasons, you should always prefer to start grid node in your cluster instead of remote client. Grid node will generally perform a lot faster and can easily exhibit client-only functionality by excluding it from task/job execution and from caching data. 
-

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/clients/readme.pdf
----------------------------------------------------------------------
diff --git a/modules/clients/readme.pdf b/modules/clients/readme.pdf
deleted file mode 100644
index 5ecb8d8..0000000
Binary files a/modules/clients/readme.pdf and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/hadoop/docs/HADOOP_README.txt
----------------------------------------------------------------------
diff --git a/modules/hadoop/docs/HADOOP_README.txt b/modules/hadoop/docs/HADOOP_README.txt
new file mode 100644
index 0000000..8915554
--- /dev/null
+++ b/modules/hadoop/docs/HADOOP_README.txt
@@ -0,0 +1,122 @@
+1. Apache Ignite In-Memory Accelerator For Apache Hadoop
+========================================================
+
+Ignite In-Memory Accelerator For Apache Hadoop is designed to deliver uncompromised performance for existing Apache
+Hadoop 2.2 or above applications with zero code change as well as simplicity of installation and configuration across all the
+supported platforms.
+
+2. Installation
+===============
+
+Ignite distribution comes in a ZIP file that simply needs to be unzipped. The Accelerator requires Apache Hadoop of
+version 2.2 or above to be already installed on the system either using Apache Bigtop packages or manually (manual installation
+just means that Apache Hadoop binary distribution must be unpacked somewhere on the system). In case of manual
+installation `HADOOP_HOME` environment variable must point to the installation directory of Apache Hadoop.
+
+> NOTE: You do not need any Apache Hadoop processes to be started, you only need to deploy the Apache Hadoop
+> distribution on your system. Nevertheless you can run Apache Hadoop jobs with Ignite Accelerator over HDFS,
+> in this case up and running HDFS infrastructure will be needed.
+
+The Accelerator comes with command line setup tool `bin/setup-hadoop.sh` (`bin/setup-hadoop.bat` on Windows) which
+will guide you through all the needed setup steps (note that the setup tool will require write permissions to the
+Apache Hadoop installation directory).
+
+Installation requirements:
+
+1. Windows, Linux, or MacOS environment.
+2. Java 7 or 8 (latest update is advisable).
+3. Point `JAVA_HOME` environment variable to your JDK or JRE installation.
+4. Apache Hadoop 2.2 or above installed.
+5. Point `HADOOP_HOME` environment variable to the installation directory of Apache Hadoop.
+6. Run `bin/setup-hadoop.{sh|bat}` setup script and follow instructions.
+
+> NOTE: On Windows platform Apache Hadoop client requires `JAVA_HOME` path to not contain space characters.
+> Java installed to `C:\\Program Files\` will not work, install JRE to correct location and point `JAVA_HOME` there.
+
+2.1 Check Apache Ignite Installation
+====================================
+
+After setup script successfully completed, you can execute the Ignite startup script.
+The following command will startup Ignite node with default configuration using multicast node discovery.
+
+    bin/ignite.{sh|bat}
+
+If Ignite was installed successfully, the output from above commands should produce no exceptions or errors.
+Note that you may see some other warnings during startup, but this is OK as they are meant to inform that certain
+functionality is turned on or off by default.
+
+You can execute the above commands multiple times on the same machine and make sure that nodes discover each other.
+Here is an example of log printout when 2 nodes join topology:
+
+    ... Topology snapshot [nodes=2, CPUs=8, hash=0xD551B245]
+
+You can also start Ignite Management Console, called Visor, and observe started nodes. To startup Visor, you should execute the following script:
+
+    /bin/ignitevisorcmd.{sh|bat}
+
+3. Configuration
+================
+
+To configure Ignite nodes you can change configuration files at `config` directory of Ignite installation. Those are conventional Spring files. Please refer to shipped configuration files and Ignite javadocs for more details.
+
+3.1 Distributed File System Configuration
+=========================================
+
+Ignite has it's own distributed in-memory file system called IgniteFS. Hadoop jobs can use it instead of HDFS to achieve maximum performance and scalability. Setting up IGFS is much simpler than HDFS, it requires just few tweaks of Ignite node configuration and does not require starting any additional processes. Default configuration shipped with the Accelerator contains one configured instance named "ignitefs" which can be used as reference.
+
+Generally URI for IgniteFS which will be used by Apache Hadoop looks like:
+
+    igfs://igfs_name@host_name
+
+Where `igfs_name` is IgniteFS instance name, `host_name` is any host running Ignite node with that IgniteFS instance configured.
+For more details please refer to IgniteFS documentation.
+
+3.2 Apache Hadoop Client Configuration
+======================================
+
+To run Apache Hadoop jobs with Ignite cluster you need to configure `core-site.xml` and `mapred-site.xml` at
+`$HADOOP_HOME/etc/hadoop` directory the same way as it is done in templates shipped with the Accelerator.
+The setup tool `bin/setup-hadoop.{sh|bat}` will ask you to replace those files with Ignite templates or
+you can find these templates at `config/hadoop/core-site.ignite.xml` and `config/hadoop/mapred-site.ignite.xml`
+respectively and perform the needed configuration manually.
+
+Apache Hadoop client will need to have Ignite jar files in classpath, the setup tool will care of that as well.
+
+4. Running Apache Hadoop Job With Ignite In-Memory Accelerator
+==============================================================
+
+To run Apache Hadoop job with Ignite cluster you have to start one or multiple Ignite nodes and make sure they successfully discovered each other.
+
+When all the configuration is complete and Ignite nodes are started, running Apache Hadoop job will be the same as with conventional Apache Hadoop distribution except that all Ignite nodes are equal and any of them can be treated as Job Tracker and DFS Name Node.
+
+To run "Word Count" example you can load some text files to IGFS using standard Apache Hadoop tools:
+
+    cd $HADOOP_HOME/bin
+
+    ./hadoop fs -mkdir /input
+
+    ./hadoop fs -copyFromLocal $HADOOP_HOME/README.txt /input/WORD_COUNT_ME.txt
+
+Run the job:
+
+    ./hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/*-mapreduce-examples-*.jar wordcount /input /output
+
+Check results:
+
+    ./hadoop fs -ls /output
+
+    ./hadoop fs -cat /output/part-r-00000
+
+A job can be ran on multiple nodes on localhost or in cluster environment the same way. The only changes needed to
+switch Apache Hadoop client to a cluster are to fix host in default DFS URI in `core-site.xml` and host in job tracker
+address in `mapred-site.xml`.
+
+5. Management & Monitoring with Visor
+=====================================
+Ignite comes with CLI (command) based DevOps Managements Console, called Visor, delivering advance set of management and monitoring capabilities.
+
+To start Visor in console mode you should execute the following command:
+
+    `bin/ignitevisorcmd.sh`
+
+On Windows, run the same commands with `.bat` extension.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/hadoop/docs/hadoop_readme.md
----------------------------------------------------------------------
diff --git a/modules/hadoop/docs/hadoop_readme.md b/modules/hadoop/docs/hadoop_readme.md
deleted file mode 100644
index 8f73ede..0000000
--- a/modules/hadoop/docs/hadoop_readme.md
+++ /dev/null
@@ -1,135 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-
-<center>
-![Ignite Logo](https://ignite.incubator.apache.org/images/logo3.png "Ignite Logo")
-</center>
-
-## 1. Apache Ignite In-Memory Accelerator For Apache Hadoop
-
-Ignite In-Memory Accelerator For Apache Hadoop is designed to deliver uncompromised performance for existing Apache 
-Hadoop 2.2 or above applications with zero code change as well as simplicity of installation and configuration across all the 
-supported platforms. 
-
-## 2. Installation
-
-Ignite distribution comes in a ZIP file that simply needs to be unzipped. The Accelerator requires Apache Hadoop of 
-version 2.2 or above to be already installed on the system either using Apache Bigtop packages or manually (manual installation
-just means that Apache Hadoop binary distribution must be unpacked somewhere on the system). In case of manual 
-installation `HADOOP_HOME` environment variable must point to the installation directory of Apache Hadoop. 
-
-> **NOTE:** You do not need any Apache Hadoop processes to be started, you only need to deploy the Apache Hadoop 
-> distribution on your system. Nevertheless you can run Apache Hadoop jobs with Ignite Accelerator over HDFS,
-> in this case up and running HDFS infrastructure will be needed.
-
-The Accelerator comes with command line setup tool `bin/setup-hadoop.sh` (`bin/setup-hadoop.bat` on Windows) which 
-will guide you through all the needed setup steps (note that the setup tool will require write permissions to the 
-Apache Hadoop installation directory). 
-
-Installation requirements:
-
-1. Windows, Linux, or MacOS environment.
-2. Java 7 or 8 (latest update is advisable).
-3. Point `JAVA_HOME` environment variable to your JDK or JRE installation.
-4. Apache Hadoop 2.2 or above installed.
-5. Point `HADOOP_HOME` environment variable to the installation directory of Apache Hadoop.
-6. Run `bin/setup-hadoop.{sh|bat}` setup script and follow instructions.
-
-> **NOTE:** On Windows platform Apache Hadoop client requires `JAVA_HOME` path to not contain space characters.
-> Java installed to `C:\\Program Files\` will not work, install JRE to correct location and point `JAVA_HOME` there.
-
-### 2.1 Check Apache Ignite Installation
-
-After setup script successfully completed, you can execute the Ignite startup script.
-The following command will startup Ignite node with default configuration using multicast node discovery.
-
-    bin/ignite.{sh|bat}
-
-If Ignite was installed successfully, the output from above commands should produce no exceptions or errors.
-Note that you may see some other warnings during startup, but this is OK as they are meant to inform that certain
-functionality is turned on or off by default.
-
-You can execute the above commands multiple times on the same machine and make sure that nodes discover each other.
-Here is an example of log printout when 2 nodes join topology:
-
-    ... Topology snapshot [nodes=2, CPUs=8, hash=0xD551B245]
-
-You can also start Ignite Management Console, called Visor, and observe started nodes. To startup Visor, you should execute the following script:
-
-    /bin/ignitevisorcmd.{sh|bat}
-
-## 3. Configuration
-
-To configure Ignite nodes you can change configuration files at `config` directory of Ignite installation. Those are conventional Spring files. Please refer to shipped configuration files and Ignite javadocs for more details.
-
-### 3.1 Distributed File System Configuration
-
-Ignite has it's own distributed in-memory file system called IgniteFS. Hadoop jobs can use it instead of HDFS to achieve maximum performance and scalability. Setting up IGFS is much simpler than HDFS, it requires just few tweaks of Ignite node configuration and does not require starting any additional processes. Default configuration shipped with the Accelerator contains one configured instance named "ignitefs" which can be used as reference.
-
-Generally URI for IgniteFS which will be used by Apache Hadoop looks like:
-
-    igfs://igfs_name@host_name
-
-Where `igfs_name` is IgniteFS instance name, `host_name` is any host running Ignite node with that IgniteFS instance configured.
-For more details please refer to IgniteFS documentation.
-
-### 3.2 Apache Hadoop Client Configuration
-
-To run Apache Hadoop jobs with Ignite cluster you need to configure `core-site.xml` and `mapred-site.xml` at 
-`$HADOOP_HOME/etc/hadoop` directory the same way as it is done in templates shipped with the Accelerator. 
-The setup tool `bin/setup-hadoop.{sh|bat}` will ask you to replace those files with Ignite templates or 
-you can find these templates at `config/hadoop/core-site.ignite.xml` and `config/hadoop/mapred-site.ignite.xml`
-respectively and perform the needed configuration manually.
-
-Apache Hadoop client will need to have Ignite jar files in classpath, the setup tool will care of that as well.
-
-## 4. Running Apache Hadoop Job With Ignite In-Memory Accelerator
-
-To run Apache Hadoop job with Ignite cluster you have to start one or multiple Ignite nodes and make sure they successfully discovered each other.
-
-When all the configuration is complete and Ignite nodes are started, running Apache Hadoop job will be the same as with conventional Apache Hadoop distribution except that all Ignite nodes are equal and any of them can be treated as Job Tracker and DFS Name Node.
-
-To run "Word Count" example you can load some text files to IGFS using standard Apache Hadoop tools:
- 
-    cd $HADOOP_HOME/bin
- 
-    ./hadoop fs -mkdir /input
-    
-    ./hadoop fs -copyFromLocal $HADOOP_HOME/README.txt /input/WORD_COUNT_ME.txt
-     
-Run the job:
-
-    ./hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/*-mapreduce-examples-*.jar wordcount /input /output
-
-Check results:
-
-    ./hadoop fs -ls /output
-    
-    ./hadoop fs -cat /output/part-r-00000
-
-A job can be ran on multiple nodes on localhost or in cluster environment the same way. The only changes needed to 
-switch Apache Hadoop client to a cluster are to fix host in default DFS URI in `core-site.xml` and host in job tracker 
-address in `mapred-site.xml`.
-
-## 5. Management & Monitoring with Visor
-Ignite comes with CLI (command) based DevOps Managements Console, called Visor, delivering advance set of management and monitoring capabilities. 
-
-To start Visor in console mode you should execute the following command:
-
-    `bin/ignitevisorcmd.sh`
-
-On Windows, run the same commands with `.bat` extension.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/hadoop/docs/hadoop_readme.pdf
----------------------------------------------------------------------
diff --git a/modules/hadoop/docs/hadoop_readme.pdf b/modules/hadoop/docs/hadoop_readme.pdf
deleted file mode 100644
index ffd8d13..0000000
Binary files a/modules/hadoop/docs/hadoop_readme.pdf and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/yardstick/README.md
----------------------------------------------------------------------
diff --git a/modules/yardstick/README.md b/modules/yardstick/README.md
deleted file mode 100644
index 36f4314..0000000
--- a/modules/yardstick/README.md
+++ /dev/null
@@ -1,85 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-
-# Yardstick Ignite Benchmarks
-Yardstick Ignite is a set of <a href="http://ignite.incubator.apache.org/">Ignite Grid</a> benchmarks written on top of Yardstick framework.
-
-## Yardstick Framework
-Visit <a href="https://github.com/gridgain/yardstick" target="_blank">Yardstick Repository</a> for detailed information on how to run Yardstick benchmarks and how to generate graphs.
-
-The documentation below describes configuration parameters in addition to standard Yardstick parameters.
-
-## Installation
-1. Create a local clone of Ignite repository
-2. Run `mvn package` command for Yardstick Ignite POM
-
-## Provided Benchmarks
-The following benchmarks are provided:
-
-1. `GetBenchmark` - benchmarks atomic distributed cache get operation
-2. `PutBenchmark` - benchmarks atomic distributed cache put operation
-3. `PutGetBenchmark` - benchmarks atomic distributed cache put and get operations together
-4. `PutTxBenchmark` - benchmarks transactional distributed cache put operation
-5. `PutGetTxBenchmark` - benchmarks transactional distributed cache put and get operations together
-6. `SqlQueryBenchmark` - benchmarks distributed SQL query over cached data
-7. `SqlQueryJoinBenchmark` - benchmarks distributed SQL query with a Join over cached data
-8. `SqlQueryPutBenchmark` - benchmarks distributed SQL query with simultaneous cache updates
-
-## Writing Ignite Benchmarks
-All benchmarks extend `AbstractBenchmark` class. A new benchmark should also extend this abstract class and implement `test` method. This is the method that is actually benchmarked.
-
-## Running Ignite Benchmarks
-Before running Ignite benchmarks, run `mvn package` command. This command will compile the project and also will unpack scripts from `yardstick-resources.zip` file to `bin` directory.
-
-### Properties And Command Line Arguments
-> Note that this section only describes configuration parameters specific to Ignite benchmarks, and not for Yardstick framework. To run Ignite benchmarks and generate graphs, you will need to run them using Yardstick framework scripts in `bin` folder.
-
-> Refer to [Yardstick Documentation](https://github.com/gridgain/yardstick) for common Yardstick properties and command line arguments for running Yardstick scripts.
-
-The following Ignite benchmark properties can be defined in the benchmark configuration:
-
-* `-nn <num>` or `--nodeNumber <num>` - Number of nodes (automatically set in `benchmark.properties`), used to wait for the specified number of nodes to start
-* `-b <num>` or `--backups <num>` - Number of backups for every key
-* `-cfg <path>` or `--Config <path>` - Path to Ignite configuration file
-* `-sm <mode>` or `-syncMode <mode>` - Synchronization mode (defined in `CacheWriteSynchronizationMode`)
-* `-cl` or `--client` - Client flag
-* `-nc` or `--nearCache` - Near cache flag
-* `-wom <mode>` or `--writeOrderMode <mode>` - Write order mode for ATOMIC caches (defined in `CacheAtomicWriteOrderMode`)
-* `-txc <value>` or `--txConcurrency <value>` - Cache transaction concurrency control, either `OPTIMISTIC` or `PESSIMISTIC` (defined in `CacheTxConcurrency`)
-* `-txi <value>` or `--txIsolation <value>` - Cache transaction isolation (defined in `CacheTxIsolation`)
-* `-ot` or `--offheapTiered` - Flag indicating whether tiered off-heap mode is on
-* `-ov` or `--offheapValuesOnly` - Flag indicating whether off-heap mode is on and only cache values are stored off-heap
-* `-rtp <num>`  or `--restPort <num>` - REST TCP port, indicates that a Ignite node is ready to process Ignite Clients
-* `-rth <host>` or `--restHost <host>` - REST TCP host
-* `-ss` or `--syncSend` - Flag indicating whether synchronous send is used in `TcpCommunicationSpi`
-* `-r <num>` or `--range` - Range of keys that are randomly generated for cache operations
-
-For example if we need to run 2 `IgniteNode` servers on localhost with `PutBenchmark` benchmark on localhost, with number of backups set to 1, synchronization mode set to `PRIMARY_SYNC`, then the following configuration should be specified in `benchmark.properties` file:
-
-```
-SERVER_HOSTS=localhost,localhost
-    
-# Note that -dn and -sn, which stand for data node and server node, are 
-# native Yardstick parameters and are documented in Yardstick framework.
-CONFIGS="-b 1 -sm PRIMARY_SYNC -dn PutBenchmark -sn IgniteNode"
-```
-
-## Issues
-Use Ignite Apache JIRA (https://issues.apache.org/jira/browse/IGNITE) to file bugs.
-
-## License
-Yardstick Ignite is available under [Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0.html) Open Source license.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/modules/yardstick/README.txt
----------------------------------------------------------------------
diff --git a/modules/yardstick/README.txt b/modules/yardstick/README.txt
new file mode 100644
index 0000000..c52838d
--- /dev/null
+++ b/modules/yardstick/README.txt
@@ -0,0 +1,93 @@
+Yardstick Ignite Benchmarks
+===========================
+Yardstick Ignite is a set of Ignite Grid (http://ignite.incubator.apache.org/) benchmarks written on top of Yardstick framework.
+
+Yardstick Framework
+===================
+Visit Yardstick Repository (https://github.com/gridgain/yardstick) for detailed information on how to run Yardstick benchmarks and how to generate graphs.
+
+The documentation below describes configuration parameters in addition to standard Yardstick parameters.
+
+Installation
+============
+1. Create a local clone of Ignite repository
+2. Run
+
+mvn package
+
+command for Yardstick Ignite POM
+
+Provided Benchmarks
+===================
+The following benchmarks are provided:
+
+1. `GetBenchmark` - benchmarks atomic distributed cache get operation
+2. `PutBenchmark` - benchmarks atomic distributed cache put operation
+3. `PutGetBenchmark` - benchmarks atomic distributed cache put and get operations together
+4. `PutTxBenchmark` - benchmarks transactional distributed cache put operation
+5. `PutGetTxBenchmark` - benchmarks transactional distributed cache put and get operations together
+6. `SqlQueryBenchmark` - benchmarks distributed SQL query over cached data
+7. `SqlQueryJoinBenchmark` - benchmarks distributed SQL query with a Join over cached data
+8. `SqlQueryPutBenchmark` - benchmarks distributed SQL query with simultaneous cache updates
+
+Writing Ignite Benchmarks
+=========================
+All benchmarks extend `AbstractBenchmark` class. A new benchmark should also extend this abstract class
+and implement `test` method. This is the method that is actually benchmarked.
+
+Running Ignite Benchmarks
+=========================
+Before running Ignite benchmarks, run:
+
+mvn package
+
+command. This command will compile the project and also will unpack scripts from `yardstick-resources.zip` file to `bin` directory.
+
+Properties And Command Line Arguments
+=====================================
+Note that this section only describes configuration parameters specific to Ignite benchmarks,
+and not for Yardstick framework. To run Ignite benchmarks and generate graphs, you will need to run them using
+Yardstick framework scripts in `bin` folder.
+
+Refer to Yardstick Documentation (https://github.com/gridgain/yardstick) for common Yardstick properties
+and command line arguments for running Yardstick scripts.
+
+The following Ignite benchmark properties can be defined in the benchmark configuration:
+
+* `-nn <num>` or `--nodeNumber <num>` - Number of nodes (automatically set in `benchmark.properties`), used to wait for the specified number of nodes to start
+* `-b <num>` or `--backups <num>` - Number of backups for every key
+* `-cfg <path>` or `--Config <path>` - Path to Ignite configuration file
+* `-sm <mode>` or `-syncMode <mode>` - Synchronization mode (defined in `CacheWriteSynchronizationMode`)
+* `-cl` or `--client` - Client flag
+* `-nc` or `--nearCache` - Near cache flag
+* `-wom <mode>` or `--writeOrderMode <mode>` - Write order mode for ATOMIC caches (defined in `CacheAtomicWriteOrderMode`)
+* `-txc <value>` or `--txConcurrency <value>` - Cache transaction concurrency control, either `OPTIMISTIC` or `PESSIMISTIC` (defined in `CacheTxConcurrency`)
+* `-txi <value>` or `--txIsolation <value>` - Cache transaction isolation (defined in `CacheTxIsolation`)
+* `-ot` or `--offheapTiered` - Flag indicating whether tiered off-heap mode is on
+* `-ov` or `--offheapValuesOnly` - Flag indicating whether off-heap mode is on and only cache values are stored off-heap
+* `-rtp <num>`  or `--restPort <num>` - REST TCP port, indicates that a Ignite node is ready to process Ignite Clients
+* `-rth <host>` or `--restHost <host>` - REST TCP host
+* `-ss` or `--syncSend` - Flag indicating whether synchronous send is used in `TcpCommunicationSpi`
+* `-r <num>` or `--range` - Range of keys that are randomly generated for cache operations
+
+For example if we need to run 2 `IgniteNode` servers on localhost with `PutBenchmark` benchmark on localhost,
+with number of backups set to 1, synchronization mode set to `PRIMARY_SYNC`, then the following configuration
+should be specified in `benchmark.properties` file:
+
+```
+SERVER_HOSTS=localhost,localhost
+...
+
+Note that -dn and -sn, which stand for data node and server node, are native Yardstick parameters and are documented in Yardstick framework.
+===========================================================================================================================================
+
+CONFIGS="-b 1 -sm PRIMARY_SYNC -dn PutBenchmark -sn IgniteNode"
+```
+
+Issues
+======
+Use Ignite Apache JIRA (https://issues.apache.org/jira/browse/IGNITE) to file bugs.
+
+License
+=======
+Yardstick Ignite is available under Apache 2.0 (http://www.apache.org/licenses/LICENSE-2.0.html) Open Source license.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fcf5ecb6/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index 1dbd511..4ca023a 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -673,6 +673,8 @@
                                         <exclude>**/*.dylib</exclude><!--bin-files-->
                                         <exclude>**/*.gar</exclude><!--bin-files-->
                                         <exclude>**/licenses/*.txt</exclude><!--files of licenses-->
+                                        <exclude>**/*readme*.txt</exclude><!--readme files-->
+                                        <exclude>**/*README*.txt</exclude><!--readme files-->
                                         <exclude>**/*.timestamp</exclude><!--tmp-files-->
                                         <exclude>**/*.iml</exclude><!--IDEA files-->
                                         <exclude>**/pom-installed.xml</exclude><!--tmp-files-->


[07/27] incubator-ignite git commit: ignite-630 Redundant usage of incremental meta key

Posted by sb...@apache.org.
ignite-630 Redundant usage of incremental meta key


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

Branch: refs/heads/ignite-752
Commit: 060177c13add020ded714300d2da07123431f0c0
Parents: e62f6d0
Author: avinogradov <av...@gridgain.com>
Authored: Tue May 12 16:40:09 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue May 12 16:40:09 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheAdapter.java       | 16 +++++-----------
 .../processors/cache/GridCacheUtils.java         | 19 -------------------
 2 files changed, 5 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/060177c1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 445e613..bfadb3f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -1291,9 +1291,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
         final AffinityTopologyVersion topVer = ctx.affinity().affinityTopologyVersion();
 
         if (!F.isEmpty(keys)) {
-            final int uid = CU.uid(); // Get meta UID for this thread.
-
-            assert keys != null;
+            final Map<KeyCacheObject, GridCacheVersion> keyVers = new HashMap();
 
             for (KeyCacheObject key : keys) {
                 if (key == null)
@@ -1310,11 +1308,9 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
                         if (entry == null)
                             break;
 
-                        // Get version before checking filer.
                         GridCacheVersion ver = entry.version();
 
-                        // Tag entry with current version.
-                        entry.addMeta(uid, ver);
+                        keyVers.put(key, ver);
 
                         break;
                     }
@@ -1334,7 +1330,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
             final Map<KeyCacheObject, CacheObject> map =
                 ret ? U.<KeyCacheObject, CacheObject>newHashMap(keys.size()) : null;
 
-            final Collection<KeyCacheObject> absentKeys = F.view(keys, CU.keyHasMeta(ctx, uid));
+            final Collection<KeyCacheObject> absentKeys = F.view(keyVers.keySet());
 
             final Collection<KeyCacheObject> loadedKeys = new GridConcurrentHashSet<>();
 
@@ -1351,9 +1347,8 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
 
                         if (entry != null) {
                             try {
-                                GridCacheVersion curVer = entry.removeMeta(uid);
+                                GridCacheVersion curVer = keyVers.get(key);
 
-                                // If entry passed the filter.
                                 if (curVer != null) {
                                     boolean wasNew = entry.isNewLocked();
 
@@ -1378,8 +1373,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
 
                                     if (log.isDebugEnabled()) {
                                         log.debug("Set value loaded from store into entry [set=" + set + ", " +
-                                            "curVer=" +
-                                            curVer + ", newVer=" + nextVer + ", entry=" + entry + ']');
+                                            "newVer=" + nextVer + ", entry=" + entry + ']');
                                     }
                                 }
                                 else {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/060177c1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
index 109aa32..6801248 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
@@ -97,16 +97,6 @@ public class GridCacheUtils {
     /** Skip store flag bit mask. */
     public static final int SKIP_STORE_FLAG_MASK = 0x1;
 
-    /** Per-thread generated UID store. */
-    private static final ThreadLocal<Integer> UIDS = new ThreadLocal<Integer>() {
-        @Override protected Integer initialValue() {
-            return uidGen.getAndIncrement();
-        }
-    };
-
-    /** Generates uid. */
-    private static final AtomicInteger uidGen = new GridAtomicInteger();
-
     /** Empty predicate array. */
     private static final IgnitePredicate[] EMPTY = new IgnitePredicate[0];
 
@@ -253,15 +243,6 @@ public class GridCacheUtils {
     }
 
     /**
-     * Gets per-thread-unique ID for this thread.
-     *
-     * @return ID for this thread.
-     */
-    public static int uid() {
-        return UIDS.get();
-    }
-
-    /**
      * @param msg Message to check.
      * @return {@code True} if preloader message.
      */


[17/27] incubator-ignite git commit: ignite-630

Posted by sb...@apache.org.
ignite-630


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

Branch: refs/heads/ignite-752
Commit: df0c9d56703a5068c4e312ac68a58a6f5f2aa02d
Parents: 79ba5a7
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Fri Jul 17 20:14:40 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Fri Jul 17 20:14:40 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheMapEntry.java     |   4 +-
 .../extras/GridCacheAttributesEntryExtras.java  |   2 +-
 .../GridCacheAttributesMvccEntryExtras.java     |   2 +-
 ...dCacheAttributesMvccObsoleteEntryExtras.java |   2 +-
 ...cheAttributesMvccObsoleteTtlEntryExtras.java |   2 +-
 .../GridCacheAttributesMvccTtlEntryExtras.java  |   2 +-
 .../GridCacheAttributesObsoleteEntryExtras.java |   2 +-
 ...idCacheAttributesObsoleteTtlEntryExtras.java |   2 +-
 .../GridCacheAttributesTtlEntryExtras.java      |   2 +-
 .../GridMetadataAwareAdapterLoadSelfTest.java   | 135 +++++++++++++++++++
 10 files changed, 145 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/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 091659f..f85a18b 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
@@ -75,8 +75,8 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
      * <li>Each nested object should be analyzed in the same way as above.</li>
      * </ul>
      */
-    // 7 * 8 /*references*/  + 2 * 8 /*long*/  + 1 * 4 /*int*/ + 1 * 1 /*byte*/ = 77
-    private static final int SIZE_OVERHEAD = 77 /*entry*/ + 32 /* version */ + 4 * 7 /* key + val */;
+    // 7 * 8 /*references*/  + 2 * 8 /*long*/  + 1 * 4 /*int*/ + 1 * 1 /*byte*/ + array at parent = 85
+    private static final int SIZE_OVERHEAD = 85 /*entry*/ + 32 /* version */ + 4 * 7 /* key + val */;
 
     /** Static logger to avoid re-creation. Made static for test purpose. */
     protected static final AtomicReference<IgniteLogger> logRef = new AtomicReference<>();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
index 911a1db..75ff973 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
@@ -49,7 +49,7 @@ public class GridCacheAttributesEntryExtras extends GridCacheEntryExtrasAdapter
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 8;
+        return 0;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
index cb36999..0899c97 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
@@ -69,7 +69,7 @@ public class GridCacheAttributesMvccEntryExtras extends GridCacheEntryExtrasAdap
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 16;
+        return 8;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
index a0b9b25..80e0b0a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
@@ -87,7 +87,7 @@ public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryEx
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 24;
+        return 16;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
index c7727c7..bc55fb1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
@@ -114,7 +114,7 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 40;
+        return 32;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
index aa5df67..a49bd63 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
@@ -98,7 +98,7 @@ public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasA
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 32;
+        return 24;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
index 47c46d2..a8e7b31 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
@@ -68,7 +68,7 @@ public class GridCacheAttributesObsoleteEntryExtras extends GridCacheEntryExtras
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 16;
+        return 8;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
index 42cff5d..7feb455 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
@@ -97,7 +97,7 @@ public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExt
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 32;
+        return 24;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
index cf2dc45..eebf986 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
@@ -79,7 +79,7 @@ public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapt
 
     /** {@inheritDoc} */
     @Override public int size() {
-        return 24;
+        return 16;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c9d56/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterLoadSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterLoadSelfTest.java b/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterLoadSelfTest.java
new file mode 100644
index 0000000..aaebe1f
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterLoadSelfTest.java
@@ -0,0 +1,135 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+package org.apache.ignite.lang;
+
+import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.processors.cache.eviction.*;
+import org.apache.ignite.internal.util.typedef.internal.*;
+import org.apache.ignite.testframework.junits.common.*;
+
+import java.util.*;
+
+/**
+ * Check how much memory and time required to fill 1_000_000 entries with meta.
+ * Do not include this test to suits.
+ */
+public class GridMetadataAwareAdapterLoadSelfTest extends GridCommonAbstractTest {
+    /** Creates test. */
+    public GridMetadataAwareAdapterLoadSelfTest() {
+        super(/*start grid*/false);
+    }
+
+    private static final String KEY_VALUE = "test";
+
+    /**
+     * Junit.
+     *
+     * @throws Exception
+     */
+    public void test() throws Exception {
+        String[] dic = new String[1_000_000];
+
+        for (int i = 0; i < 1_000_000; i++)
+            dic[i] = String.valueOf(i);
+
+        doTest(-1, "all 10 keys     ", dic);
+        doTest(0, "all 3 keys      ", dic);
+        doTest(1, "first key only  ", dic);
+        doTest(2, "second key only ", dic);
+        doTest(3, "third key only  ", dic);
+        doTest(4, "tenth key only  ", dic);
+        doTest(5, "random (1-3) key", dic);
+        doTest(6, "no meta         ", dic);
+    }
+
+    public void doTest(int c, String message, String[] dic) throws IgniteInterruptedCheckedException {
+        UUID[] uuids = new UUID[10];
+
+        for (int j = 0; j < 10; j++)
+            uuids[j] = UUID.randomUUID();
+
+        for (int t = 0; t < 2; t++) {
+            long mTotal = 0;
+            long tTotal = 0;
+
+            for (int k = 0; k < 20; k++) {
+                System.gc();
+
+                U.sleep(500);
+
+                GridCacheMockEntry[] entries = new GridCacheMockEntry[1_000_000];
+
+                long mBefore = Runtime.getRuntime().freeMemory();
+                long tBefore = System.currentTimeMillis();
+
+                for (int i = 0; i < 1_000_000; i++) {
+                    GridCacheMockEntry<String, String> entry = new GridCacheMockEntry<>(KEY_VALUE);
+                    switch (c) {//commented lines for old API
+                        case -1:
+                            for (int j = 9; j >= 0; j--)
+                                //entry.addMeta(uuids[j], dic[i]);
+                            entry.addMeta(j, dic[i]);
+                            break;
+                        case 0:
+                            for (int j = 2; j >= 0; j--)
+                                //entry.addMeta(uuids[j], dic[i]);
+                            entry.addMeta(j, dic[i]);
+                            break;
+                        case 1:
+                            //entry.addMeta(uuids[0], dic[i]);
+                            entry.addMeta(0, dic[i]);
+                            break;
+                        case 2:
+                            //entry.addMeta(uuids[1], dic[i]);
+                            entry.addMeta(1, dic[i]);
+                            break;
+                        case 3:
+                            //entry.addMeta(uuids[2], dic[i]);
+                            entry.addMeta(2, dic[i]);
+                            break;
+                        case 4:
+                            //entry.addMeta(uuids[9], dic[i]);
+                            entry.addMeta(9, dic[i]);
+                            break;
+                        case 5:
+                            //entry.addMeta(uuids[i % 3], dic[i]);
+                            entry.addMeta(i % 3, dic[i]);
+                            break;
+                        case 6:
+
+                            break;
+                    }
+
+                    entries[i] = entry;
+                }
+
+                long mAfter = Runtime.getRuntime().freeMemory();
+                long tAfter = System.currentTimeMillis();
+
+                if (k >= 10) {
+                    mTotal += (mBefore - mAfter);
+                    tTotal += (tAfter - tBefore);
+                }
+            }
+
+            log.info(message + " [time=" + tTotal + " ms, memory=" + mTotal / 1_000_000_0 + "." + mTotal % 1_000_000_0 + " mb]");
+        }
+
+        log.info(" ");
+    }
+}


[16/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/master' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-630

Conflicts:
	modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
	modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java


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

Branch: refs/heads/ignite-752
Commit: 79ba5a7924b1ba5303a31b3c6a44ad3dc2ede9b4
Parents: dc18c3d
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Fri Jul 17 15:49:37 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Fri Jul 17 15:49:37 2015 +0300

----------------------------------------------------------------------
 .../apache/ignite/internal/processors/cache/GridCacheAdapter.java | 3 ++-
 .../apache/ignite/internal/processors/cache/GridCacheEntryEx.java | 3 +--
 .../internal/processors/cache/eviction/GridCacheMockEntry.java    | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/79ba5a79/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 0c6fcf1..aef1d64 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -1375,7 +1375,8 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
 
                                     if (log.isDebugEnabled()) {
                                         log.debug("Set value loaded from store into entry [set=" + set + ", " +
-                                            "newVer=" + nextVer + ", entry=" + entry + ']');
+                                            "curVer=" +
+                                            curVer + ", newVer=" + nextVer + ", entry=" + entry + ']');
                                     }
                                 }
                                 else {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/79ba5a79/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
index f50d6b2..c2d0271 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java
@@ -943,11 +943,10 @@ public interface GridCacheEntryEx {
      * @param <V> Value type.
      * @return {@code True} if value was removed, {@code false} otherwise.
      */
-    public <V> boolean removeMeta(UUID name, V val);
+    public <V> boolean removeMeta(int key, V val);
 
     /**
      * Calls {@link GridDhtLocalPartition#onUnlock()} for this entry's partition.
      */
     public void onUnlock();
-    public <V> boolean removeMeta(int key, V val);
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/79ba5a79/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
index 333fae5..7a32596 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
@@ -30,7 +30,7 @@ import javax.cache.*;
  */
 public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implements Cache.Entry<K, V>, EvictableEntry<K, V> {
     /** */
-    private static final int META_KEY = EntryKey.values().length; //+1 to maximum value
+    private static final int META_KEY = EntryKey.values().length; //+1 to maximum value (test only case)
 
     /** */
     @GridToStringInclude


[26/27] incubator-ignite git commit: ignite-752: applied review nodes proposed by Dmitriy

Posted by sb...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
new file mode 100644
index 0000000..fbea187
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
@@ -0,0 +1,402 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.spi.discovery.tcp;
+
+import org.apache.ignite.*;
+import org.apache.ignite.cluster.*;
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.internal.util.io.*;
+import org.apache.ignite.lang.*;
+import org.apache.ignite.spi.*;
+import org.apache.ignite.spi.discovery.*;
+import org.apache.ignite.spi.discovery.tcp.internal.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.spi.discovery.tcp.messages.*;
+
+import java.io.*;
+import java.net.*;
+
+/**
+ *
+ */
+public class TcpDiscoverySpiFailureTimeoutSelfTest extends AbstractDiscoverySelfTest {
+    /** */
+    private static final int SPI_COUNT = 6;
+
+    /** */
+    private TcpDiscoveryIpFinder ipFinder =  new TcpDiscoveryVmIpFinder(true);
+
+    /** {@inheritDoc} */
+    @Override protected int getSpiCount() {
+        return SPI_COUNT;
+    }
+
+    /** {@inheritDoc} */
+    @Override protected DiscoverySpi getSpi(int idx) {
+        TestTcpDiscoverySpi spi = new TestTcpDiscoverySpi();
+
+        spi.setMetricsProvider(createMetricsProvider());
+        spi.setIpFinder(ipFinder);
+
+        switch (idx) {
+            case 0:
+            case 1:
+                // Ignore
+                break;
+            case 2:
+                spi.setAckTimeout(3000);
+                break;
+            case 3:
+                spi.setSocketTimeout(4000);
+                break;
+            case 4:
+                spi.setReconnectCount(4);
+                break;
+            case 5:
+                spi.setMaxAckTimeout(10000);
+                break;
+            default:
+                assert false;
+        }
+
+        return spi;
+    }
+
+    /**
+     * @throws Exception In case of error.
+     */
+    public void testFailureDetectionTimeoutEnabled() throws Exception {
+        assertTrue(firstSpi().failureDetectionTimeoutEnabled());
+        assertTrue(secondSpi().failureDetectionTimeoutEnabled());
+
+        assertEquals(IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT.longValue(),
+                firstSpi().failureDetectionTimeout());
+        assertEquals(IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT.longValue(),
+                secondSpi().failureDetectionTimeout());
+    }
+
+    /**
+     * @throws Exception In case of error.
+     */
+    public void testFailureDetectionTimeoutDisabled() throws Exception {
+        for (int i = 2; i < spis.size(); i++) {
+            assertFalse(((TcpDiscoverySpi)spis.get(i)).failureDetectionTimeoutEnabled());
+            assertEquals(0, ((TcpDiscoverySpi)spis.get(i)).failureDetectionTimeout());
+        }
+    }
+
+    /**
+     * @throws Exception In case of error.
+     */
+    public void testFailureDetectionOnSocketOpen() throws Exception {
+        try {
+            ClusterNode node = secondSpi().getLocalNode();
+
+            firstSpi().openSocketTimeout = true;
+
+            assertFalse(firstSpi().pingNode(node.id()));
+            assertTrue(firstSpi().validTimeout);
+            assertTrue(firstSpi().err.getMessage().equals("Timeout: openSocketTimeout"));
+
+            firstSpi().openSocketTimeout = false;
+            firstSpi().openSocketTimeoutWait = true;
+
+            assertFalse(firstSpi().pingNode(node.id()));
+            assertTrue(firstSpi().validTimeout);
+            assertTrue(firstSpi().err.getMessage().equals("Timeout: openSocketTimeoutWait"));
+        }
+        finally {
+            firstSpi().resetState();
+        }
+    }
+
+
+    /**
+     * @throws Exception In case of error.
+     */
+    public void testFailureDetectionOnSocketWrite() throws Exception {
+        try {
+            ClusterNode node = secondSpi().getLocalNode();
+
+            firstSpi().writeToSocketTimeoutWait = true;
+
+            assertFalse(firstSpi().pingNode(node.id()));
+            assertTrue(firstSpi().validTimeout);
+
+            firstSpi().writeToSocketTimeoutWait = false;
+
+            assertTrue(firstSpi().pingNode(node.id()));
+            assertTrue(firstSpi().validTimeout);
+        }
+        finally {
+            firstSpi().resetState();
+        }
+    }
+
+    /**
+     * @throws Exception In case of error.
+     */
+    public void testConnectionCheckMessage() throws Exception {
+        TestTcpDiscoverySpi nextSpi = null;
+
+        try {
+            assert firstSpi().connCheckStatusMsgCntSent == 0;
+
+            TcpDiscoveryNode nextNode = ((ServerImpl)(firstSpi().impl)).ring().nextNode();
+
+            assertNotNull(nextNode);
+
+            nextSpi = null;
+
+            for (int i = 1; i < spis.size(); i++)
+                if (spis.get(i).getLocalNode().id().equals(nextNode.id())) {
+                    nextSpi = (TestTcpDiscoverySpi)spis.get(i);
+                    break;
+                }
+
+            assertNotNull(nextSpi);
+
+            assert nextSpi.connCheckStatusMsgCntReceived == 0;
+
+            firstSpi().countConnCheckMsg = true;
+            nextSpi.countConnCheckMsg = true;
+
+            Thread.sleep(firstSpi().failureDetectionTimeout());
+
+            firstSpi().countConnCheckMsg = false;
+            nextSpi.countConnCheckMsg = false;
+
+            int sent = firstSpi().connCheckStatusMsgCntSent;
+            int received = nextSpi.connCheckStatusMsgCntReceived;
+
+            assert sent >= 3 && sent < 7 : "messages sent: " + sent;
+            assert received >= 3 && received < 7 : "messages received: " + received;
+        }
+        finally {
+            firstSpi().resetState();
+
+            if (nextSpi != null)
+                nextSpi.resetState();
+        }
+    }
+
+    /**
+     * @throws Exception In case of error.
+     */
+    public void testConnectionCheckMessageBackwardCompatibility() throws Exception {
+        TestTcpDiscoverySpi nextSpi = null;
+        TcpDiscoveryNode nextNode = null;
+
+        IgniteProductVersion nextNodeVer = null;
+
+        try {
+            assert firstSpi().connCheckStatusMsgCntSent == 0;
+
+            nextNode = ((ServerImpl)(firstSpi().impl)).ring().nextNode();
+
+            assertNotNull(nextNode);
+
+            nextSpi = null;
+
+            for (int i = 1; i < spis.size(); i++)
+                if (spis.get(i).getLocalNode().id().equals(nextNode.id())) {
+                    nextSpi = (TestTcpDiscoverySpi)spis.get(i);
+                    break;
+                }
+
+            assertNotNull(nextSpi);
+
+            assert nextSpi.connCheckStatusMsgCntReceived == 0;
+
+            nextNodeVer = nextNode.version();
+
+            // Overriding the version of the next node. Connection check message must not been sent to it.
+            nextNode.version(new IgniteProductVersion(TcpDiscoverySpi.FAILURE_DETECTION_MAJOR_VER,
+                (byte)(TcpDiscoverySpi.FAILURE_DETECTION_MINOR_VER - 1), TcpDiscoverySpi.FAILURE_DETECTION_MAINT_VER,
+                0l, null));
+
+            firstSpi().countConnCheckMsg = true;
+            nextSpi.countConnCheckMsg = true;
+
+            Thread.sleep(firstSpi().failureDetectionTimeout() / 2);
+
+            firstSpi().countConnCheckMsg = false;
+            nextSpi.countConnCheckMsg = false;
+
+            int sent = firstSpi().connCheckStatusMsgCntSent;
+            int received = nextSpi.connCheckStatusMsgCntReceived;
+
+            assert sent == 0 : "messages sent: " + sent;
+            assert received == 0 : "messages received: " + received;
+        }
+        finally {
+            firstSpi().resetState();
+
+            if (nextSpi != null)
+                nextSpi.resetState();
+
+            if (nextNode != null && nextNodeVer != null)
+                nextNode.version(nextNodeVer);
+        }
+    }
+
+    /**
+     * Returns the first spi with failure detection timeout enabled.
+     *
+     * @return SPI.
+     */
+    private TestTcpDiscoverySpi firstSpi() {
+        return (TestTcpDiscoverySpi)spis.get(0);
+    }
+
+
+    /**
+     * Returns the second spi with failure detection timeout enabled.
+     *
+     * @return SPI.
+     */
+    private TestTcpDiscoverySpi secondSpi() {
+        return (TestTcpDiscoverySpi)spis.get(1);
+    }
+
+    /**
+     *
+     */
+    private static class TestTcpDiscoverySpi extends TcpDiscoverySpi {
+        /** */
+        private volatile boolean openSocketTimeout;
+
+        /** */
+        private volatile boolean openSocketTimeoutWait;
+
+        /** */
+        private volatile boolean writeToSocketTimeoutWait;
+
+        /** */
+        private volatile boolean countConnCheckMsg;
+
+        /** */
+        private volatile int connCheckStatusMsgCntSent;
+
+        /** */
+        private volatile int connCheckStatusMsgCntReceived;
+
+        /** */
+        private volatile boolean validTimeout = true;
+
+        /** */
+        private volatile IgniteSpiOperationTimeoutException err;
+
+
+        /** {@inheritDoc} */
+        @Override protected Socket openSocket(InetSocketAddress sockAddr, IgniteSpiOperationTimeoutHelper timeoutHelper)
+            throws IOException, IgniteSpiOperationTimeoutException {
+
+            if (openSocketTimeout) {
+                err = new IgniteSpiOperationTimeoutException("Timeout: openSocketTimeout");
+                throw err;
+            }
+            else if (openSocketTimeoutWait) {
+                long timeout = timeoutHelper.nextTimeoutChunk(0);
+
+                try {
+                    Thread.sleep(timeout + 1000);
+                }
+                catch (InterruptedException e) {
+                    // Ignore
+                }
+
+                try {
+                    timeoutHelper.nextTimeoutChunk(0);
+                }
+                catch (IgniteSpiOperationTimeoutException e) {
+                    throw (err = new IgniteSpiOperationTimeoutException("Timeout: openSocketTimeoutWait"));
+                }
+            }
+
+            Socket sock = super.openSocket(sockAddr, timeoutHelper);
+
+            try {
+                Thread.sleep(1500);
+            } catch (InterruptedException e) {
+                // Ignore
+            }
+
+            return sock;
+        }
+
+        /** {@inheritDoc} */
+        @Override protected void writeToSocket(Socket sock, TcpDiscoveryAbstractMessage msg, long timeout)
+            throws IOException, IgniteCheckedException {
+            if (!(msg instanceof TcpDiscoveryPingRequest)) {
+                super.writeToSocket(sock, msg, timeout);
+                return;
+            }
+
+            if (timeout >= IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT) {
+                validTimeout = false;
+
+                throw new IgniteCheckedException("Invalid timeout: " + timeout);
+            }
+
+            if (writeToSocketTimeoutWait) {
+                try {
+                    Thread.sleep(timeout);
+                }
+                catch (InterruptedException e) {
+                    // Ignore
+                }
+            }
+            else
+                super.writeToSocket(sock, msg, timeout);
+        }
+
+        /** {@inheritDoc} */
+        @Override protected void writeToSocket(Socket sock, TcpDiscoveryAbstractMessage msg,
+            GridByteArrayOutputStream bout, long timeout) throws IOException, IgniteCheckedException {
+            if (countConnCheckMsg && msg instanceof TcpDiscoveryConnectionCheckMessage)
+                connCheckStatusMsgCntSent++;
+
+            super.writeToSocket(sock, msg, bout, timeout);
+        }
+
+        /** {@inheritDoc} */
+        protected void writeToSocket(TcpDiscoveryAbstractMessage msg, Socket sock, int res, long timeout)
+            throws IOException {
+            if (countConnCheckMsg && msg instanceof TcpDiscoveryConnectionCheckMessage)
+                connCheckStatusMsgCntReceived++;
+
+            super.writeToSocket(msg, sock, res, timeout);
+        }
+
+        /**
+         *
+         */
+        private void resetState() {
+            openSocketTimeout = false;
+            openSocketTimeoutWait = false;
+            writeToSocketTimeoutWait = false;
+            err = null;
+            validTimeout = true;
+            connCheckStatusMsgCntSent = 0;
+            connCheckStatusMsgCntReceived = 0;
+            countConnCheckMsg = false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
index 2e35c73..d77c432 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
@@ -44,7 +44,7 @@ public class IgniteSpiDiscoverySelfTestSuite extends TestSuite {
 
         suite.addTest(new TestSuite(TcpDiscoverySelfTest.class));
         suite.addTest(new TestSuite(TcpDiscoverySpiSelfTest.class));
-        suite.addTest(new TestSuite(TcpDiscoverySpiFailureThresholdSelfTest.class));
+        suite.addTest(new TestSuite(TcpDiscoverySpiFailureTimeoutSelfTest.class));
         suite.addTest(new TestSuite(TcpDiscoverySpiStartStopSelfTest.class));
         suite.addTest(new TestSuite(TcpDiscoverySpiConfigSelfTest.class));
         suite.addTest(new TestSuite(TcpDiscoveryMarshallerCheckSelfTest.class));
@@ -55,7 +55,7 @@ public class IgniteSpiDiscoverySelfTestSuite extends TestSuite {
         suite.addTest(new TestSuite(TcpClientDiscoverySpiSelfTest.class));
         suite.addTest(new TestSuite(TcpClientDiscoveryMarshallerCheckSelfTest.class));
         suite.addTest(new TestSuite(TcpClientDiscoverySpiMulticastTest.class));
-        suite.addTest(new TestSuite(TcpClientDiscoverySpiFailureThresholdSelfTest.class));
+        suite.addTest(new TestSuite(TcpClientDiscoverySpiFailureTimeoutSelfTest.class));
 
         suite.addTest(new TestSuite(TcpDiscoveryNodeConsistentIdSelfTest.class));
         suite.addTest(new TestSuite(TcpDiscoveryNodeConfigConsistentIdSelfTest.class));


[08/27] incubator-ignite git commit: ignite-630 Fixed keys

Posted by sb...@apache.org.
ignite-630 Fixed keys


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

Branch: refs/heads/ignite-752
Commit: 03439e255a5aa22cd4f6d5c9fab767a9fd883514
Parents: 060177c
Author: avinogradov <av...@gridgain.com>
Authored: Tue May 12 17:13:27 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue May 12 17:13:27 2015 +0300

----------------------------------------------------------------------
 .../cache/CacheEvictableEntryImpl.java          |  2 +-
 .../cache/GridCacheEvictionManager.java         |  2 +-
 .../store/GridCacheStoreManagerAdapter.java     |  2 +-
 .../util/lang/GridMetadataAwareAdapter.java     | 49 ++++++++++++++------
 .../cache/eviction/GridCacheMockEntry.java      |  2 +-
 .../lang/GridMetadataAwareAdapterSelfTest.java  | 24 +++++-----
 6 files changed, 53 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03439e25/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
index cd056a7..c624548 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEvictableEntryImpl.java
@@ -32,7 +32,7 @@ import java.util.*;
  */
 public class CacheEvictableEntryImpl<K, V> implements EvictableEntry<K, V> {
     /** */
-    private static final int META_KEY = GridMetadataAwareAdapter.nextUniqueKey();
+    private static final int META_KEY = GridMetadataAwareAdapter.EntryKey.CACHE_EVICTABLE_ENTRY_KEY.key();
 
     /** Cached entry. */
     @GridToStringInclude

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03439e25/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
index 4550d10..446db67 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java
@@ -64,7 +64,7 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter {
     private static final sun.misc.Unsafe unsafe = GridUnsafe.unsafe();
 
     /** Attribute name used to queue node in entry metadata. */
-    private static final int META_KEY = GridMetadataAwareAdapter.nextUniqueKey();
+    private static final int META_KEY = GridMetadataAwareAdapter.EntryKey.CACHE_EVICTION_MANAGER_KEY.key();
 
     /** Eviction policy. */
     private EvictionPolicy plc;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03439e25/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
index b558347..53b515d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
@@ -44,7 +44,7 @@ import java.util.*;
 @SuppressWarnings({"AssignmentToCatchBlockParameter", "unchecked"})
 public abstract class GridCacheStoreManagerAdapter extends GridCacheManagerAdapter implements CacheStoreManager {
     /** */
-    private static final int SES_ATTR = GridMetadataAwareAdapter.nextUniqueKey();
+    private static final int SES_ATTR = GridMetadataAwareAdapter.EntryKey.CACHE_STORE_MANAGER_KEY.key();
 
     /** */
     protected CacheStore<Object, Object> store;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03439e25/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
index 134cee9..917dbcc 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
@@ -26,7 +26,6 @@ import org.jetbrains.annotations.*;
 import java.io.*;
 import java.util.*;
 import java.util.concurrent.*;
-import java.util.concurrent.atomic.*;
 
 /**
  * Convenient adapter for working with metadata. <h2 class="header">Thread Safety</h2> This class provides necessary
@@ -34,13 +33,46 @@ import java.util.concurrent.atomic.*;
  */
 @SuppressWarnings({"SynchronizeOnNonFinalField"})
 public class GridMetadataAwareAdapter {
+    /**
+     * Enum stored predefined keys.
+     */
+    public enum EntryKey {//keys sorted by usage rate, descending.
+        /** Predefined key. */
+        CACHE_EVICTABLE_ENTRY_KEY(0),
+
+        /** Predefined key. */
+        CACHE_MOCK_ENTRY_KEY(1),
+
+        /** Predefined key. */
+        CACHE_STORE_MANAGER_KEY(2),
+
+        /** Predefined key. */
+        CACHE_EVICTION_MANAGER_KEY(3);
+
+        /** key. */
+        private int key;
+
+        /**
+         * @param key key
+         */
+        EntryKey(int key) {
+            this.key = key;
+        }
+
+        /**
+         * Returns key.
+         *
+         * @return key.
+         */
+        public int key() {
+            return key;
+        }
+    }
+
     /** Attributes. */
     @GridToStringInclude
     private Object[] data = null;
 
-    /** UID key generator. */
-    private static final AtomicInteger keyGen = new AtomicInteger();
-
     /** Serializable mutex. */
     @SuppressWarnings({"FieldAccessedSynchronizedAndUnsynchronized"})
     private GridMutex mux;
@@ -53,15 +85,6 @@ public class GridMetadataAwareAdapter {
     }
 
     /**
-     * Provides next UID.
-     *
-     * @return uid.
-     */
-    public static int nextUniqueKey() {
-        return keyGen.getAndIncrement();
-    }
-
-    /**
      * Copies all metadata from another instance.
      *
      * @param from Metadata aware instance to copy metadata from.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03439e25/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
index 3b354ba..7b3d92b 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
@@ -32,7 +32,7 @@ import java.util.*;
  */
 public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implements Cache.Entry<K, V>, EvictableEntry<K, V> {
     /** */
-    private static final int META_KEY = GridMetadataAwareAdapter.nextUniqueKey();
+    private static final int META_KEY = EntryKey.CACHE_MOCK_ENTRY_KEY.key();
 
     /** */
     @GridToStringInclude

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/03439e25/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java b/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
index 981145d..5a4534d 100644
--- a/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/lang/GridMetadataAwareAdapterSelfTest.java
@@ -39,17 +39,19 @@ public class GridMetadataAwareAdapterSelfTest extends GridCommonAbstractTest {
     public void test() {
         GridMetadataAwareAdapter ma = new GridMetadataAwareAdapter();
 
-        int attr1 = GridMetadataAwareAdapter.nextUniqueKey();
-        int attr2 = GridMetadataAwareAdapter.nextUniqueKey();
-        int attr3 = GridMetadataAwareAdapter.nextUniqueKey();
-        int attr4 = GridMetadataAwareAdapter.nextUniqueKey();
-        int attr156 = GridMetadataAwareAdapter.nextUniqueKey();
-        int k1 = GridMetadataAwareAdapter.nextUniqueKey();
-        int k2 = GridMetadataAwareAdapter.nextUniqueKey();
-        int k3 = GridMetadataAwareAdapter.nextUniqueKey();
-        int a1 = GridMetadataAwareAdapter.nextUniqueKey();
-        int a2 = GridMetadataAwareAdapter.nextUniqueKey();
-        int a3 = GridMetadataAwareAdapter.nextUniqueKey();
+        int cnt = 0;
+
+        int attr1 = cnt++;
+        int attr2 = cnt++;
+        int attr3 = cnt++;
+        int attr4 = cnt++;
+        int attr156 = cnt++;
+        int k1 = cnt++;
+        int k2 = cnt++;
+        int k3 = cnt++;
+        int a1 = cnt++;
+        int a2 = cnt++;
+        int a3 = cnt++;
 
         // addMeta(name, val).
         assert ma.addMeta(attr1, "val1") == null;


[11/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: e1b38fc7386b1576a1e3804d6e6864c3bc495230
Parents: 845efeb ba0caa1
Author: avinogradov <av...@gridgain.com>
Authored: Wed May 13 20:09:22 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Wed May 13 20:09:22 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheContext.java      |    7 +
 .../processors/cache/GridCacheMapEntry.java     |   70 +-
 .../processors/cache/GridCacheMvccManager.java  |    4 +-
 .../distributed/dht/GridDhtCacheAdapter.java    |   16 +-
 .../dht/GridDhtOffHeapCacheEntry.java           |   63 ++
 .../dht/GridDhtTransactionalCacheAdapter.java   |    9 +-
 .../cache/distributed/dht/GridDhtTxLocal.java   |   32 +-
 .../distributed/dht/GridDhtTxLocalAdapter.java  |   27 +
 .../cache/distributed/dht/GridDhtTxMapping.java |    2 +-
 .../distributed/dht/GridDhtTxPrepareFuture.java |   81 +-
 .../distributed/dht/GridNoStorageCacheMap.java  |    4 +-
 .../dht/atomic/GridDhtAtomicCache.java          |    3 +
 .../atomic/GridDhtAtomicOffHeapCacheEntry.java  |   63 ++
 .../dht/colocated/GridDhtColocatedCache.java    |    5 +-
 .../colocated/GridDhtColocatedLockFuture.java   |   25 +-
 .../GridDhtColocatedOffHeapCacheEntry.java      |   63 ++
 .../colocated/GridDhtDetachedCacheEntry.java    |    4 +-
 .../distributed/near/GridNearCacheAdapter.java  |    3 +
 .../distributed/near/GridNearCacheEntry.java    |    4 +-
 .../distributed/near/GridNearLockFuture.java    |    5 -
 .../near/GridNearOffHeapCacheEntry.java         |   60 +
 .../near/GridNearOptimisticTxPrepareFuture.java |  779 +++++++++++++
 .../GridNearPessimisticTxPrepareFuture.java     |  349 ++++++
 .../cache/distributed/near/GridNearTxLocal.java |   84 +-
 .../near/GridNearTxPrepareFuture.java           | 1050 ------------------
 .../near/GridNearTxPrepareFutureAdapter.java    |  226 ++++
 .../cache/local/GridLocalCacheEntry.java        |   18 +
 .../cache/transactions/IgniteInternalTx.java    |    4 +-
 .../cache/transactions/IgniteTxAdapter.java     |    2 +-
 .../cache/transactions/IgniteTxHandler.java     |   68 +-
 .../transactions/IgniteTxLocalAdapter.java      |    2 +-
 .../cache/transactions/IgniteTxManager.java     |   12 +-
 .../cache/CacheOffheapMapEntrySelfTest.java     |  168 +++
 .../GridCacheAbstractFailoverSelfTest.java      |    8 +-
 .../GridCacheAbstractNodeRestartSelfTest.java   |   11 +-
 .../distributed/GridCacheLockAbstractTest.java  |    2 -
 .../distributed/IgniteTxGetAfterStopTest.java   |  131 +++
 ...achePartitionedNearDisabledLockSelfTest.java |   47 +
 ...ePrimaryNodeFailureRecoveryAbstractTest.java |    4 +-
 ...idCacheAtomicReplicatedFailoverSelfTest.java |    6 +
 .../GridCachePartitionedTxSalvageSelfTest.java  |   25 +-
 .../GridCacheReplicatedFailoverSelfTest.java    |    6 +
 .../GridCacheReplicatedLockSelfTest.java        |    5 +
 .../GridCacheReplicatedNodeRestartSelfTest.java |   80 ++
 .../GridCacheLocalIsolatedNodesSelfTest.java    |   18 +-
 .../discovery/tcp/TcpDiscoveryRestartTest.java  |  199 ++++
 .../IgniteCacheFailoverTestSuite.java           |   10 +-
 .../testsuites/IgniteCacheRestartTestSuite.java |    8 +-
 .../testsuites/IgniteCacheTestSuite2.java       |    1 +
 .../testsuites/IgniteCacheTestSuite3.java       |    2 +
 .../testsuites/IgniteCacheTestSuite4.java       |    2 +
 51 files changed, 2559 insertions(+), 1318 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e1b38fc7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e1b38fc7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e1b38fc7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------


[10/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: 845efeba7e58cea6c76193dcd9938f3a1f9102d5
Parents: 387dcf6 3861fbd
Author: avinogradov <av...@gridgain.com>
Authored: Tue May 12 21:06:42 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue May 12 21:06:42 2015 +0300

----------------------------------------------------------------------
 bin/include/functions.sh                                        | 2 +-
 .../apache/ignite/internal/direct/DirectByteBufferStream.java   | 4 ++--
 .../internal/managers/eventstorage/GridEventStorageManager.java | 5 +----
 .../main/java/org/apache/ignite/internal/util/IgniteUtils.java  | 4 ++--
 4 files changed, 6 insertions(+), 9 deletions(-)
----------------------------------------------------------------------



[27/27] incubator-ignite git commit: ignite-752: applied review nodes proposed by Dmitriy

Posted by sb...@apache.org.
ignite-752: applied review nodes proposed by Dmitriy


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

Branch: refs/heads/ignite-752
Commit: 31ab0dd306552b5994f90ecbab9c480ce4a8b402
Parents: e81867b
Author: dmagda <ma...@gmail.com>
Authored: Fri Jul 24 14:57:00 2015 +0300
Committer: dmagda <ma...@gmail.com>
Committed: Fri Jul 24 14:57:00 2015 +0300

----------------------------------------------------------------------
 .../configuration/IgniteConfiguration.java      |  51 +--
 .../org/apache/ignite/spi/IgniteSpiAdapter.java |  54 +--
 .../spi/IgniteSpiOperationTimeoutException.java |   4 +-
 .../spi/IgniteSpiOperationTimeoutHelper.java    |  34 +-
 .../communication/tcp/TcpCommunicationSpi.java  |  60 +--
 .../ignite/spi/discovery/tcp/ClientImpl.java    |  16 +-
 .../ignite/spi/discovery/tcp/ServerImpl.java    |  60 +--
 .../spi/discovery/tcp/TcpDiscoverySpi.java      |  53 +--
 ...dTcpCommunicationSpiRecoveryAckSelfTest.java |   2 +-
 ...tionSpiRecoveryFailureDetectionSelfTest.java |   6 +-
 ...unicationSpiTcpFailureDetectionSelfTest.java |   8 +-
 ...entDiscoverySpiFailureThresholdSelfTest.java | 205 ----------
 ...lientDiscoverySpiFailureTimeoutSelfTest.java | 205 ++++++++++
 .../tcp/TcpClientDiscoverySpiSelfTest.java      |  16 +-
 ...TcpDiscoverySpiFailureThresholdSelfTest.java | 400 ------------------
 .../TcpDiscoverySpiFailureTimeoutSelfTest.java  | 402 +++++++++++++++++++
 .../IgniteSpiDiscoverySelfTestSuite.java        |   4 +-
 17 files changed, 791 insertions(+), 789 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
index f4fc4ec..aac1754 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/IgniteConfiguration.java
@@ -190,8 +190,10 @@ public class IgniteConfiguration {
     /** Default value for cache sanity check enabled flag. */
     public static final boolean DFLT_CACHE_SANITY_CHECK_ENABLED = true;
 
-    /** Default failure detection threshold in millis. */
-    public static final long DFLT_FAILURE_DETECTION_THRESHOLD = 10_000;
+    /** Default failure detection timeout in millis. */
+    @SuppressWarnings("UnnecessaryBoxing")
+//    public static final Long DFLT_FAILURE_DETECTION_TIMEOUT = new Long(10_000);
+    public static final Long DFLT_FAILURE_DETECTION_TIMEOUT = new Long(10_000);
 
     /** Optional grid name. */
     private String gridName;
@@ -370,8 +372,8 @@ public class IgniteConfiguration {
     /** Port number range for time server. */
     private int timeSrvPortRange = DFLT_TIME_SERVER_PORT_RANGE;
 
-    /** Failure detection threshold. */
-    private long failureDetectionThreshold = DFLT_FAILURE_DETECTION_THRESHOLD;
+    /** Failure detection timeout. */
+    private Long failureDetectionTimeout = DFLT_FAILURE_DETECTION_TIMEOUT;
 
     /** Property names to include into node attributes. */
     private String[] includeProps;
@@ -455,7 +457,7 @@ public class IgniteConfiguration {
         consistentId = cfg.getConsistentId();
         deployMode = cfg.getDeploymentMode();
         discoStartupDelay = cfg.getDiscoveryStartupDelay();
-        failureDetectionThreshold = cfg.getFailureDetectionThreshold();
+        failureDetectionTimeout = cfg.getFailureDetectionTimeout();
         ggHome = cfg.getIgniteHome();
         ggWork = cfg.getWorkDirectory();
         gridName = cfg.getGridName();
@@ -1662,38 +1664,27 @@ public class IgniteConfiguration {
     }
 
     /**
-     * Returns failure detection threshold used by {@link TcpDiscoverySpi} and {@link TcpCommunicationSpi}.
+     * Returns failure detection timeout used by {@link TcpDiscoverySpi} and {@link TcpCommunicationSpi}.
      * <p>
-     * Default is {@link #DFLT_FAILURE_DETECTION_THRESHOLD}.
+     * Default is {@link #DFLT_FAILURE_DETECTION_TIMEOUT}.
      *
-     * @see #setFailureDetectionThreshold(long)
-     * @return Failure detection threshold in milliseconds.
+     * @see #setFailureDetectionTimeout(long)
+     * @return Failure detection timeout in milliseconds.
      */
-    public long getFailureDetectionThreshold() {
-        return failureDetectionThreshold;
+    public Long getFailureDetectionTimeout() {
+        return failureDetectionTimeout;
     }
 
     /**
-     * Sets failure detection threshold to use in {@link TcpDiscoverySpi} and {@link TcpCommunicationSpi}.
+     * Sets failure detection timeout to use in {@link TcpDiscoverySpi} and {@link TcpCommunicationSpi}.
      * <p>
-     * If the threshold is set for a server node then it helps to detect failed nodes in a cluster topology during the
-     * time that is equal to threshold's value and keep working only with the nodes that are alive.
-     * <p>
-     * If it's set for a client node then the client node will be able to detect a disconnection from it's router node
-     * during the time equal to threshold's value.
-     * <p>
-     * The failure detection threshold is an easy and straightforward way to setup {@link TcpDiscoverySpi} and
-     * {@link TcpCommunicationSpi} depending on network conditions of a cluster. On the other hand if advanced setting
-     * of socket write, acknowledgement timeouts or other parameters is needed it can be done using specific
-     * {@link TcpDiscoverySpi} and {@link TcpCommunicationSpi} APIs. However, sometimes the failure detection threshold
-     * will be ignored when such a timeout or parameter is set explicitly. The full list of such timeouts and
-     * parameters is available as a part of {@link TcpDiscoverySpi} and {@link TcpCommunicationSpi}
-     * documentations.
-     *
-     * @param failureDetectionThreshold Failure detection threshold in milliseconds.
-     */
-    public void setFailureDetectionThreshold(long failureDetectionThreshold) {
-        this.failureDetectionThreshold = failureDetectionThreshold;
+     * Failure detection timeout is used to determine how long the communication or discovery SPIs should wait before
+     * considering a remote connection failed.
+     *
+     * @param failureDetectionTimeout Failure detection timeout in milliseconds.
+     */
+    public void setFailureDetectionTimeout(long failureDetectionTimeout) {
+        this.failureDetectionTimeout = failureDetectionTimeout;
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index 6f5e9e2..739891d 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -75,14 +75,14 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
     /** Local node. */
     private ClusterNode locNode;
 
-    /** Failure detection threshold usage switch. */
-    private boolean failureDetectionThresholdEnabled = true;
+    /** Failure detection timeout usage switch. */
+    private boolean failureDetectionTimeoutEnabled = true;
 
     /**
-     *  Failure detection threshold. Initialized with the value of
-     *  {@link IgniteConfiguration#getFailureDetectionThreshold()}.
+     *  Failure detection timeout. Initialized with the value of
+     *  {@link IgniteConfiguration#getFailureDetectionTimeout()}.
      */
-    private long failureDetectionThreshold;
+    private long failureDetectionTimeout;
 
     /**
      * Creates new adapter and initializes it from the current (this) class.
@@ -593,46 +593,52 @@ public abstract class IgniteSpiAdapter implements IgniteSpi, IgniteSpiManagement
     }
 
     /**
-     * Initiates and checks failure detection threshold value.
+     * Initiates and checks failure detection timeout value.
      */
-    protected void initFailureDetectionThreshold() {
-        if (failureDetectionThresholdEnabled) {
-            failureDetectionThreshold = ignite.configuration().getFailureDetectionThreshold();
+    protected void initFailureDetectionTimeout() {
+        if (failureDetectionTimeoutEnabled) {
+            failureDetectionTimeout = ignite.configuration().getFailureDetectionTimeout();
 
-            if (failureDetectionThreshold <= 0)
-                throw new IgniteSpiException("Invalid failure detection threshold value: " + failureDetectionThreshold);
-            else if (failureDetectionThreshold <= 10)
+            if (failureDetectionTimeout <= 0)
+                throw new IgniteSpiException("Invalid failure detection timeout value: " + failureDetectionTimeout);
+            else if (failureDetectionTimeout <= 10)
                 // Because U.currentTimeInMillis() is updated once in 10 milliseconds.
-                log.warning("Failure detection threshold is too low, it may lead to unpredictable behaviour " +
-                    "[failureDetectionThreshold=" + failureDetectionThreshold + ']');
+                log.warning("Failure detection timeout is too low, it may lead to unpredictable behaviour " +
+                    "[failureDetectionTimeout=" + failureDetectionTimeout + ']');
         }
+        // Intentionally compare references using '!=' below
+        else if (ignite.configuration().getFailureDetectionTimeout() !=
+                IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT)
+            log.warning("Failure detection timeout will be ignored (one of " + getClass().getSimpleName() +
+                " parameters has been set explicitly");
+
     }
 
     /**
-     * Enables or disables failure detection threshold.
+     * Enables or disables failure detection timeout.
      *
      * @param enabled {@code true} if enable, {@code false} otherwise.
      */
-    public void failureDetectionThresholdEnabled(boolean enabled) {
-        failureDetectionThresholdEnabled = enabled;
+    public void failureDetectionTimeoutEnabled(boolean enabled) {
+        failureDetectionTimeoutEnabled = enabled;
     }
 
     /**
-     * Checks whether failure detection threshold is enabled for this {@link IgniteSpi}.
+     * Checks whether failure detection timeout is enabled for this {@link IgniteSpi}.
      *
      * @return {@code true} if enabled, {@code false} otherwise.
      */
-    public boolean failureDetectionThresholdEnabled() {
-        return failureDetectionThresholdEnabled;
+    public boolean failureDetectionTimeoutEnabled() {
+        return failureDetectionTimeoutEnabled;
     }
 
     /**
-     * Returns failure detection threshold set to use for network related operations.
+     * Returns failure detection timeout set to use for network related operations.
      *
-     * @return failure detection threshold in milliseconds or {@code 0} if the threshold is disabled.
+     * @return failure detection timeout in milliseconds or {@code 0} if the timeout is disabled.
      */
-    public long failureDetectionThreshold() {
-        return failureDetectionThreshold;
+    public long failureDetectionTimeout() {
+        return failureDetectionTimeout;
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutException.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutException.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutException.java
index 235fd2b..0e34cf2 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutException.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutException.java
@@ -23,10 +23,10 @@ import org.apache.ignite.spi.communication.tcp.*;
 import org.apache.ignite.configuration.*;
 
 /**
- * Kind of exception that is used when failure detection threshold is enabled for {@link TcpDiscoverySpi} or
+ * Kind of exception that is used when failure detection timeout is enabled for {@link TcpDiscoverySpi} or
  * {@link TcpCommunicationSpi}.
  *
- * For more information refer to {@link IgniteConfiguration#setFailureDetectionThreshold(long)} and
+ * For more information refer to {@link IgniteConfiguration#setFailureDetectionTimeout(long)} and
  * {@link IgniteSpiOperationTimeoutHelper}.
  */
 public class IgniteSpiOperationTimeoutException extends IgniteCheckedException {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutHelper.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutHelper.java b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutHelper.java
index 03858d9..f7d8daa 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutHelper.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiOperationTimeoutHelper.java
@@ -23,7 +23,7 @@ import java.net.*;
 
 /**
  * Object that incorporates logic that determines a timeout value for the next network related operation and checks
- * whether a failure detection threshold is reached or not.
+ * whether a failure detection timeout is reached or not.
  *
  * A new instance of the class should be created for every complex network based operations that usually consists of
  * request and response parts.
@@ -36,10 +36,10 @@ public class IgniteSpiOperationTimeoutHelper {
     private long timeout;
 
     /** */
-    private final boolean failureDetectionThresholdEnabled;
+    private final boolean failureDetectionTimeoutEnabled;
 
     /** */
-    private final long failureDetectionThreshold;
+    private final long failureDetectionTimeout;
 
     /**
      * Constructor.
@@ -47,27 +47,27 @@ public class IgniteSpiOperationTimeoutHelper {
      * @param adapter SPI adapter.
      */
     public IgniteSpiOperationTimeoutHelper(IgniteSpiAdapter adapter) {
-        failureDetectionThresholdEnabled = adapter.failureDetectionThresholdEnabled();
-        failureDetectionThreshold = adapter.failureDetectionThreshold();
+        failureDetectionTimeoutEnabled = adapter.failureDetectionTimeoutEnabled();
+        failureDetectionTimeout = adapter.failureDetectionTimeout();
     }
 
     /**
      * Returns a timeout value to use for the next network operation.
      *
-     * If failure detection threshold is enabled then the returned value is a portion of time left since the last time
-     * this method is called. If the threshold is disabled then {@code dfltTimeout} is returned.
+     * If failure detection timeout is enabled then the returned value is a portion of time left since the last time
+     * this method is called. If the timeout is disabled then {@code dfltTimeout} is returned.
      *
-     * @param dfltTimeout Timeout to use if failure detection threshold is disabled.
+     * @param dfltTimeout Timeout to use if failure detection timeout is disabled.
      * @return Timeout in milliseconds.
-     * @throws IgniteSpiOperationTimeoutException If failure detection threshold is reached for an operation that uses
+     * @throws IgniteSpiOperationTimeoutException If failure detection timeout is reached for an operation that uses
      * this {@code IgniteSpiOperationTimeoutController}.
      */
     public long nextTimeoutChunk(long dfltTimeout) throws IgniteSpiOperationTimeoutException {
-        if (!failureDetectionThresholdEnabled)
+        if (!failureDetectionTimeoutEnabled)
             return dfltTimeout;
 
         if (lastOperStartTs == 0) {
-            timeout = failureDetectionThreshold;
+            timeout = failureDetectionTimeout;
             lastOperStartTs = U.currentTimeMillis();
         }
         else {
@@ -79,21 +79,21 @@ public class IgniteSpiOperationTimeoutHelper {
 
             if (timeout <= 0)
                 throw new IgniteSpiOperationTimeoutException("Network operation timed out. Increase " +
-                    "'failureDetectionThreshold' configuration property or set SPI specific timeouts" +
-                    " manually. Current failure detection threshold: " + failureDetectionThreshold);
+                    "'failureDetectionTimeout' configuration property [failureDetectionTimeout="
+                    + failureDetectionTimeout + ']');
         }
 
         return timeout;
     }
 
     /**
-     * Checks whether the given {@link Exception} is generated because failure detection threshold has been reached.
+     * Checks whether the given {@link Exception} is generated because failure detection timeout has been reached.
      *
      * @param e Exception.
-     * @return {@code true} if failure detection threshold is reached, {@code false} otherwise.
+     * @return {@code true} if failure detection timeout is reached, {@code false} otherwise.
      */
-    public boolean checkThresholdReached(Exception e) {
-        if (!failureDetectionThresholdEnabled)
+    public boolean checkFailureTimeoutReached(Exception e) {
+        if (!failureDetectionTimeoutEnabled)
             return false;
 
         return e instanceof IgniteSpiOperationTimeoutException || e instanceof SocketTimeoutException ||

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
index b55dde2..7be1dbc 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
@@ -75,16 +75,18 @@ import static org.apache.ignite.events.EventType.*;
  * you own idle connection timeout.
  * <h1 class="header">Failure Detection</h1>
  * Configuration defaults (see Configuration section below and
- * {@link IgniteConfiguration#getFailureDetectionThreshold()}) for details) are chosen to make possible for
+ * {@link IgniteConfiguration#getFailureDetectionTimeout()}) for details) are chosen to make possible for
  * communication SPI work reliably on most of hardware and virtual deployments, but this has made failure detection
  * time worse.
  * <p>
  * If it's needed to tune failure detection then it's highly recommended to do this using
- * {@link IgniteConfiguration#setFailureDetectionThreshold(long)}. This is the easiest and most straightforward way
- * to setup failure detection basing on network conditions of a cluster.
+ * {@link IgniteConfiguration#setFailureDetectionTimeout(long)}. This failure timeout automatically controls the
+ * following parameters: {@link #getConnectTimeout()}, {@link #getMaxConnectTimeout()},
+ * {@link #getReconnectCount()}. If any of those parameters is set explicitly, then the failure timeout setting will be
+ * ignored.
  * <p>
  * If it's required to perform advanced settings of failure detection and
- * {@link IgniteConfiguration#getFailureDetectionThreshold()} is unsuitable then various {@code TcpCommunicationSpi}
+ * {@link IgniteConfiguration#getFailureDetectionTimeout()} is unsuitable then various {@code TcpCommunicationSpi}
  * configuration parameters may be used.
  * <h1 class="header">Configuration</h1>
  * <h2 class="header">Mandatory</h2>
@@ -1004,7 +1006,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
      * <p>
      * If not provided, default value is {@link #DFLT_CONN_TIMEOUT}.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param connTimeout Connect timeout.
      */
@@ -1012,7 +1014,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
     public void setConnectTimeout(long connTimeout) {
         this.connTimeout = connTimeout;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
     }
 
     /** {@inheritDoc} */
@@ -1030,7 +1032,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
      * <p>
      * If not provided, default value is {@link #DFLT_MAX_CONN_TIMEOUT}.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param maxConnTimeout Maximum connect timeout.
      */
@@ -1038,7 +1040,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
     public void setMaxConnectTimeout(long maxConnTimeout) {
         this.maxConnTimeout = maxConnTimeout;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
     }
 
     /** {@inheritDoc} */
@@ -1052,7 +1054,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
      * <p>
      * If not provided, default value is {@link #DFLT_RECONNECT_CNT}.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param reconCnt Maximum number of reconnection attempts.
      */
@@ -1060,7 +1062,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
     public void setReconnectCount(int reconCnt) {
         this.reconCnt = reconCnt;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
     }
 
     /** {@inheritDoc} */
@@ -1288,7 +1290,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
 
     /** {@inheritDoc} */
     @Override public Map<String, Object> getNodeAttributes() throws IgniteSpiException {
-        initFailureDetectionThreshold();
+        initFailureDetectionTimeout();
 
         assertParameter(locPort > 1023, "locPort > 1023");
         assertParameter(locPort <= 0xffff, "locPort < 0xffff");
@@ -1300,7 +1302,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
         assertParameter(shmemPort > 0 || shmemPort == -1, "shmemPort > 0 || shmemPort == -1");
         assertParameter(selectorsCnt > 0, "selectorsCnt > 0");
 
-        if (!failureDetectionThresholdEnabled()) {
+        if (!failureDetectionTimeoutEnabled()) {
             assertParameter(reconCnt > 0, "reconnectCnt > 0");
             assertParameter(connTimeout >= 0, "connTimeout >= 0");
             assertParameter(maxConnTimeout >= connTimeout, "maxConnTimeout >= connTimeout");
@@ -1382,13 +1384,13 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
             log.debug(configInfo("shmemPort", shmemPort));
             log.debug(configInfo("msgQueueLimit", msgQueueLimit));
 
-            if (failureDetectionThresholdEnabled()) {
+            if (failureDetectionTimeoutEnabled()) {
                 log.debug(configInfo("connTimeout", connTimeout));
                 log.debug(configInfo("maxConnTimeout", maxConnTimeout));
                 log.debug(configInfo("reconCnt", reconCnt));
             }
             else
-                log.debug(configInfo("failureDetectionThreshold", failureDetectionThreshold()));
+                log.debug(configInfo("failureDetectionTimeout", failureDetectionTimeout()));
 
             log.debug(configInfo("sockWriteTimeout", sockWriteTimeout));
             log.debug(configInfo("ackSndThreshold", ackSndThreshold));
@@ -1955,7 +1957,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                     getSpiContext().messageFormatter());
             }
             catch (IgniteCheckedException e) {
-                if (timeoutHelper.checkThresholdReached(e))
+                if (timeoutHelper.checkFailureTimeoutReached(e))
                     throw e;
 
                 // Reconnect for the second time, if connection is not established.
@@ -1974,15 +1976,15 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
             catch (HandshakeTimeoutException | IgniteSpiOperationTimeoutException e) {
                 client.forceClose();
 
-                if (failureDetectionThresholdEnabled() && (e instanceof HandshakeTimeoutException ||
-                    timeoutHelper.checkThresholdReached(e))) {
-                    log.debug("Handshake timed out (failure threshold reached) [failureDetectionThreshold=" +
-                        failureDetectionThreshold() + ", err=" + e.getMessage() + ", client=" + client + ']');
+                if (failureDetectionTimeoutEnabled() && (e instanceof HandshakeTimeoutException ||
+                    timeoutHelper.checkFailureTimeoutReached(e))) {
+                    log.debug("Handshake timed out (failure threshold reached) [failureDetectionTimeout=" +
+                        failureDetectionTimeout() + ", err=" + e.getMessage() + ", client=" + client + ']');
 
                     throw e;
                 }
 
-                assert !failureDetectionThresholdEnabled();
+                assert !failureDetectionTimeoutEnabled();
 
                 if (log.isDebugEnabled())
                     log.debug("Handshake timed out (will retry with increased timeout) [timeout=" + connTimeout0 +
@@ -2173,11 +2175,11 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                         client = null;
                     }
 
-                    if (failureDetectionThresholdEnabled() && (e instanceof HandshakeTimeoutException ||
-                        timeoutHelper.checkThresholdReached(e))) {
+                    if (failureDetectionTimeoutEnabled() && (e instanceof HandshakeTimeoutException ||
+                        timeoutHelper.checkFailureTimeoutReached(e))) {
 
-                        String msg = "Handshake timed out (failure detection threshold is reached) " +
-                            "[failureDetectionThreshold=" + failureDetectionThreshold() + ", addr=" + addr + ']';
+                        String msg = "Handshake timed out (failure detection timeout is reached) " +
+                            "[failureDetectionTimeout=" + failureDetectionTimeout() + ", addr=" + addr + ']';
 
                         onException(msg, e);
 
@@ -2195,7 +2197,7 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                         break;
                     }
 
-                    assert !failureDetectionThresholdEnabled();
+                    assert !failureDetectionTimeoutEnabled();
 
                     onException("Handshake timed out (will retry with increased timeout) [timeout=" + connTimeout0 +
                         ", addr=" + addr + ']', e);
@@ -2242,12 +2244,12 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter
                     if (log.isDebugEnabled())
                         log.debug("Client creation failed [addr=" + addr + ", err=" + e + ']');
 
-                    boolean failureDetThrReached = timeoutHelper.checkThresholdReached(e);
+                    boolean failureDetThrReached = timeoutHelper.checkFailureTimeoutReached(e);
 
                     if (failureDetThrReached)
-                        LT.warn(log, null, "Connect timed out (consider increasing 'failureDetectionThreshold' " +
-                            "configuration property) [addr=" + addr + ", failureDetectionThreshold=" +
-                            failureDetectionThreshold() + ']');
+                        LT.warn(log, null, "Connect timed out (consider increasing 'failureDetectionTimeout' " +
+                            "configuration property) [addr=" + addr + ", failureDetectionTimeout=" +
+                            failureDetectionTimeout() + ']');
                     else if (X.hasCause(e, SocketTimeoutException.class))
                         LT.warn(log, null, "Connect timed out (consider increasing 'connTimeout' " +
                             "configuration property) [addr=" + addr + ", connTimeout=" + connTimeout + ']');

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
index 213ea63..12b10b8 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java
@@ -560,10 +560,10 @@ class ClientImpl extends TcpDiscoveryImpl {
 
                 errs.add(e);
 
-                if (timeoutHelper.checkThresholdReached(e))
+                if (timeoutHelper.checkFailureTimeoutReached(e))
                     break;
 
-                if (!spi.failureDetectionThresholdEnabled() && ++reconCnt == spi.getReconnectCount())
+                if (!spi.failureDetectionTimeoutEnabled() && ++reconCnt == spi.getReconnectCount())
                     break;
 
                 if (!openSock) {
@@ -577,7 +577,7 @@ class ClientImpl extends TcpDiscoveryImpl {
                     break; // Don't retry if we can not establish connection.
                 }
 
-                if (!spi.failureDetectionThresholdEnabled() && (e instanceof SocketTimeoutException ||
+                if (!spi.failureDetectionTimeoutEnabled() && (e instanceof SocketTimeoutException ||
                     X.hasCause(e, SocketTimeoutException.class))) {
                     ackTimeout0 *= 2;
 
@@ -891,7 +891,7 @@ class ClientImpl extends TcpDiscoveryImpl {
         protected SocketWriter() {
             super(spi.ignite().name(), "tcp-client-disco-sock-writer", log);
 
-            socketTimeout = spi.failureDetectionThresholdEnabled() ? spi.failureDetectionThreshold() :
+            socketTimeout = spi.failureDetectionTimeoutEnabled() ? spi.failureDetectionTimeout() :
                 spi.getSocketTimeout();
         }
 
@@ -991,8 +991,8 @@ class ClientImpl extends TcpDiscoveryImpl {
                     msg = null;
 
                     if (ack) {
-                        long waitEnd = U.currentTimeMillis() + (spi.failureDetectionThresholdEnabled() ?
-                            spi.failureDetectionThreshold() : spi.getAckTimeout());
+                        long waitEnd = U.currentTimeMillis() + (spi.failureDetectionTimeoutEnabled() ?
+                            spi.failureDetectionTimeout() : spi.getAckTimeout());
 
                         TcpDiscoveryAbstractMessage unacked;
 
@@ -1009,8 +1009,8 @@ class ClientImpl extends TcpDiscoveryImpl {
                             if (log.isDebugEnabled())
                                 log.debug("Failed to get acknowledge for message, will try to reconnect " +
                                 "[msg=" + unacked +
-                                (spi.failureDetectionThresholdEnabled() ?
-                                ", failureDetectionThreshold=" + spi.failureDetectionThreshold() :
+                                (spi.failureDetectionTimeoutEnabled() ?
+                                ", failureDetectionTimeout=" + spi.failureDetectionTimeout() :
                                 ", timeout=" + spi.getAckTimeout()) + ']');
 
                             throw new IOException("Failed to get acknowledge for message: " + unacked);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index 99a3ee2..b4f89ec 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -546,9 +546,9 @@ class ServerImpl extends TcpDiscoveryImpl {
                         if (!openedSock && reconCnt == 2)
                             break;
 
-                        if (timeoutHelper.checkThresholdReached(e))
+                        if (timeoutHelper.checkFailureTimeoutReached(e))
                             break;
-                        else if (!spi.failureDetectionThresholdEnabled() && reconCnt == spi.getReconnectCount())
+                        else if (!spi.failureDetectionTimeoutEnabled() && reconCnt == spi.getReconnectCount())
                             break;
                     }
                     finally {
@@ -609,7 +609,7 @@ class ServerImpl extends TcpDiscoveryImpl {
 
     /** {@inheritDoc} */
     @Override protected void onDataReceived() {
-        if (spi.failureDetectionThresholdEnabled() && locNode != null)
+        if (spi.failureDetectionTimeoutEnabled() && locNode != null)
             locNode.lastDataReceivedTime(U.currentTimeMillis());
     }
 
@@ -979,10 +979,10 @@ class ServerImpl extends TcpDiscoveryImpl {
 
                 errs.add(e);
 
-                if (timeoutHelper.checkThresholdReached(e))
+                if (timeoutHelper.checkFailureTimeoutReached(e))
                     break;
 
-                if (!spi.failureDetectionThresholdEnabled() && ++reconCnt == spi.getReconnectCount())
+                if (!spi.failureDetectionTimeoutEnabled() && ++reconCnt == spi.getReconnectCount())
                     break;
 
                 if (!openSock) {
@@ -996,7 +996,7 @@ class ServerImpl extends TcpDiscoveryImpl {
                     break; // Don't retry if we can not establish connection.
                 }
 
-                if (!spi.failureDetectionThresholdEnabled() && (e instanceof SocketTimeoutException ||
+                if (!spi.failureDetectionTimeoutEnabled() && (e instanceof SocketTimeoutException ||
                     X.hasCause(e, SocketTimeoutException.class))) {
                     ackTimeout0 *= 2;
 
@@ -1795,12 +1795,12 @@ class ServerImpl extends TcpDiscoveryImpl {
         }
 
         /**
-         * Initializes connection check frequency. Used only when failure detection threshold is enabled.
+         * Initializes connection check frequency. Used only when failure detection timeout is enabled.
          */
         private void initConnectionCheckFrequency() {
-            if (spi.failureDetectionThresholdEnabled()) {
+            if (spi.failureDetectionTimeoutEnabled()) {
                 for (int i = 3; i > 0; i--) {
-                    connCheckFreq = spi.failureDetectionThreshold() / i;
+                    connCheckFreq = spi.failureDetectionTimeout() / i;
 
                     if (connCheckFreq > 0)
                         break;
@@ -2112,12 +2112,12 @@ class ServerImpl extends TcpDiscoveryImpl {
                                 if (!openSock)
                                     break; // Don't retry if we can not establish connection.
 
-                                if (!spi.failureDetectionThresholdEnabled() && ++reconCnt == spi.getReconnectCount())
+                                if (!spi.failureDetectionTimeoutEnabled() && ++reconCnt == spi.getReconnectCount())
                                     break;
 
-                                if (timeoutHelper.checkThresholdReached(e))
+                                if (timeoutHelper.checkFailureTimeoutReached(e))
                                     break;
-                                else if (!spi.failureDetectionThresholdEnabled() && (e instanceof
+                                else if (!spi.failureDetectionTimeoutEnabled() && (e instanceof
                                     SocketTimeoutException || X.hasCause(e, SocketTimeoutException.class))) {
                                     ackTimeout0 *= 2;
 
@@ -2262,10 +2262,10 @@ class ServerImpl extends TcpDiscoveryImpl {
                             onException("Failed to send message to next node [next=" + next.id() + ", msg=" + msg + ']',
                                 e);
 
-                            if (timeoutHelper.checkThresholdReached(e))
+                            if (timeoutHelper.checkFailureTimeoutReached(e))
                                 break;
 
-                            if (!spi.failureDetectionThresholdEnabled()) {
+                            if (!spi.failureDetectionTimeoutEnabled()) {
                                 if (++reconCnt == spi.getReconnectCount())
                                     break;
                                 else if (e instanceof SocketTimeoutException ||
@@ -2287,7 +2287,7 @@ class ServerImpl extends TcpDiscoveryImpl {
 
                                 if (log.isDebugEnabled())
                                     log.debug("Message has not been sent [next=" + next.id() + ", msg=" + msg +
-                                        (!spi.failureDetectionThresholdEnabled() ? ", i=" + reconCnt : "") + ']');
+                                        (!spi.failureDetectionTimeoutEnabled() ? ", i=" + reconCnt : "") + ']');
                             }
                         }
                     } // Try to reconnect.
@@ -3350,8 +3350,8 @@ class ServerImpl extends TcpDiscoveryImpl {
                 }
                 else if (leftNode.equals(next) && sock != null) {
                     try {
-                        writeToSocket(sock, msg, spi.failureDetectionThresholdEnabled() ?
-                            spi.failureDetectionThreshold() : spi.getSocketTimeout());
+                        writeToSocket(sock, msg, spi.failureDetectionTimeoutEnabled() ?
+                            spi.failureDetectionTimeout() : spi.getSocketTimeout());
 
                         if (log.isDebugEnabled())
                             log.debug("Sent verified node left message to leaving node: " + msg);
@@ -4044,15 +4044,15 @@ class ServerImpl extends TcpDiscoveryImpl {
          * Check connection aliveness status.
          */
         private void checkConnection() {
-            if (!spi.failureDetectionThresholdEnabled())
+            if (!spi.failureDetectionTimeoutEnabled())
                 return;
 
             if (!failureThresholdReached && U.currentTimeMillis() - locNode.lastDataReceivedTime()
-                >= spi.failureDetectionThreshold() && ring.hasRemoteNodes() && spiStateCopy() == CONNECTED) {
+                >= spi.failureDetectionTimeout() && ring.hasRemoteNodes() && spiStateCopy() == CONNECTED) {
 
-                log.info("Local node seems to be disconnected from topology (failure detection threshold " +
-                             "is reached): [failureDetectionThreshold=" + spi.failureDetectionThreshold() +
-                             ", connCheckFreq=" + connCheckFreq + ']');
+                log.info("Local node seems to be disconnected from topology (failure detection timeout " +
+                    "is reached): [failureDetectionTimeout=" + spi.failureDetectionTimeout() +
+                    ", connCheckFreq=" + connCheckFreq + ']');
 
                 failureThresholdReached = true;
 
@@ -4297,8 +4297,8 @@ class ServerImpl extends TcpDiscoveryImpl {
                     if (req.client())
                         res.clientAck(true);
 
-                    spi.writeToSocket(sock, res, spi.failureDetectionThresholdEnabled() ?
-                        spi.failureDetectionThreshold() : spi.getSocketTimeout());
+                    spi.writeToSocket(sock, res, spi.failureDetectionTimeoutEnabled() ?
+                        spi.failureDetectionTimeout() : spi.getSocketTimeout());
 
                     // It can happen if a remote node is stopped and it has a loopback address in the list of addresses,
                     // the local node sends a handshake request message on the loopback address, so we get here.
@@ -4407,7 +4407,7 @@ class ServerImpl extends TcpDiscoveryImpl {
                     return;
                 }
 
-                long socketTimeout = spi.failureDetectionThresholdEnabled() ? spi.failureDetectionThreshold() :
+                long socketTimeout = spi.failureDetectionTimeoutEnabled() ? spi.failureDetectionTimeout() :
                     spi.getSocketTimeout();
 
                 while (!isInterrupted()) {
@@ -4702,7 +4702,7 @@ class ServerImpl extends TcpDiscoveryImpl {
 
             TcpDiscoverySpiState state = spiStateCopy();
 
-            long socketTimeout = spi.failureDetectionThresholdEnabled() ? spi.failureDetectionThreshold() :
+            long socketTimeout = spi.failureDetectionTimeoutEnabled() ? spi.failureDetectionTimeout() :
                 spi.getSocketTimeout();
 
             if (state == CONNECTED) {
@@ -4886,8 +4886,8 @@ class ServerImpl extends TcpDiscoveryImpl {
                             log.debug("Sending message ack to client [sock=" + sock + ", locNodeId="
                                 + getLocalNodeId() + ", rmtNodeId=" + clientNodeId + ", msg=" + msg + ']');
 
-                        writeToSocket(sock, msg, spi.failureDetectionThresholdEnabled() ?
-                            spi.failureDetectionThreshold() : spi.getSocketTimeout());
+                        writeToSocket(sock, msg, spi.failureDetectionTimeoutEnabled() ?
+                            spi.failureDetectionTimeout() : spi.getSocketTimeout());
                     }
                 }
                 else {
@@ -4898,8 +4898,8 @@ class ServerImpl extends TcpDiscoveryImpl {
 
                         prepareNodeAddedMessage(msg, clientNodeId, null, null);
 
-                        writeToSocket(sock, msg, spi.failureDetectionThresholdEnabled() ?
-                            spi.failureDetectionThreshold() : spi.getSocketTimeout());
+                        writeToSocket(sock, msg, spi.failureDetectionTimeoutEnabled() ?
+                            spi.failureDetectionTimeout() : spi.getSocketTimeout());
                     }
                     finally {
                         clearNodeAddedMessage(msg);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index be042eb..6130bd7 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -66,15 +66,17 @@ import java.util.concurrent.atomic.*;
  * and issues node added messages and all other nodes then receive info about new node.
  * <h1 class="header">Failure Detection</h1>
  * Configuration defaults (see Configuration section below and
- * {@link IgniteConfiguration#getFailureDetectionThreshold()}) for details) are chosen to make possible for discovery
+ * {@link IgniteConfiguration#getFailureDetectionTimeout()}) for details) are chosen to make possible for discovery
  * SPI work reliably on most of hardware and virtual deployments, but this has made failure detection time worse.
  * <p>
  * If it's needed to tune failure detection then it's highly recommended to do this using
- * {@link IgniteConfiguration#setFailureDetectionThreshold(long)}. This is the easiest and most straightforward way
- * to setup failure detection basing on network conditions of a cluster.
+ * {@link IgniteConfiguration#setFailureDetectionTimeout(long)}. This failure timeout automatically controls the
+ * following parameters: {@link #getSocketTimeout()}, {@link #getAckTimeout()}, {@link #getMaxAckTimeout()},
+ * {@link #getReconnectCount()}. If any of those parameters is set explicitly, then the failure timeout setting will be
+ * ignored.
  * <p>
  * If it's required to perform advanced settings of failure detection and
- * {@link IgniteConfiguration#getFailureDetectionThreshold()} is unsuitable then various {@code TcpDiscoverySpi}
+ * {@link IgniteConfiguration#getFailureDetectionTimeout()} is unsuitable then various {@code TcpDiscoverySpi}
  * configuration parameters may be used. As an example, for stable low-latency networks the following more aggressive
  * settings are recommended (which allows failure detection time ~200ms):
  * <ul>
@@ -163,13 +165,13 @@ import java.util.concurrent.atomic.*;
 @DiscoverySpiOrderSupport(true)
 @DiscoverySpiHistorySupport(true)
 public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, TcpDiscoverySpiMBean {
-    /** Failure detection threshold feature major version. */
+    /** Failure detection timeout feature major version. */
     final static byte FAILURE_DETECTION_MAJOR_VER = 1;
 
-    /** Failure detection threshold feature minor version. */
+    /** Failure detection timeout feature minor version. */
     final static byte FAILURE_DETECTION_MINOR_VER = 4;
 
-    /** Failure detection threshold feature maintainance version. */
+    /** Failure detection timeout feature maintainance version. */
     final static byte FAILURE_DETECTION_MAINT_VER = 1;
 
     /** Node attribute that is mapped to node's external addresses (value is <tt>disc.tcp.ext-addrs</tt>). */
@@ -537,7 +539,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
      * <p>
      * If not specified, default is {@link #DFLT_RECONNECT_CNT}.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param reconCnt Number of retries during message sending.
      * @see #setAckTimeout(long)
@@ -546,7 +548,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
     public TcpDiscoverySpi setReconnectCount(int reconCnt) {
         this.reconCnt = reconCnt;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
 
         return this;
     }
@@ -568,7 +570,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
      * <p>
      * Affected server nodes only.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param maxAckTimeout Maximum acknowledgement timeout.
      */
@@ -576,7 +578,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
     public TcpDiscoverySpi setMaxAckTimeout(long maxAckTimeout) {
         this.maxAckTimeout = maxAckTimeout;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
 
         return this;
     }
@@ -745,7 +747,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
      * <p>
      * If not specified, default is {@link #DFLT_SOCK_TIMEOUT} or {@link #DFLT_SOCK_TIMEOUT_CLIENT}.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param sockTimeout Socket connection timeout.
      */
@@ -753,7 +755,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
     public TcpDiscoverySpi setSocketTimeout(long sockTimeout) {
         this.sockTimeout = sockTimeout;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
 
         return this;
     }
@@ -766,7 +768,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
      * <p>
      * If not specified, default is {@link #DFLT_ACK_TIMEOUT} or {@link #DFLT_ACK_TIMEOUT_CLIENT}.
      * <p>
-     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionThreshold()} is ignored.
+     * When this property is explicitly set {@link IgniteConfiguration#getFailureDetectionTimeout()} is ignored.
      *
      * @param ackTimeout Acknowledgement timeout.
      */
@@ -774,7 +776,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
     public TcpDiscoverySpi setAckTimeout(long ackTimeout) {
         this.ackTimeout = ackTimeout;
 
-        failureDetectionThresholdEnabled(false);
+        failureDetectionTimeoutEnabled(false);
 
         return this;
     }
@@ -1616,7 +1618,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
 
     /** {@inheritDoc} */
     @Override public void spiStart(@Nullable String gridName) throws IgniteSpiException {
-        initFailureDetectionThreshold();
+        initFailureDetectionTimeout();
 
         if (!forceSrvMode && (Boolean.TRUE.equals(ignite.configuration().isClientMode()))) {
             if (ackTimeout == 0)
@@ -1639,7 +1641,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
             impl = new ServerImpl(this);
         }
 
-        if (!failureDetectionThresholdEnabled()) {
+        if (!failureDetectionTimeoutEnabled()) {
             assertParameter(sockTimeout > 0, "sockTimeout > 0");
             assertParameter(ackTimeout > 0, "ackTimeout > 0");
             assertParameter(maxAckTimeout > ackTimeout, "maxAckTimeout > ackTimeout");
@@ -1672,10 +1674,9 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
             log.debug(configInfo("localPortRange", locPortRange));
             log.debug(configInfo("threadPri", threadPri));
 
-            if (!failureDetectionThresholdEnabled()) {
-                log.debug("Failure detection threshold is disabled and connection check frequency is ignored because " +
-                    "at least one of the parameters from this list has been set manually: 'networkTimeout'," +
-                    " 'sockTimeout', 'ackTimeout', 'maxAckTimeout', 'reconnectCount'.");
+            if (!failureDetectionTimeoutEnabled()) {
+                log.debug("Failure detection timeout is ignored because at least one of the parameters from this list" +
+                    " has been set explicitly: 'sockTimeout', 'ackTimeout', 'maxAckTimeout', 'reconnectCount'.");
 
                 log.debug(configInfo("networkTimeout", netTimeout));
                 log.debug(configInfo("sockTimeout", sockTimeout));
@@ -1684,7 +1685,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
                 log.debug(configInfo("reconnectCount", reconCnt));
             }
             else
-                log.debug(configInfo("failureDetectionThreshold", failureDetectionThreshold()));
+                log.debug(configInfo("failureDetectionTimeout", failureDetectionTimeout()));
 
             log.debug(configInfo("ipFinder", ipFinder));
             log.debug(configInfo("ipFinderCleanFreq", ipFinderCleanFreq));
@@ -1694,7 +1695,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
         }
 
         // Warn on odd network timeout.
-        if (!failureDetectionThresholdEnabled() && netTimeout < 3000)
+        if (netTimeout < 3000)
             U.warn(log, "Network timeout is too low (at least 3000 ms recommended): " + netTimeout);
 
         registerMBean(gridName, this, TcpDiscoverySpiMBean.class);
@@ -1898,9 +1899,9 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements DiscoverySpi, T
                 U.closeQuiet(sock);
 
                 LT.warn(log, null, "Socket write has timed out (consider increasing " +
-                    (failureDetectionThresholdEnabled() ?
-                    "'IgniteConfiguration.failureDetectionThreshold' configuration property) [" +
-                    "failureDetectionThreshold=" + failureDetectionThreshold() + ']' :
+                    (failureDetectionTimeoutEnabled() ?
+                    "'IgniteConfiguration.failureDetectionTimeout' configuration property) [" +
+                    "failureDetectionTimeout=" + failureDetectionTimeout() + ']' :
                     "'sockTimeout' configuration property) [sockTimeout=" + sockTimeout + ']'));
 
                 stats.onSocketTimeout();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java
index 514f784..b4090d0 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java
@@ -166,7 +166,7 @@ public class GridTcpCommunicationSpiRecoveryAckSelfTest<T extends CommunicationS
                                 @Override public boolean apply() {
                                     return recoveryDesc.messagesFutures().isEmpty();
                                 }
-                            }, spi.failureDetectionThresholdEnabled() ? spi.failureDetectionThreshold() + 7000 :
+                            }, spi.failureDetectionTimeoutEnabled() ? spi.failureDetectionTimeout() + 7000 :
                                 10_000);
 
                             assertEquals("Unexpected messages: " + recoveryDesc.messagesFutures(), 0,

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest.java
index 7d10316..a6bfe00 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest.java
@@ -39,7 +39,7 @@ public class GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest extends Gri
 
     /** {@inheritDoc} */
     @Override protected long awaitForSocketWriteTimeout() {
-        return IgniteConfiguration.DFLT_FAILURE_DETECTION_THRESHOLD + 5_000;
+        return IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT + 5_000;
     }
 
     /**
@@ -47,8 +47,8 @@ public class GridTcpCommunicationSpiRecoveryFailureDetectionSelfTest extends Gri
      */
     public void testFailureDetectionEnabled() throws Exception {
         for (TcpCommunicationSpi spi: spis) {
-            assertTrue(spi.failureDetectionThresholdEnabled());
-            assertTrue(spi.failureDetectionThreshold() == IgniteConfiguration.DFLT_FAILURE_DETECTION_THRESHOLD);
+            assertTrue(spi.failureDetectionTimeoutEnabled());
+            assertTrue(spi.failureDetectionTimeout() == IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiTcpFailureDetectionSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiTcpFailureDetectionSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiTcpFailureDetectionSelfTest.java
index a525107..56873d1 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiTcpFailureDetectionSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiTcpFailureDetectionSelfTest.java
@@ -64,12 +64,12 @@ public class GridTcpCommunicationSpiTcpFailureDetectionSelfTest extends GridTcpC
      * @throws Exception if failed.
      */
     public void testFailureDetectionEnabled() throws Exception {
-        assertTrue(spis[0].failureDetectionThresholdEnabled());
-        assertTrue(spis[0].failureDetectionThreshold() == IgniteConfiguration.DFLT_FAILURE_DETECTION_THRESHOLD);
+        assertTrue(spis[0].failureDetectionTimeoutEnabled());
+        assertTrue(spis[0].failureDetectionTimeout() == IgniteConfiguration.DFLT_FAILURE_DETECTION_TIMEOUT);
 
         for (int i = 1; i < SPI_COUNT; i++) {
-            assertFalse(spis[i].failureDetectionThresholdEnabled());
-            assertEquals(0, spis[i].failureDetectionThreshold());
+            assertFalse(spis[i].failureDetectionTimeoutEnabled());
+            assertEquals(0, spis[i].failureDetectionTimeout());
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureThresholdSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureThresholdSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureThresholdSelfTest.java
deleted file mode 100644
index 84a11cd..0000000
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureThresholdSelfTest.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.spi.discovery.tcp;
-
-import org.apache.ignite.*;
-import org.apache.ignite.internal.util.typedef.*;
-import org.apache.ignite.spi.discovery.tcp.messages.*;
-import org.jetbrains.annotations.*;
-
-import java.io.*;
-import java.net.*;
-
-/**
- * Client-based discovery SPI test with failure detection threshold enabled.
- */
-public class TcpClientDiscoverySpiFailureThresholdSelfTest extends TcpClientDiscoverySpiSelfTest {
-    /** */
-    private final static int FAILURE_AWAIT_TIME = 7_000;
-
-    /** */
-    private final static long FAILURE_THRESHOLD = 10_000;
-
-    /** */
-    private static long failureThreshold = FAILURE_THRESHOLD;
-
-    /** */
-    private static boolean useTestSpi;
-
-    /** {@inheritDoc} */
-    @Override protected boolean useFailureDetectionThreshold() {
-        return true;
-    }
-
-    /** {@inheritDoc} */
-    @Override protected long failureDetectionThreshold() {
-        return failureThreshold;
-    }
-
-    /** {@inheritDoc} */
-    @Override protected long awaitTime() {
-        return failureDetectionThreshold() + FAILURE_AWAIT_TIME;
-    }
-
-    /** {@inheritDoc} */
-    @Override protected TcpDiscoverySpi getDiscoverySpi() {
-        return useTestSpi ? new TestTcpDiscoverySpi() : super.getDiscoverySpi();
-    }
-
-    /**
-     * @throws Exception in case of error.
-     */
-    public void testFailureDetectionThresholdEnabled() throws Exception {
-        startServerNodes(1);
-        startClientNodes(1);
-
-        checkNodes(1, 1);
-
-        assertTrue(((TcpDiscoverySpi)(G.ignite("server-0").configuration().getDiscoverySpi())).
-            failureDetectionThresholdEnabled());
-        assertEquals(failureDetectionThreshold(),
-            ((TcpDiscoverySpi)(G.ignite("server-0").configuration().getDiscoverySpi())).failureDetectionThreshold());
-
-        assertTrue(((TcpDiscoverySpi)(G.ignite("client-0").configuration().getDiscoverySpi())).
-            failureDetectionThresholdEnabled());
-        assertEquals(failureDetectionThreshold(),
-            ((TcpDiscoverySpi)(G.ignite("client-0").configuration().getDiscoverySpi())).failureDetectionThreshold());
-    }
-
-    /**
-     * @throws Exception in case of error.
-     */
-    public void testFailureThresholdWorkabilityAvgTimeout() throws Exception {
-        failureThreshold = 3000;
-
-        try {
-            checkFailureThresholdWorkability();
-        }
-        finally {
-            failureThreshold = FAILURE_THRESHOLD;
-        }
-    }
-
-    /**
-     * @throws Exception in case of error.
-     */
-    public void testFailureThresholdWorkabilitySmallTimeout() throws Exception {
-        failureThreshold = 500;
-
-        try {
-            checkFailureThresholdWorkability();
-        }
-        finally {
-            failureThreshold = FAILURE_THRESHOLD;
-        }
-    }
-
-    /**
-     * @throws Exception in case of error.
-     */
-    private void checkFailureThresholdWorkability() throws Exception {
-        useTestSpi = true;
-
-        TestTcpDiscoverySpi firstSpi = null;
-        TestTcpDiscoverySpi secondSpi = null;
-
-        try {
-            startServerNodes(2);
-
-            checkNodes(2, 0);
-
-            firstSpi = (TestTcpDiscoverySpi)(G.ignite("server-0").configuration().getDiscoverySpi());
-            secondSpi = (TestTcpDiscoverySpi)(G.ignite("server-1").configuration().getDiscoverySpi());
-
-            assert firstSpi.err == null;
-
-            secondSpi.readDelay = failureDetectionThreshold() + 5000;
-
-            assertFalse(firstSpi.pingNode(secondSpi.getLocalNodeId()));
-
-            Thread.sleep(failureDetectionThreshold());
-
-            assertTrue(firstSpi.err != null && X.hasCause(firstSpi.err, SocketTimeoutException.class));
-
-            firstSpi.reset();
-            secondSpi.reset();
-
-            assertTrue(firstSpi.pingNode(secondSpi.getLocalNodeId()));
-
-            assertTrue(firstSpi.err == null);
-        }
-        finally {
-            useTestSpi = false;
-
-            if (firstSpi != null)
-                firstSpi.reset();
-
-            if (secondSpi != null)
-                secondSpi.reset();
-        }
-    }
-
-    /**
-     *
-     */
-    private static class TestTcpDiscoverySpi extends TcpDiscoverySpi {
-        /** */
-        private long readDelay;
-
-        /** */
-        private Exception err;
-
-        /** {@inheritDoc} */
-        @Override protected <T> T readMessage(Socket sock, @Nullable InputStream in, long timeout)
-            throws IOException, IgniteCheckedException {
-
-            if (readDelay < failureDetectionThreshold()) {
-                try {
-                    return super.readMessage(sock, in, timeout);
-                }
-                catch (Exception e) {
-                    err = e;
-
-                    throw e;
-                }
-            }
-            else {
-                T msg = super.readMessage(sock, in, timeout);
-
-                if (msg instanceof TcpDiscoveryPingRequest) {
-                    try {
-                        Thread.sleep(2000);
-                    } catch (InterruptedException e) {
-                        // Ignore
-                    }
-                    throw new SocketTimeoutException("Forced timeout");
-                }
-
-                return msg;
-            }
-        }
-
-        /**
-         * Resets testing state.
-         */
-        private void reset() {
-            readDelay = 0;
-            err = null;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
new file mode 100644
index 0000000..3cf44f2
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
@@ -0,0 +1,205 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.spi.discovery.tcp;
+
+import org.apache.ignite.*;
+import org.apache.ignite.internal.util.typedef.*;
+import org.apache.ignite.spi.discovery.tcp.messages.*;
+import org.jetbrains.annotations.*;
+
+import java.io.*;
+import java.net.*;
+
+/**
+ * Client-based discovery SPI test with failure detection timeout enabled.
+ */
+public class TcpClientDiscoverySpiFailureTimeoutSelfTest extends TcpClientDiscoverySpiSelfTest {
+    /** */
+    private final static int FAILURE_AWAIT_TIME = 7_000;
+
+    /** */
+    private final static long FAILURE_THRESHOLD = 10_000;
+
+    /** */
+    private static long failureThreshold = FAILURE_THRESHOLD;
+
+    /** */
+    private static boolean useTestSpi;
+
+    /** {@inheritDoc} */
+    @Override protected boolean useFailureDetectionTimeout() {
+        return true;
+    }
+
+    /** {@inheritDoc} */
+    @Override protected long failureDetectionTimeout() {
+        return failureThreshold;
+    }
+
+    /** {@inheritDoc} */
+    @Override protected long awaitTime() {
+        return failureDetectionTimeout() + FAILURE_AWAIT_TIME;
+    }
+
+    /** {@inheritDoc} */
+    @Override protected TcpDiscoverySpi getDiscoverySpi() {
+        return useTestSpi ? new TestTcpDiscoverySpi() : super.getDiscoverySpi();
+    }
+
+    /**
+     * @throws Exception in case of error.
+     */
+    public void testFailureDetectionTimeoutEnabled() throws Exception {
+        startServerNodes(1);
+        startClientNodes(1);
+
+        checkNodes(1, 1);
+
+        assertTrue(((TcpDiscoverySpi)(G.ignite("server-0").configuration().getDiscoverySpi())).
+                failureDetectionTimeoutEnabled());
+        assertEquals(failureDetectionTimeout(),
+            ((TcpDiscoverySpi)(G.ignite("server-0").configuration().getDiscoverySpi())).failureDetectionTimeout());
+
+        assertTrue(((TcpDiscoverySpi)(G.ignite("client-0").configuration().getDiscoverySpi())).
+                failureDetectionTimeoutEnabled());
+        assertEquals(failureDetectionTimeout(),
+            ((TcpDiscoverySpi)(G.ignite("client-0").configuration().getDiscoverySpi())).failureDetectionTimeout());
+    }
+
+    /**
+     * @throws Exception in case of error.
+     */
+    public void testFailureTimeoutWorkabilityAvgTimeout() throws Exception {
+        failureThreshold = 3000;
+
+        try {
+            checkFailureThresholdWorkability();
+        }
+        finally {
+            failureThreshold = FAILURE_THRESHOLD;
+        }
+    }
+
+    /**
+     * @throws Exception in case of error.
+     */
+    public void testFailureTimeoutWorkabilitySmallTimeout() throws Exception {
+        failureThreshold = 500;
+
+        try {
+            checkFailureThresholdWorkability();
+        }
+        finally {
+            failureThreshold = FAILURE_THRESHOLD;
+        }
+    }
+
+    /**
+     * @throws Exception in case of error.
+     */
+    private void checkFailureThresholdWorkability() throws Exception {
+        useTestSpi = true;
+
+        TestTcpDiscoverySpi firstSpi = null;
+        TestTcpDiscoverySpi secondSpi = null;
+
+        try {
+            startServerNodes(2);
+
+            checkNodes(2, 0);
+
+            firstSpi = (TestTcpDiscoverySpi)(G.ignite("server-0").configuration().getDiscoverySpi());
+            secondSpi = (TestTcpDiscoverySpi)(G.ignite("server-1").configuration().getDiscoverySpi());
+
+            assert firstSpi.err == null;
+
+            secondSpi.readDelay = failureDetectionTimeout() + 5000;
+
+            assertFalse(firstSpi.pingNode(secondSpi.getLocalNodeId()));
+
+            Thread.sleep(failureDetectionTimeout());
+
+            assertTrue(firstSpi.err != null && X.hasCause(firstSpi.err, SocketTimeoutException.class));
+
+            firstSpi.reset();
+            secondSpi.reset();
+
+            assertTrue(firstSpi.pingNode(secondSpi.getLocalNodeId()));
+
+            assertTrue(firstSpi.err == null);
+        }
+        finally {
+            useTestSpi = false;
+
+            if (firstSpi != null)
+                firstSpi.reset();
+
+            if (secondSpi != null)
+                secondSpi.reset();
+        }
+    }
+
+    /**
+     *
+     */
+    private static class TestTcpDiscoverySpi extends TcpDiscoverySpi {
+        /** */
+        private long readDelay;
+
+        /** */
+        private Exception err;
+
+        /** {@inheritDoc} */
+        @Override protected <T> T readMessage(Socket sock, @Nullable InputStream in, long timeout)
+            throws IOException, IgniteCheckedException {
+
+            if (readDelay < failureDetectionTimeout()) {
+                try {
+                    return super.readMessage(sock, in, timeout);
+                }
+                catch (Exception e) {
+                    err = e;
+
+                    throw e;
+                }
+            }
+            else {
+                T msg = super.readMessage(sock, in, timeout);
+
+                if (msg instanceof TcpDiscoveryPingRequest) {
+                    try {
+                        Thread.sleep(2000);
+                    } catch (InterruptedException e) {
+                        // Ignore
+                    }
+                    throw new SocketTimeoutException("Forced timeout");
+                }
+
+                return msg;
+            }
+        }
+
+        /**
+         * Resets testing state.
+         */
+        private void reset() {
+            readDelay = 0;
+            err = null;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
index 7e1f415..69a5f13 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
@@ -154,8 +154,8 @@ public class TcpClientDiscoverySpiSelfTest extends GridCommonAbstractTest {
         else
             throw new IllegalArgumentException();
 
-        if (useFailureDetectionThreshold())
-            cfg.setFailureDetectionThreshold(failureDetectionThreshold());
+        if (useFailureDetectionTimeout())
+            cfg.setFailureDetectionTimeout(failureDetectionTimeout());
         else {
             if (longSockTimeouts) {
                 disco.setAckTimeout(2000);
@@ -224,20 +224,20 @@ public class TcpClientDiscoverySpiSelfTest extends GridCommonAbstractTest {
     }
 
     /**
-     * Checks whether to use failure detection threshold instead of setting explicit timeouts.
+     * Checks whether to use failure detection timeout instead of setting explicit timeouts.
      *
      * @return {@code true} if use.
      */
-    protected boolean useFailureDetectionThreshold() {
+    protected boolean useFailureDetectionTimeout() {
         return false;
     }
 
     /**
-     * Gets failure detection threshold to use.
+     * Gets failure detection timeout to use.
      *
-     * @return Failure detection threshold.
+     * @return Failure detection timeout.
      */
-    protected long failureDetectionThreshold() {
+    protected long failureDetectionTimeout() {
         return 0;
     }
 
@@ -457,7 +457,7 @@ public class TcpClientDiscoverySpiSelfTest extends GridCommonAbstractTest {
         Ignite srv1 = G.ignite("server-1");
         Ignite client = G.ignite("client-0");
 
-        if (!useFailureDetectionThreshold())
+        if (!useFailureDetectionTimeout())
             ((TcpDiscoverySpi)srv0.configuration().getDiscoverySpi()).setAckTimeout(1000);
 
         ((TestTcpDiscoverySpi)client.configuration().getDiscoverySpi()).pauseSocketWrite();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31ab0dd3/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureThresholdSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureThresholdSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureThresholdSelfTest.java
deleted file mode 100644
index 63e79c3..0000000
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureThresholdSelfTest.java
+++ /dev/null
@@ -1,400 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.spi.discovery.tcp;
-
-import org.apache.ignite.*;
-import org.apache.ignite.cluster.*;
-import org.apache.ignite.configuration.*;
-import org.apache.ignite.internal.util.io.*;
-import org.apache.ignite.lang.*;
-import org.apache.ignite.spi.*;
-import org.apache.ignite.spi.discovery.*;
-import org.apache.ignite.spi.discovery.tcp.internal.*;
-import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
-import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
-import org.apache.ignite.spi.discovery.tcp.messages.*;
-
-import java.io.*;
-import java.net.*;
-
-/**
- *
- */
-public class TcpDiscoverySpiFailureThresholdSelfTest extends AbstractDiscoverySelfTest {
-    /** */
-    private static final int SPI_COUNT = 6;
-
-    /** */
-    private TcpDiscoveryIpFinder ipFinder =  new TcpDiscoveryVmIpFinder(true);
-
-    /** {@inheritDoc} */
-    @Override protected int getSpiCount() {
-        return SPI_COUNT;
-    }
-
-    /** {@inheritDoc} */
-    @Override protected DiscoverySpi getSpi(int idx) {
-        TestTcpDiscoverySpi spi = new TestTcpDiscoverySpi();
-
-        spi.setMetricsProvider(createMetricsProvider());
-        spi.setIpFinder(ipFinder);
-
-        switch (idx) {
-            case 0:
-            case 1:
-                // Ignore
-                break;
-            case 2:
-                spi.setAckTimeout(3000);
-                break;
-            case 3:
-                spi.setSocketTimeout(4000);
-                break;
-            case 4:
-                spi.setReconnectCount(4);
-                break;
-            case 5:
-                spi.setMaxAckTimeout(10000);
-                break;
-            default:
-                assert false;
-        }
-
-        return spi;
-    }
-
-    /**
-     * @throws Exception In case of error.
-     */
-    public void testFailureDetectionThresholdEnabled() throws Exception {
-        assertTrue(firstSpi().failureDetectionThresholdEnabled());
-        assertTrue(secondSpi().failureDetectionThresholdEnabled());
-
-        assertEquals(IgniteConfiguration.DFLT_FAILURE_DETECTION_THRESHOLD, firstSpi().failureDetectionThreshold());
-        assertEquals(IgniteConfiguration.DFLT_FAILURE_DETECTION_THRESHOLD, secondSpi().failureDetectionThreshold());
-    }
-
-    /**
-     * @throws Exception In case of error.
-     */
-    public void testFailureDetectionThresholdDisabled() throws Exception {
-        for (int i = 2; i < spis.size(); i++) {
-            assertFalse(((TcpDiscoverySpi)spis.get(i)).failureDetectionThresholdEnabled());
-            assertEquals(0, ((TcpDiscoverySpi)spis.get(i)).failureDetectionThreshold());
-        }
-    }
-
-    /**
-     * @throws Exception In case of error.
-     */
-    public void testFailureDetectionOnSocketOpen() throws Exception {
-        try {
-            ClusterNode node = secondSpi().getLocalNode();
-
-            firstSpi().openSocketTimeout = true;
-
-            assertFalse(firstSpi().pingNode(node.id()));
-            assertTrue(firstSpi().validTimeout);
-            assertTrue(firstSpi().err.getMessage().equals("Timeout: openSocketTimeout"));
-
-            firstSpi().openSocketTimeout = false;
-            firstSpi().openSocketTimeoutWait = true;
-
-            assertFalse(firstSpi().pingNode(node.id()));
-            assertTrue(firstSpi().validTimeout);
-            assertTrue(firstSpi().err.getMessage().equals("Timeout: openSocketTimeoutWait"));
-        }
-        finally {
-            firstSpi().resetState();
-        }
-    }
-
-
-    /**
-     * @throws Exception In case of error.
-     */
-    public void testFailureDetectionOnSocketWrite() throws Exception {
-        try {
-            ClusterNode node = secondSpi().getLocalNode();
-
-            firstSpi().writeToSocketTimeoutWait = true;
-
-            assertFalse(firstSpi().pingNode(node.id()));
-            assertTrue(firstSpi().validTimeout);
-
-            firstSpi().writeToSocketTimeoutWait = false;
-
-            assertTrue(firstSpi().pingNode(node.id()));
-            assertTrue(firstSpi().validTimeout);
-        }
-        finally {
-            firstSpi().resetState();
-        }
-    }
-
-    /**
-     * @throws Exception In case of error.
-     */
-    public void testConnectionCheckMessage() throws Exception {
-        TestTcpDiscoverySpi nextSpi = null;
-
-        try {
-            assert firstSpi().connCheckStatusMsgCntSent == 0;
-
-            TcpDiscoveryNode nextNode = ((ServerImpl)(firstSpi().impl)).ring().nextNode();
-
-            assertNotNull(nextNode);
-
-            nextSpi = null;
-
-            for (int i = 1; i < spis.size(); i++)
-                if (spis.get(i).getLocalNode().id().equals(nextNode.id())) {
-                    nextSpi = (TestTcpDiscoverySpi)spis.get(i);
-                    break;
-                }
-
-            assertNotNull(nextSpi);
-
-            assert nextSpi.connCheckStatusMsgCntReceived == 0;
-
-            firstSpi().countConnCheckMsg = true;
-            nextSpi.countConnCheckMsg = true;
-
-            Thread.sleep(firstSpi().failureDetectionThreshold());
-
-            firstSpi().countConnCheckMsg = false;
-            nextSpi.countConnCheckMsg = false;
-
-            int sent = firstSpi().connCheckStatusMsgCntSent;
-            int received = nextSpi.connCheckStatusMsgCntReceived;
-
-            assert sent >= 3 && sent < 7 : "messages sent: " + sent;
-            assert received >= 3 && received < 7 : "messages received: " + received;
-        }
-        finally {
-            firstSpi().resetState();
-
-            if (nextSpi != null)
-                nextSpi.resetState();
-        }
-    }
-
-    /**
-     * @throws Exception In case of error.
-     */
-    public void testConnectionCheckMessageBackwardCompatibility() throws Exception {
-        TestTcpDiscoverySpi nextSpi = null;
-        TcpDiscoveryNode nextNode = null;
-
-        IgniteProductVersion nextNodeVer = null;
-
-        try {
-            assert firstSpi().connCheckStatusMsgCntSent == 0;
-
-            nextNode = ((ServerImpl)(firstSpi().impl)).ring().nextNode();
-
-            assertNotNull(nextNode);
-
-            nextSpi = null;
-
-            for (int i = 1; i < spis.size(); i++)
-                if (spis.get(i).getLocalNode().id().equals(nextNode.id())) {
-                    nextSpi = (TestTcpDiscoverySpi)spis.get(i);
-                    break;
-                }
-
-            assertNotNull(nextSpi);
-
-            assert nextSpi.connCheckStatusMsgCntReceived == 0;
-
-            nextNodeVer = nextNode.version();
-
-            // Overriding the version of the next node. Connection check message must not been sent to it.
-            nextNode.version(new IgniteProductVersion(TcpDiscoverySpi.FAILURE_DETECTION_MAJOR_VER,
-                (byte)(TcpDiscoverySpi.FAILURE_DETECTION_MINOR_VER - 1), TcpDiscoverySpi.FAILURE_DETECTION_MAINT_VER,
-                0l, null));
-
-            firstSpi().countConnCheckMsg = true;
-            nextSpi.countConnCheckMsg = true;
-
-            Thread.sleep(firstSpi().failureDetectionThreshold() / 2);
-
-            firstSpi().countConnCheckMsg = false;
-            nextSpi.countConnCheckMsg = false;
-
-            int sent = firstSpi().connCheckStatusMsgCntSent;
-            int received = nextSpi.connCheckStatusMsgCntReceived;
-
-            assert sent == 0 : "messages sent: " + sent;
-            assert received == 0 : "messages received: " + received;
-        }
-        finally {
-            firstSpi().resetState();
-
-            if (nextSpi != null)
-                nextSpi.resetState();
-
-            if (nextNode != null && nextNodeVer != null)
-                nextNode.version(nextNodeVer);
-        }
-    }
-
-    /**
-     * Returns the first spi with failure detection threshold enabled.
-     *
-     * @return SPI.
-     */
-    private TestTcpDiscoverySpi firstSpi() {
-        return (TestTcpDiscoverySpi)spis.get(0);
-    }
-
-
-    /**
-     * Returns the second spi with failure detection threshold enabled.
-     *
-     * @return SPI.
-     */
-    private TestTcpDiscoverySpi secondSpi() {
-        return (TestTcpDiscoverySpi)spis.get(1);
-    }
-
-    /**
-     *
-     */
-    private static class TestTcpDiscoverySpi extends TcpDiscoverySpi {
-        /** */
-        private volatile boolean openSocketTimeout;
-
-        /** */
-        private volatile boolean openSocketTimeoutWait;
-
-        /** */
-        private volatile boolean writeToSocketTimeoutWait;
-
-        /** */
-        private volatile boolean countConnCheckMsg;
-
-        /** */
-        private volatile int connCheckStatusMsgCntSent;
-
-        /** */
-        private volatile int connCheckStatusMsgCntReceived;
-
-        /** */
-        private volatile boolean validTimeout = true;
-
-        /** */
-        private volatile IgniteSpiOperationTimeoutException err;
-
-
-        /** {@inheritDoc} */
-        @Override protected Socket openSocket(InetSocketAddress sockAddr, IgniteSpiOperationTimeoutHelper timeoutHelper)
-            throws IOException, IgniteSpiOperationTimeoutException {
-
-            if (openSocketTimeout) {
-                err = new IgniteSpiOperationTimeoutException("Timeout: openSocketTimeout");
-                throw err;
-            }
-            else if (openSocketTimeoutWait) {
-                long timeout = timeoutHelper.nextTimeoutChunk(0);
-
-                try {
-                    Thread.sleep(timeout + 1000);
-                }
-                catch (InterruptedException e) {
-                    // Ignore
-                }
-
-                try {
-                    timeoutHelper.nextTimeoutChunk(0);
-                }
-                catch (IgniteSpiOperationTimeoutException e) {
-                    throw (err = new IgniteSpiOperationTimeoutException("Timeout: openSocketTimeoutWait"));
-                }
-            }
-
-            Socket sock = super.openSocket(sockAddr, timeoutHelper);
-
-            try {
-                Thread.sleep(1500);
-            } catch (InterruptedException e) {
-                // Ignore
-            }
-
-            return sock;
-        }
-
-        /** {@inheritDoc} */
-        @Override protected void writeToSocket(Socket sock, TcpDiscoveryAbstractMessage msg, long timeout)
-            throws IOException, IgniteCheckedException {
-            if (!(msg instanceof TcpDiscoveryPingRequest)) {
-                super.writeToSocket(sock, msg, timeout);
-                return;
-            }
-
-            if (timeout >= IgniteConfiguration.DFLT_FAILURE_DETECTION_THRESHOLD) {
-                validTimeout = false;
-
-                throw new IgniteCheckedException("Invalid timeout: " + timeout);
-            }
-
-            if (writeToSocketTimeoutWait) {
-                try {
-                    Thread.sleep(timeout);
-                }
-                catch (InterruptedException e) {
-                    // Ignore
-                }
-            }
-            else
-                super.writeToSocket(sock, msg, timeout);
-        }
-
-        /** {@inheritDoc} */
-        @Override protected void writeToSocket(Socket sock, TcpDiscoveryAbstractMessage msg,
-            GridByteArrayOutputStream bout, long timeout) throws IOException, IgniteCheckedException {
-            if (countConnCheckMsg && msg instanceof TcpDiscoveryConnectionCheckMessage)
-                connCheckStatusMsgCntSent++;
-
-            super.writeToSocket(sock, msg, bout, timeout);
-        }
-
-        /** {@inheritDoc} */
-        protected void writeToSocket(TcpDiscoveryAbstractMessage msg, Socket sock, int res, long timeout)
-            throws IOException {
-            if (countConnCheckMsg && msg instanceof TcpDiscoveryConnectionCheckMessage)
-                connCheckStatusMsgCntReceived++;
-
-            super.writeToSocket(msg, sock, res, timeout);
-        }
-
-        /**
-         *
-         */
-        private void resetState() {
-            openSocketTimeout = false;
-            openSocketTimeoutWait = false;
-            writeToSocketTimeoutWait = false;
-            err = null;
-            validTimeout = true;
-            connCheckStatusMsgCntSent = 0;
-            connCheckStatusMsgCntReceived = 0;
-            countConnCheckMsg = false;
-        }
-    }
-}



[12/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: db24c9925639266d3380bb44d1cdfac337b85d2c
Parents: e1b38fc 56e67e8
Author: avinogradov <av...@gridgain.com>
Authored: Thu May 14 17:56:01 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Thu May 14 17:56:01 2015 +0300

----------------------------------------------------------------------
 bin/ignite-schema-import.bat                    |   2 +-
 bin/ignite-schema-import.sh                     |   2 +-
 bin/ignite.bat                                  |   2 +-
 bin/ignite.sh                                   |   2 +-
 bin/ignitevisorcmd.bat                          |   2 +-
 bin/ignitevisorcmd.sh                           |   2 +-
 .../processors/cache/GridCacheAdapter.java      | 119 +++++------
 .../GridDistributedCacheAdapter.java            | 210 ++++++++++++-------
 .../GridDhtPartitionsExchangeFuture.java        |   2 +-
 .../processors/resource/GridResourceField.java  |   5 +-
 .../processors/resource/GridResourceIoc.java    |  20 +-
 .../resource/GridResourceProcessor.java         |  16 +-
 .../ignite/internal/util/IgniteUtils.java       |   3 +
 .../util/lang/GridComputeJobWrapper.java        |  96 ---------
 .../spi/discovery/tcp/TcpDiscoverySpi.java      |   2 -
 .../resources/META-INF/classnames.properties    |   1 -
 .../cache/CacheRemoveAllSelfTest.java           |  81 +++++++
 .../near/NoneRebalanceModeSelfTest.java         |  67 ++++++
 .../testsuites/IgniteCacheTestSuite2.java       |   1 +
 .../testsuites/IgniteCacheTestSuite4.java       |   2 +
 .../scalar/tests/ScalarCacheQueriesSpec.scala   | 154 +++++++-------
 .../ignite/scalar/tests/ScalarCacheSpec.scala   |  23 +-
 .../scalar/tests/ScalarConversionsSpec.scala    |  43 ++--
 .../scalar/tests/ScalarProjectionSpec.scala     | 128 ++++++-----
 .../scalar/tests/ScalarReturnableSpec.scala     |  41 ++--
 modules/visor-console/pom.xml                   |   2 +-
 .../ignite/visor/VisorRuntimeBaseSpec.scala     |   2 +-
 .../visor/commands/VisorArgListSpec.scala       |  60 +++---
 .../commands/VisorFileNameCompleterSpec.scala   |  34 +--
 .../commands/ack/VisorAckCommandSpec.scala      |  20 +-
 .../commands/alert/VisorAlertCommandSpec.scala  |  68 +++---
 .../cache/VisorCacheClearCommandSpec.scala      |  48 ++---
 .../commands/cache/VisorCacheCommandSpec.scala  |  66 +++---
 .../config/VisorConfigurationCommandSpec.scala  |   8 +-
 .../cswap/VisorCacheSwapCommandSpec.scala       |  24 +--
 .../deploy/VisorDeployCommandSpec.scala         |  10 +-
 .../disco/VisorDiscoveryCommandSpec.scala       |  46 ++--
 .../events/VisorEventsCommandSpec.scala         |  28 +--
 .../visor/commands/gc/VisorGcCommandSpec.scala  |  30 +--
 .../commands/help/VisorHelpCommandSpec.scala    |  57 ++---
 .../commands/kill/VisorKillCommandSpec.scala    |  58 ++---
 .../commands/log/VisorLogCommandSpec.scala      |  10 +-
 .../commands/mem/VisorMemoryCommandSpec.scala   |  77 +++----
 .../commands/node/VisorNodeCommandSpec.scala    |  22 +-
 .../commands/open/VisorOpenCommandSpec.scala    |  16 +-
 .../commands/ping/VisorPingCommandSpec.scala    |  16 +-
 .../commands/start/VisorStartCommandSpec.scala  | 126 +++++------
 .../commands/tasks/VisorTasksCommandSpec.scala  | 112 +++++-----
 .../commands/top/VisorTopologyCommandSpec.scala |  52 ++---
 .../commands/vvm/VisorVvmCommandSpec.scala      |  30 +--
 50 files changed, 1086 insertions(+), 962 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db24c992/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------


[05/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-5' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: 7daf90fafb3a0ef74a3463a925e50308cca74292
Parents: 4ceabaa 6f1d642
Author: avinogradov <av...@gridgain.com>
Authored: Tue May 5 20:26:42 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Tue May 5 20:26:42 2015 +0300

----------------------------------------------------------------------
 dev-tools/build.gradle                     | 15 +++++++--------
 dev-tools/src/main/groovy/jiraslurp.groovy | 15 +++++++--------
 2 files changed, 14 insertions(+), 16 deletions(-)
----------------------------------------------------------------------



[22/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-630'

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-630'


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

Branch: refs/heads/ignite-752
Commit: ed5d3ed1c03f062d29cfc53a35b6b35436859f28
Parents: 06b2504 80cec1b
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Thu Jul 23 18:47:00 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Thu Jul 23 18:47:00 2015 +0300

----------------------------------------------------------------------
 .../rest/protocols/tcp/MockNioSession.java      |  15 -
 .../cache/CacheEvictableEntryImpl.java          |   2 +-
 .../processors/cache/GridCacheAdapter.java      |  13 +-
 .../processors/cache/GridCacheEntryEx.java      |  32 +-
 .../cache/GridCacheEvictionManager.java         |  12 +-
 .../processors/cache/GridCacheMapEntry.java     | 208 +------------
 .../processors/cache/GridCacheUtils.java        |  18 +-
 .../extras/GridCacheAttributesEntryExtras.java  |  37 +--
 .../GridCacheAttributesMvccEntryExtras.java     |  35 +--
 ...dCacheAttributesMvccObsoleteEntryExtras.java |  35 +--
 ...cheAttributesMvccObsoleteTtlEntryExtras.java |  35 +--
 .../GridCacheAttributesMvccTtlEntryExtras.java  |  35 +--
 .../GridCacheAttributesObsoleteEntryExtras.java |  36 +--
 ...idCacheAttributesObsoleteTtlEntryExtras.java |  36 +--
 .../GridCacheAttributesTtlEntryExtras.java      |  36 +--
 .../cache/extras/GridCacheEntryExtras.java      |  14 -
 .../extras/GridCacheEntryExtrasAdapter.java     |   8 -
 .../cache/extras/GridCacheMvccEntryExtras.java  |   8 -
 .../GridCacheMvccObsoleteEntryExtras.java       |   8 -
 .../GridCacheMvccObsoleteTtlEntryExtras.java    |   9 -
 .../extras/GridCacheMvccTtlEntryExtras.java     |   8 -
 .../extras/GridCacheObsoleteEntryExtras.java    |   8 -
 .../extras/GridCacheObsoleteTtlEntryExtras.java |   9 -
 .../cache/extras/GridCacheTtlEntryExtras.java   |   8 -
 .../store/GridCacheStoreManagerAdapter.java     |   2 +-
 .../cache/transactions/IgniteInternalTx.java    |  16 +-
 .../cache/transactions/IgniteTxAdapter.java     |   6 +-
 .../util/lang/GridMetadataAwareAdapter.java     | 296 +++++++++----------
 .../cache/eviction/GridCacheMockEntry.java      |  12 +-
 .../nio/impl/GridNioFilterChainSelfTest.java    |  15 -
 .../GridMetadataAwareAdapterLoadSelfTest.java   | 135 +++++++++
 .../lang/GridMetadataAwareAdapterSelfTest.java  |  58 ++--
 32 files changed, 409 insertions(+), 796 deletions(-)
----------------------------------------------------------------------



[21/27] incubator-ignite git commit: fixed update checker on slow connection

Posted by sb...@apache.org.
fixed update checker on slow  connection


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

Branch: refs/heads/ignite-752
Commit: 06b2504570be3c639b41bf62eb828ad3a63d35e2
Parents: c4a4bd4
Author: Yakov Zhdanov <yz...@gridgain.com>
Authored: Thu Jul 23 18:28:21 2015 +0300
Committer: Yakov Zhdanov <yz...@gridgain.com>
Committed: Thu Jul 23 18:28:21 2015 +0300

----------------------------------------------------------------------
 .../src/main/java/org/apache/ignite/internal/IgniteKernal.java  | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/06b25045/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index d2f018a..3f340d1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -705,6 +705,11 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
                             // Just wait for 10 secs.
                             Thread.sleep(PERIODIC_VER_CHECK_CONN_TIMEOUT);
 
+                            // Just wait another 60 secs in order to get
+                            // version info even on slow connection.
+                            for (int i = 0; i < 60 && verChecker.latestVersion() == null; i++)
+                                Thread.sleep(1000);
+
                             // Report status if one is available.
                             // No-op if status is NOT available.
                             verChecker.reportStatus(log);


[14/27] incubator-ignite git commit: ignite-630

Posted by sb...@apache.org.
ignite-630


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

Branch: refs/heads/ignite-752
Commit: fd541fc3b4bc69befdba07dc9cadc7015fb00873
Parents: 9b99371
Author: avinogradov <av...@gridgain.com>
Authored: Thu May 14 19:04:47 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Thu May 14 19:04:47 2015 +0300

----------------------------------------------------------------------
 .../util/lang/GridMetadataAwareAdapter.java     | 70 +++++++-------------
 .../cache/eviction/GridCacheMockEntry.java      |  8 +--
 2 files changed, 27 insertions(+), 51 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fd541fc3/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
index b28a4d9..a67f83d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/lang/GridMetadataAwareAdapter.java
@@ -17,10 +17,8 @@
 
 package org.apache.ignite.internal.util.lang;
 
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.tostring.*;
 import org.apache.ignite.internal.util.typedef.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
 import org.jetbrains.annotations.*;
 
 import java.io.*;
@@ -38,16 +36,13 @@ public class GridMetadataAwareAdapter {
      */
     public enum EntryKey {//keys sorted by usage rate, descending.
         /** Predefined key. */
-        CACHE_EVICTABLE_ENTRY_KEY(0),
+        CACHE_STORE_MANAGER_KEY(0),
 
         /** Predefined key. */
-        CACHE_MOCK_ENTRY_KEY(1),
+        CACHE_EVICTABLE_ENTRY_KEY(1),
 
         /** Predefined key. */
-        CACHE_STORE_MANAGER_KEY(2),
-
-        /** Predefined key. */
-        CACHE_EVICTION_MANAGER_KEY(3);
+        CACHE_EVICTION_MANAGER_KEY(2);
 
         /** key. */
         private int key;
@@ -73,16 +68,6 @@ public class GridMetadataAwareAdapter {
     @GridToStringInclude
     private Object[] data = null;
 
-    /** Serializable mutex. */
-    private GridMutex mux;
-
-    /**
-     * Default constructor.
-     */
-    public GridMetadataAwareAdapter() {
-        mux = new GridMutex();
-    }
-
     /**
      * Copies all metadata from another instance.
      *
@@ -100,9 +85,9 @@ public class GridMetadataAwareAdapter {
      * @param data Map to copy metadata from.
      */
     public void copyMeta(Object[] data) {
-        A.notNull(data, "data");
+        assert data != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             if (this.data.length < data.length)
                 this.data = Arrays.copyOf(this.data, data.length);
 
@@ -123,9 +108,9 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     @Nullable public <V> V addMeta(int key, V val) {
-        A.notNull(key, "key", val, "val");
+        assert val != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             if (this.data == null)
                 this.data = new Object[key + 1];
             else if (this.data.length <= key)
@@ -148,9 +133,7 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     @Nullable public <V> V meta(int key) {
-        A.notNull(key, "key");
-
-        synchronized (mux) {
+        synchronized (this) {
             return data != null && data.length > key ? (V)data[key] : null;
         }
     }
@@ -164,9 +147,7 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     @Nullable public <V> V removeMeta(int key) {
-        A.notNull(key, "key");
-
-        synchronized (mux) {
+        synchronized (this) {
             if (data == null || data.length <= key)
                 return null;
 
@@ -188,9 +169,9 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     public <V> boolean removeMeta(int key, V val) {
-        A.notNull(key, "key", val, "val");
+        assert val != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             if (data == null || data.length <= key)
                 return false;
 
@@ -215,7 +196,7 @@ public class GridMetadataAwareAdapter {
     public <V> Object[] allMeta() {
         Object[] cp;
 
-        synchronized (mux) {
+        synchronized (this) {
             cp = Arrays.copyOf(data, data.length);
         }
 
@@ -226,7 +207,7 @@ public class GridMetadataAwareAdapter {
      * Removes all meta.
      */
     public void removeAllMeta() {
-        synchronized (mux) {
+        synchronized (this) {
             data = null;
         }
     }
@@ -248,8 +229,6 @@ public class GridMetadataAwareAdapter {
      * @return Whether or not given metadata is set.
      */
     public <V> boolean hasMeta(int key, V val) {
-        A.notNull(key, "key");
-
         Object v = meta(key);
 
         return v != null && v.equals(val);
@@ -265,9 +244,9 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     @Nullable public <V> V putMetaIfAbsent(int key, V val) {
-        A.notNull(key, "key", val, "val");
+        assert val != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             V v = (V)meta(key);
 
             if (v == null)
@@ -288,9 +267,9 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     public <V> V addMetaIfAbsent(int key, V val) {
-        A.notNull(key, "key", val, "val");
+        assert val != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             V v = (V)meta(key);
 
             if (v == null)
@@ -313,9 +292,9 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"unchecked"})
     @Nullable public <V> V addMetaIfAbsent(int key, @Nullable Callable<V> c) {
-        A.notNull(key, "key", c, "c");
+        assert c != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             V v = (V)meta(key);
 
             if (v == null && c != null)
@@ -341,9 +320,10 @@ public class GridMetadataAwareAdapter {
      */
     @SuppressWarnings({"RedundantTypeArguments"})
     public <V> boolean replaceMeta(int key, V curVal, V newVal) {
-        A.notNull(key, "key", newVal, "newVal", curVal, "curVal");
+        assert newVal != null;
+        assert curVal != null;
 
-        synchronized (mux) {
+        synchronized (this) {
             if (hasMeta(key)) {
                 V val = this.<V>meta(key);
 
@@ -370,7 +350,7 @@ public class GridMetadataAwareAdapter {
         Object[] cp;
 
         // Avoid code warning (suppressing is bad here, because we need this warning for other places).
-        synchronized (mux) {
+        synchronized (this) {
             cp = Arrays.copyOf(this.data, this.data.length);
         }
 
@@ -390,7 +370,7 @@ public class GridMetadataAwareAdapter {
     protected void readExternalMeta(ObjectInput in) throws IOException, ClassNotFoundException {
         Object[] cp = (Object[])in.readObject();
 
-        synchronized (mux) {
+        synchronized (this) {
             this.data = cp;
         }
     }
@@ -401,8 +381,6 @@ public class GridMetadataAwareAdapter {
         try {
             GridMetadataAwareAdapter clone = (GridMetadataAwareAdapter)super.clone();
 
-            clone.mux = (GridMutex)mux.clone();
-
             clone.copyMeta(this);
 
             return clone;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fd541fc3/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
index 2342ad0..989ad0a 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/eviction/GridCacheMockEntry.java
@@ -25,13 +25,12 @@ import org.jetbrains.annotations.*;
 
 import javax.cache.*;
 
-
 /**
  * Mock cache entry.
  */
 public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implements Cache.Entry<K, V>, EvictableEntry<K, V> {
     /** */
-    private static final int META_KEY = EntryKey.CACHE_MOCK_ENTRY_KEY.key();
+    private static final int META_KEY = EntryKey.values().length; //+1 to maximum value
 
     /** */
     @GridToStringInclude
@@ -82,7 +81,6 @@ public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implement
     }
 
     /**
-     *
      * @return Evicted or not.
      */
     public boolean isEvicted() {
@@ -116,12 +114,12 @@ public class GridCacheMockEntry<K, V> extends GridMetadataAwareAdapter implement
 
     /** {@inheritDoc} */
     @Override public <T> boolean replaceMeta(T curVal, T newVal) {
-        return replaceMeta(META_KEY,curVal, newVal);
+        return replaceMeta(META_KEY, curVal, newVal);
     }
 
     /** {@inheritDoc} */
     @Override public <T> T unwrap(Class<T> clazz) {
-        if(clazz.isAssignableFrom(getClass()))
+        if (clazz.isAssignableFrom(getClass()))
             return clazz.cast(this);
 
         throw new IllegalArgumentException();


[25/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/master' into ignite-752

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-752


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

Branch: refs/heads/ignite-752
Commit: e81867b6756677138f3efb10dd77a67ebfd2a0f0
Parents: f714fd0 ae148f1
Author: dmagda <ma...@gmail.com>
Authored: Fri Jul 24 13:49:17 2015 +0300
Committer: dmagda <ma...@gmail.com>
Committed: Fri Jul 24 13:49:17 2015 +0300

----------------------------------------------------------------------
 modules/clients/README.txt                      |  16 +
 modules/clients/readme.md                       |  32 --
 modules/clients/readme.pdf                      | Bin 47887 -> 0 bytes
 .../rest/protocols/tcp/MockNioSession.java      |  15 -
 .../store/jdbc/CacheJdbcBlobStoreFactory.java   |   2 +-
 .../apache/ignite/internal/IgniteKernal.java    |   5 +
 .../cache/CacheEvictableEntryImpl.java          |   2 +-
 .../processors/cache/GridCacheAdapter.java      |  13 +-
 .../processors/cache/GridCacheEntryEx.java      |  32 +-
 .../cache/GridCacheEvictionManager.java         |  12 +-
 .../processors/cache/GridCacheMapEntry.java     | 208 +------------
 .../processors/cache/GridCacheUtils.java        |  18 +-
 .../extras/GridCacheAttributesEntryExtras.java  |  37 +--
 .../GridCacheAttributesMvccEntryExtras.java     |  35 +--
 ...dCacheAttributesMvccObsoleteEntryExtras.java |  35 +--
 ...cheAttributesMvccObsoleteTtlEntryExtras.java |  35 +--
 .../GridCacheAttributesMvccTtlEntryExtras.java  |  35 +--
 .../GridCacheAttributesObsoleteEntryExtras.java |  36 +--
 ...idCacheAttributesObsoleteTtlEntryExtras.java |  36 +--
 .../GridCacheAttributesTtlEntryExtras.java      |  36 +--
 .../cache/extras/GridCacheEntryExtras.java      |  14 -
 .../extras/GridCacheEntryExtrasAdapter.java     |   8 -
 .../cache/extras/GridCacheMvccEntryExtras.java  |   8 -
 .../GridCacheMvccObsoleteEntryExtras.java       |   8 -
 .../GridCacheMvccObsoleteTtlEntryExtras.java    |   9 -
 .../extras/GridCacheMvccTtlEntryExtras.java     |   8 -
 .../extras/GridCacheObsoleteEntryExtras.java    |   8 -
 .../extras/GridCacheObsoleteTtlEntryExtras.java |   9 -
 .../cache/extras/GridCacheTtlEntryExtras.java   |   8 -
 .../store/GridCacheStoreManagerAdapter.java     |   2 +-
 .../cache/transactions/IgniteInternalTx.java    |  16 +-
 .../cache/transactions/IgniteTxAdapter.java     |   6 +-
 .../util/lang/GridMetadataAwareAdapter.java     | 296 +++++++++----------
 .../cache/eviction/GridCacheMockEntry.java      |  12 +-
 .../nio/impl/GridNioFilterChainSelfTest.java    |  15 -
 .../GridMetadataAwareAdapterLoadSelfTest.java   | 135 +++++++++
 .../lang/GridMetadataAwareAdapterSelfTest.java  |  58 ++--
 modules/hadoop/docs/HADOOP_README.txt           | 122 ++++++++
 modules/hadoop/docs/hadoop_readme.md            | 135 ---------
 modules/hadoop/docs/hadoop_readme.pdf           | Bin 82219 -> 0 bytes
 modules/yardstick/README.md                     |  85 ------
 modules/yardstick/README.txt                    |  93 ++++++
 parent/pom.xml                                  |   2 +
 43 files changed, 648 insertions(+), 1049 deletions(-)
----------------------------------------------------------------------



[02/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/ignite-sprint-4' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-4' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: 1c708d1aa39cbe584e53524f493eabaed2d20636
Parents: 03c790e 23729ef
Author: avinogradov <av...@gridgain.com>
Authored: Wed Apr 29 15:42:14 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Wed Apr 29 15:42:14 2015 +0300

----------------------------------------------------------------------
 RELEASE_NOTES.txt                               |  13 +-
 .../spi/checkpoint/s3/S3CheckpointSpi.java      |   2 +-
 .../clients/src/test/resources/spring-cache.xml |   4 +-
 .../src/test/resources/spring-server-node.xml   |   4 +-
 .../test/resources/spring-server-ssl-node.xml   |   4 +-
 modules/cloud/README.txt                        |  32 ++
 modules/cloud/licenses/apache-2.0.txt           | 202 +++++++
 modules/cloud/pom.xml                           | 108 ++++
 .../cloud/TcpDiscoveryCloudIpFinder.java        | 433 +++++++++++++++
 .../tcp/ipfinder/cloud/package-info.java        |  21 +
 .../TcpDiscoveryCloudIpFinderSelfTest.java      | 124 +++++
 .../tcp/ipfinder/cloud/package-info.java        |  22 +
 .../ignite/testsuites/IgniteCloudTestSuite.java | 112 ++++
 .../java/org/apache/ignite/IgniteLogger.java    |   8 +-
 .../java/org/apache/ignite/IgniteServices.java  |   2 +-
 .../main/java/org/apache/ignite/Ignition.java   |   2 +-
 .../eviction/sorted/SortedEvictionPolicy.java   |   2 +-
 .../configuration/ConnectorConfiguration.java   |   2 +-
 .../configuration/IgniteConfiguration.java      |   2 +-
 .../org/apache/ignite/internal/IgnitionEx.java  |   2 +-
 .../internal/cluster/ClusterGroupAdapter.java   |  16 +
 .../managers/communication/GridIoManager.java   |   6 +-
 .../deployment/GridDeploymentManager.java       |   2 +-
 .../GridDeploymentPerVersionStore.java          |   3 +-
 .../processors/cache/GridCacheMvccManager.java  |   2 +-
 .../cache/GridCacheSharedContext.java           |   2 +-
 .../processors/cache/IgniteCacheProxy.java      |  10 +-
 ...ridCacheOptimisticCheckPreparedTxFuture.java |  59 +-
 .../distributed/dht/GridDhtLockFuture.java      |  18 +-
 .../distributed/dht/GridDhtLockRequest.java     |  38 +-
 .../distributed/dht/GridDhtTxFinishFuture.java  | 102 +++-
 .../cache/distributed/dht/GridDhtTxLocal.java   |   6 +
 .../distributed/dht/GridDhtTxLocalAdapter.java  |  23 +
 .../cache/distributed/dht/GridDhtTxRemote.java  |   7 +
 .../dht/preloader/GridDhtPreloader.java         |   2 +-
 .../distributed/near/GridNearLockRequest.java   |  54 +-
 .../cache/distributed/near/GridNearTxLocal.java |   6 +
 .../cache/transactions/IgniteInternalTx.java    |   5 +
 .../cache/transactions/IgniteTxAdapter.java     |  10 +
 .../cache/transactions/IgniteTxHandler.java     |  57 +-
 .../cache/transactions/IgniteTxManager.java     | 117 +++-
 .../ignite/internal/util/GridJavaProcess.java   |   4 +
 .../util/spring/IgniteSpringHelper.java         |   4 +-
 .../util/tostring/GridToStringBuilder.java      |   2 +-
 .../ignite/internal/visor/cache/VisorCache.java |  92 ++--
 .../visor/cache/VisorCacheConfiguration.java    |   7 -
 .../visor/cache/VisorCacheNodesTask.java        |  74 +++
 .../cache/VisorCacheStoreConfiguration.java     |  35 --
 .../cache/VisorCacheTypeFieldMetadata.java      |  36 +-
 .../visor/cache/VisorCacheTypeMetadata.java     |  99 +---
 .../internal/visor/igfs/VisorIgfsMetrics.java   | 128 +----
 .../visor/node/VisorBasicConfiguration.java     |  11 +
 .../visor/node/VisorNodeDataCollectorJob.java   |   2 +-
 .../node/VisorNodeEventsCollectorTask.java      |  58 +-
 .../internal/visor/query/VisorQueryArg.java     |  19 +-
 .../internal/visor/query/VisorQueryCursor.java  |   1 -
 .../internal/visor/query/VisorQueryJob.java     |   9 +-
 .../internal/visor/query/VisorQueryTask.java    |  41 --
 .../internal/visor/util/VisorEventMapper.java   |  13 +
 .../internal/visor/util/VisorTaskUtils.java     |   2 +-
 .../apache/ignite/logger/java/JavaLogger.java   |  12 +-
 .../apache/ignite/marshaller/Marshaller.java    |  14 +-
 .../ignite/marshaller/jdk/JdkMarshaller.java    |  10 +-
 .../optimized/OptimizedMarshaller.java          |   8 +-
 .../apache/ignite/resources/LoggerResource.java |   2 +-
 .../apache/ignite/resources/SpringResource.java |   2 +-
 .../org/apache/ignite/services/Service.java     |   2 +-
 .../ignite/services/ServiceConfiguration.java   |   2 +-
 .../checkpoint/cache/CacheCheckpointSpi.java    |   2 +-
 .../spi/checkpoint/jdbc/JdbcCheckpointSpi.java  |   2 +-
 .../sharedfs/SharedFsCheckpointSpi.java         |   4 +-
 .../fifoqueue/FifoQueueCollisionSpi.java        |  10 +-
 .../jobstealing/JobStealingCollisionSpi.java    |  14 +-
 .../PriorityQueueCollisionSpi.java              |   6 +-
 .../communication/tcp/TcpCommunicationSpi.java  |  12 +-
 .../spi/discovery/tcp/TcpDiscoverySpi.java      |  10 +-
 .../discovery/tcp/TcpDiscoverySpiAdapter.java   |  10 +-
 .../memory/MemoryEventStorageSpi.java           |  10 +-
 .../spi/failover/always/AlwaysFailoverSpi.java  |  10 +-
 .../jobstealing/JobStealingFailoverSpi.java     |   6 +-
 .../spi/failover/never/NeverFailoverSpi.java    |   8 +-
 .../apache/ignite/spi/indexing/IndexingSpi.java |   4 +-
 .../adaptive/AdaptiveLoadBalancingSpi.java      |  12 +-
 .../roundrobin/RoundRobinLoadBalancingSpi.java  |  10 +-
 .../WeightedRandomLoadBalancingSpi.java         |  10 +-
 .../spi/swapspace/file/FileSwapSpaceSpi.java    |  10 +-
 .../src/test/config/load/merge-sort-base.xml    |   2 +-
 .../internal/GridDiscoveryEventSelfTest.java    |  30 +-
 ...ProjectionForCachesOnDaemonNodeSelfTest.java | 147 +++++
 .../cache/IgniteCachePutAllRestartTest.java     | 203 +++++++
 .../cache/IgniteCacheTxPreloadNoWriteTest.java  |  29 +-
 .../distributed/GridCacheLockAbstractTest.java  |  75 +++
 ...xOriginatingNodeFailureAbstractSelfTest.java |   6 +-
 ...cOriginatingNodeFailureAbstractSelfTest.java |   7 +-
 ...itionedTxOriginatingNodeFailureSelfTest.java |   2 -
 .../near/IgniteCacheNearTxRollbackTest.java     | 133 +++++
 .../DataStreamerMultiThreadedSelfTest.java      |   2 +
 .../logger/java/IgniteJavaLoggerTest.java       |  65 ---
 .../ignite/logger/java/JavaLoggerTest.java      |  65 +++
 .../spi/discovery/tcp/TcpDiscoverySelfTest.java |   5 +-
 .../junits/logger/GridTestLog4jLogger.java      |  10 +-
 .../ignite/testsuites/IgniteBasicTestSuite.java |   2 +
 .../IgniteCacheFailoverTestSuite.java           |   8 +-
 .../testsuites/IgniteCacheRestartTestSuite.java |   3 +-
 .../testsuites/IgniteLoggingSelfTestSuite.java  |   2 +-
 modules/gce/README.txt                          |  32 ++
 modules/gce/licenses/apache-2.0.txt             | 202 +++++++
 modules/gce/pom.xml                             |  94 ++++
 .../gce/TcpDiscoveryGoogleStorageIpFinder.java  | 380 +++++++++++++
 .../tcp/ipfinder/gce/package-info.java          |  22 +
 ...pDiscoveryGoogleStorageIpFinderSelfTest.java |  73 +++
 .../tcp/ipfinder/gce/package-info.java          |  22 +
 .../ignite/testsuites/IgniteGCETestSuite.java   |  71 +++
 .../processors/hadoop/HadoopProcessor.java      |   2 +-
 .../ignite/logger/jcl/IgniteJclLogger.java      | 167 ------
 .../org/apache/ignite/logger/jcl/JclLogger.java | 167 ++++++
 .../ignite/logger/jcl/IgniteJclLoggerTest.java  |  48 --
 .../apache/ignite/logger/jcl/JclLoggerTest.java |  48 ++
 .../ignite/testsuites/IgniteJclTestSuite.java   |   2 +-
 .../apache/ignite/logger/log4j/Log4JLogger.java |   8 +-
 .../ignite/logger/slf4j/GridSlf4jLogger.java    | 138 -----
 .../apache/ignite/logger/slf4j/Slf4jLogger.java | 138 +++++
 ...gniteProjectionStartStopRestartSelfTest.java |  26 +-
 .../spi/deployment/uri/UriDeploymentSpi.java    |   2 +-
 .../ignite/visor/commands/VisorConsole.scala    | 314 ++++++-----
 .../visor/commands/VisorConsoleCommand.scala    |  77 ---
 .../ignite/visor/commands/VisorTextTable.scala  | 539 ------------------
 .../visor/commands/ack/VisorAckCommand.scala    |  42 +-
 .../commands/alert/VisorAlertCommand.scala      |  35 +-
 .../commands/cache/VisorCacheClearCommand.scala |  51 +-
 .../commands/cache/VisorCacheCommand.scala      |  34 +-
 .../commands/cache/VisorCacheScanCommand.scala  |  60 +-
 .../commands/cache/VisorCacheStopCommand.scala  |  30 +-
 .../commands/cache/VisorCacheSwapCommand.scala  |  66 +--
 .../commands/common/VisorConsoleCommand.scala   |  90 +++
 .../visor/commands/common/VisorTextTable.scala  | 543 +++++++++++++++++++
 .../config/VisorConfigurationCommand.scala      | 438 +++++++--------
 .../commands/deploy/VisorDeployCommand.scala    |  47 +-
 .../commands/disco/VisorDiscoveryCommand.scala  |  58 +-
 .../commands/events/VisorEventsCommand.scala    | 338 +++++-------
 .../visor/commands/gc/VisorGcCommand.scala      | 130 ++---
 .../visor/commands/kill/VisorKillCommand.scala  |  53 +-
 .../visor/commands/node/VisorNodeCommand.scala  |  47 +-
 .../visor/commands/ping/VisorPingCommand.scala  |  41 +-
 .../commands/start/VisorStartCommand.scala      |  34 +-
 .../commands/tasks/VisorTasksCommand.scala      |  76 +--
 .../commands/top/VisorTopologyCommand.scala     |  36 +-
 .../visor/commands/vvm/VisorVvmCommand.scala    |  32 +-
 .../scala/org/apache/ignite/visor/visor.scala   | 286 +++++++---
 .../ignite/visor/VisorTextTableSpec.scala       |   3 +-
 pom.xml                                         |   7 +-
 151 files changed, 5493 insertions(+), 2937 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1c708d1a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteInternalTx.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1c708d1a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxAdapter.java
----------------------------------------------------------------------


[18/27] incubator-ignite git commit: Merge remote-tracking branch 'remotes/origin/master' into ignite-630

Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-630


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

Branch: refs/heads/ignite-752
Commit: df0c86afdd67924d7cb707b0c158b44d1e629159
Parents: df0c9d5 d24c2da
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Mon Jul 20 12:07:18 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Mon Jul 20 12:07:18 2015 +0300

----------------------------------------------------------------------
 .../ignite/compute/ComputeJobResultPolicy.java  |   3 +-
 .../apache/ignite/internal/IgniteKernal.java    |  12 ++
 .../failover/GridFailoverContextImpl.java       |  28 ++-
 .../managers/failover/GridFailoverManager.java  |  13 +-
 .../processors/cache/GridCacheAdapter.java      |   2 +-
 .../processors/cache/GridCacheContext.java      |  45 +++--
 .../processors/cache/GridCacheMvccManager.java  |   6 +-
 .../GridCachePartitionExchangeManager.java      |  53 ++++++
 .../processors/cache/GridCacheUtils.java        |   4 +-
 .../processors/cache/IgniteCacheProxy.java      |   2 +-
 .../distributed/dht/GridDhtTopologyFuture.java  |  14 --
 .../dht/atomic/GridDhtAtomicCache.java          |   4 +-
 .../dht/atomic/GridNearAtomicUpdateFuture.java  |  11 +-
 .../GridDhtPartitionsExchangeFuture.java        |  31 +---
 .../cache/transactions/IgniteTxManager.java     |   4 +-
 .../processors/closure/AffinityTask.java        |  35 ++++
 .../closure/GridClosureProcessor.java           |  63 ++++++-
 .../processors/task/GridTaskWorker.java         |  24 ++-
 .../ignite/internal/util/IgniteUtils.java       |   4 +-
 .../plugin/security/SecurityPermission.java     |   7 +-
 .../org/apache/ignite/spi/IgniteSpiAdapter.java |  14 +-
 .../communication/tcp/TcpCommunicationSpi.java  |   2 +-
 .../ignite/spi/discovery/tcp/ServerImpl.java    |  43 +++--
 .../ignite/spi/failover/FailoverContext.java    |  18 ++
 .../spi/failover/always/AlwaysFailoverSpi.java  |  25 +++
 .../IgniteClientReconnectFailoverTest.java      |  47 +++--
 .../cache/CacheAffinityCallSelfTest.java        | 172 ++++++++++++++++++
 .../cache/GridCacheAffinityRoutingSelfTest.java | 157 ++++++++++++++++-
 .../cache/IgniteCacheNearLockValueSelfTest.java |   2 +
 .../distributed/IgniteCache150ClientsTest.java  |   1 +
 .../IgniteCacheClientReconnectTest.java         | 175 +++++++++++++++++++
 .../IgniteCacheServerNodeConcurrentStart.java   |  96 ++++++++++
 .../IgniteCachePutRetryAbstractSelfTest.java    |  52 ++++--
 ...gniteCachePutRetryTransactionalSelfTest.java |  17 +-
 .../tcp/TcpDiscoveryMultiThreadedTest.java      | 140 +++++++++------
 .../spi/failover/GridFailoverTestContext.java   |  10 ++
 .../testframework/junits/GridAbstractTest.java  |   5 +
 .../ignite/testsuites/IgniteCacheTestSuite.java |   1 +
 .../testsuites/IgniteCacheTestSuite2.java       |   2 +-
 .../testsuites/IgniteCacheTestSuite4.java       |   2 -
 .../testsuites/IgniteClientNodesTestSuite.java  |  42 +++++
 .../ignite/schema/ui/SchemaImportApp.java       |  36 +++-
 42 files changed, 1218 insertions(+), 206 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c86af/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/df0c86af/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------


[06/27] incubator-ignite git commit: ignite-630

Posted by sb...@apache.org.
ignite-630


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

Branch: refs/heads/ignite-752
Commit: e62f6d079a960b60b7c1bd3ba15ad1a4bef12c62
Parents: 7daf90f
Author: avinogradov <av...@gridgain.com>
Authored: Wed May 6 15:50:16 2015 +0300
Committer: avinogradov <av...@gridgain.com>
Committed: Wed May 6 15:50:16 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheMapEntry.java     | 207 ++-----------------
 .../extras/GridCacheAttributesEntryExtras.java  |  35 +---
 .../GridCacheAttributesMvccEntryExtras.java     |  33 +--
 ...dCacheAttributesMvccObsoleteEntryExtras.java |  33 +--
 ...cheAttributesMvccObsoleteTtlEntryExtras.java |  33 +--
 .../GridCacheAttributesMvccTtlEntryExtras.java  |  33 +--
 .../GridCacheAttributesObsoleteEntryExtras.java |  34 +--
 ...idCacheAttributesObsoleteTtlEntryExtras.java |  34 +--
 .../GridCacheAttributesTtlEntryExtras.java      |  34 +--
 .../cache/extras/GridCacheEntryExtras.java      |  14 --
 .../extras/GridCacheEntryExtrasAdapter.java     |   8 -
 .../cache/extras/GridCacheMvccEntryExtras.java  |   9 -
 .../GridCacheMvccObsoleteEntryExtras.java       |   8 -
 .../GridCacheMvccObsoleteTtlEntryExtras.java    |   9 -
 .../extras/GridCacheMvccTtlEntryExtras.java     |   8 -
 .../extras/GridCacheObsoleteEntryExtras.java    |   8 -
 .../extras/GridCacheObsoleteTtlEntryExtras.java |   9 -
 .../cache/extras/GridCacheTtlEntryExtras.java   |   8 -
 18 files changed, 45 insertions(+), 512 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/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 5c141e2..7e7e934 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
@@ -28,7 +28,6 @@ import org.apache.ignite.internal.processors.cache.query.*;
 import org.apache.ignite.internal.processors.cache.transactions.*;
 import org.apache.ignite.internal.processors.cache.version.*;
 import org.apache.ignite.internal.processors.dr.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.lang.*;
 import org.apache.ignite.internal.util.offheap.unsafe.*;
 import org.apache.ignite.internal.util.tostring.*;
@@ -40,7 +39,6 @@ import org.jetbrains.annotations.*;
 import javax.cache.*;
 import javax.cache.expiry.*;
 import javax.cache.processor.*;
-import java.io.*;
 import java.nio.*;
 import java.util.*;
 import java.util.concurrent.atomic.*;
@@ -53,7 +51,7 @@ import static org.apache.ignite.internal.processors.dr.GridDrType.*;
  */
 @SuppressWarnings({
     "NonPrivateFieldAccessedInSynchronizedContext", "TooBroadScope", "FieldAccessedSynchronizedAndUnsynchronized"})
-public abstract class GridCacheMapEntry implements GridCacheEntryEx {
+public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter implements GridCacheEntryEx {
     /** */
     private static final byte IS_DELETED_MASK = 0x01;
 
@@ -297,7 +295,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
                 vb = val.valueBytes(cctx.cacheObjectContext());
             }
 
-           extrasSize = extrasSize();
+            extrasSize = extrasSize();
         }
 
         return SIZE_OVERHEAD + extrasSize + kb.length + (vb == null ? 1 : vb.length);
@@ -564,7 +562,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
      */
     protected final void releaseSwap() throws IgniteCheckedException {
         if (cctx.isSwapOrOffheapEnabled()) {
-            synchronized (this){
+            synchronized (this) {
                 cctx.swap().remove(key());
             }
 
@@ -1000,7 +998,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
                 else if (interceptorVal != val0)
                     val0 = cctx.unwrapTemporary(interceptorVal);
 
-                    val = cctx.toCacheObject(val0);
+                val = cctx.toCacheObject(val0);
             }
 
             // Determine new ttl and expire time.
@@ -1547,7 +1545,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
                         if (evtOld == null)
                             evtOld = cctx.unwrapTemporary(old);
 
-                        cctx.events().addEvent(partition(), key, cctx.localNodeId(), null, (GridCacheVersion) null,
+                        cctx.events().addEvent(partition(), key, cctx.localNodeId(), null, (GridCacheVersion)null,
                             EVT_CACHE_OBJECT_REMOVED, null, false, evtOld, evtOld != null || hadVal, subjId, null,
                             taskName);
                     }
@@ -2575,7 +2573,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
             // For optimistic checking.
             GridCacheVersion startVer;
 
-            synchronized (this){
+            synchronized (this) {
                 checkObsolete();
 
                 startVer = ver;
@@ -2757,8 +2755,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
         boolean swap,
         AffinityTopologyVersion topVer,
         @Nullable IgniteCacheExpiryPolicy expiryPlc)
-        throws GridCacheEntryRemovedException, IgniteCheckedException
-    {
+        throws GridCacheEntryRemovedException, IgniteCheckedException {
         assert heap || offheap || swap;
 
         try {
@@ -2770,7 +2767,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
             }
 
             if (offheap || swap) {
-                GridCacheSwapEntry  e = cctx.swap().read(this, false, offheap, swap);
+                GridCacheSwapEntry e = cctx.swap().read(this, false, offheap, swap);
 
                 return e != null ? e.value() : null;
             }
@@ -2805,7 +2802,8 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
      * @throws GridCacheEntryRemovedException If entry is obsolete.
      * @throws IgniteCheckedException If entry was externally locked.
      */
-    private void groupLockSanityCheck(IgniteInternalTx tx) throws GridCacheEntryRemovedException, IgniteCheckedException {
+    private void groupLockSanityCheck(IgniteInternalTx tx)
+        throws GridCacheEntryRemovedException, IgniteCheckedException {
         assert tx.groupLock();
 
         IgniteTxEntry txEntry = tx.entry(txKey());
@@ -3066,8 +3064,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
     @Override public synchronized boolean versionedValue(CacheObject val,
         GridCacheVersion curVer,
         GridCacheVersion newVer)
-        throws IgniteCheckedException, GridCacheEntryRemovedException
-    {
+        throws IgniteCheckedException, GridCacheEntryRemovedException {
         checkObsolete();
 
         if (curVer == null || curVer.equals(ver)) {
@@ -3145,7 +3142,8 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
     }
 
     /** {@inheritDoc} */
-    @Override public synchronized boolean lockedLocally(GridCacheVersion lockVer) throws GridCacheEntryRemovedException {
+    @Override public synchronized boolean lockedLocally(GridCacheVersion lockVer)
+        throws GridCacheEntryRemovedException {
         checkObsolete();
 
         GridCacheMvcc mvcc = mvccExtras();
@@ -3791,170 +3789,6 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
         return tx == null || !tx.removed(txKey());
     }
 
-    /**
-     * Ensures that internal data storage is created.
-     *
-     * @param size Amount of data to ensure.
-     * @return {@code true} if data storage was created.
-     */
-    private boolean ensureData(int size) {
-        if (attributeDataExtras() == null) {
-            attributeDataExtras(new GridLeanMap<Integer, Object>(size));
-
-            return true;
-        }
-        else
-            return false;
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 addMeta(int key, V1 val) {
-        A.notNull(key, "key", val, "val");
-
-        synchronized (this) {
-            ensureData(1);
-
-            return (V1)attributeDataExtras().put(key, val);
-        }
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 meta(int key) {
-        A.notNull(key, "key");
-
-        synchronized (this) {
-            GridLeanMap<Integer, Object> attrData = attributeDataExtras();
-
-            return attrData == null ? null : (V1)attrData.get(key);
-        }
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 removeMeta(int key) {
-        A.notNull(key, "key");
-
-        synchronized (this) {
-            GridLeanMap<Integer, Object> attrData = attributeDataExtras();
-
-            if (attrData == null)
-                return null;
-
-            V1 old = (V1)attrData.remove(key);
-
-            if (attrData.isEmpty())
-                attributeDataExtras(null);
-
-            return old;
-        }
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings({"unchecked"})
-    @Override public <V1> boolean removeMeta(int key, V1 val) {
-        A.notNull(key, "key", val, "val");
-
-        synchronized (this) {
-            GridLeanMap<Integer, Object> attrData = attributeDataExtras();
-
-            if (attrData == null)
-                return false;
-
-            V1 old = (V1)attrData.get(key);
-
-            if (old != null && old.equals(val)) {
-                attrData.remove(key);
-
-                if (attrData.isEmpty())
-                    attributeDataExtras(null);
-
-                return true;
-            }
-
-            return false;
-        }
-    }
-
-    /** {@inheritDoc} */
-    @Override public boolean hasMeta(int key) {
-        return meta(key) != null;
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings({"unchecked"})
-    @Nullable @Override public <V1> V1 putMetaIfAbsent(int key, V1 val) {
-        A.notNull(key, "key", val, "val");
-
-        synchronized (this) {
-            V1 v = meta(key);
-
-            if (v == null)
-                return addMeta(key, val);
-
-            return v;
-        }
-    }
-
-    /** {@inheritDoc} */
-    @SuppressWarnings({"RedundantTypeArguments"})
-    @Override public <V1> boolean replaceMeta(int key, V1 curVal, V1 newVal) {
-        A.notNull(key, "key", newVal, "newVal", curVal, "curVal");
-
-        synchronized (this) {
-            if (hasMeta(key)) {
-                V1 val = this.<V1>meta(key);
-
-                if (val != null && val.equals(curVal)) {
-                    addMeta(key, newVal);
-
-                    return true;
-                }
-            }
-
-            return false;
-        }
-    }
-
-    /**
-     * Convenience way for super-classes which implement {@link Externalizable} to
-     * serialize metadata. Super-classes must call this method explicitly from
-     * within {@link Externalizable#writeExternal(ObjectOutput)} methods implementation.
-     *
-     * @param out Output to write to.
-     * @throws IOException If I/O error occurred.
-     */
-    @SuppressWarnings({"TooBroadScope"})
-    protected void writeExternalMeta(ObjectOutput out) throws IOException {
-        Map<Integer, Object> cp;
-
-        // Avoid code warning (suppressing is bad here, because we need this warning for other places).
-        synchronized (this) {
-            cp = new GridLeanMap<>(attributeDataExtras());
-        }
-
-        out.writeObject(cp);
-    }
-
-    /**
-     * Convenience way for super-classes which implement {@link Externalizable} to
-     * serialize metadata. Super-classes must call this method explicitly from
-     * within {@link Externalizable#readExternal(ObjectInput)} methods implementation.
-     *
-     * @param in Input to read from.
-     * @throws IOException If I/O error occurred.
-     * @throws ClassNotFoundException If some class could not be found.
-     */
-    @SuppressWarnings({"unchecked"})
-    protected void readExternalMeta(ObjectInput in) throws IOException, ClassNotFoundException {
-        GridLeanMap<Integer, Object> cp = (GridLeanMap<Integer, Object>)in.readObject();
-
-        synchronized (this) {
-            attributeDataExtras(cp);
-        }
-    }
-
     /** {@inheritDoc} */
     @Override public boolean deleted() {
         if (!cctx.deferredDelete())
@@ -4008,21 +3842,6 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx {
     }
 
     /**
-     * @return Attribute data.
-     */
-    @Nullable private GridLeanMap<Integer, Object> attributeDataExtras() {
-        return extras != null ? extras.attributesData() : null;
-    }
-
-    /**
-     * @param attrData Attribute data.
-     */
-    private void attributeDataExtras(@Nullable GridLeanMap<Integer, Object> attrData) {
-        extras = (extras != null) ? extras.attributesData(attrData) : attrData != null ?
-            new GridCacheAttributesEntryExtras(attrData) : null;
-    }
-
-    /**
      * @return MVCC.
      */
     @Nullable protected GridCacheMvcc mvccExtras() {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
index c4b87ca..911a1db 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesEntryExtras.java
@@ -19,59 +19,32 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
-import org.jetbrains.annotations.*;
-
-import java.util.*;
 
 /**
  * Extras where attributes are set.
  */
 public class GridCacheAttributesEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /**
      * Constructor.
-     *
-     * @param attrData Attributes data.
      */
-    public GridCacheAttributesEntryExtras(GridLeanMap<Integer, Object> attrData) {
-        assert attrData != null;
-
-        this.attrData = attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
+    public GridCacheAttributesEntryExtras() {
 
-            return this;
-        }
-        else
-            return null;
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
-        return mvcc != null ? new GridCacheAttributesMvccEntryExtras(attrData, mvcc) : this;
+        return mvcc != null ? new GridCacheAttributesMvccEntryExtras(mvcc) : this;
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras obsoleteVersion(GridCacheVersion obsoleteVer) {
-        return obsoleteVer != null ? new GridCacheAttributesObsoleteEntryExtras(attrData, obsoleteVer) : this;
+        return obsoleteVer != null ? new GridCacheAttributesObsoleteEntryExtras(obsoleteVer) : this;
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras ttlAndExpireTime(long ttl, long expireTime) {
-        return ttl != 0 ? new GridCacheAttributesTtlEntryExtras(attrData, ttl, expireTime) : this;
+        return ttl != 0 ? new GridCacheAttributesTtlEntryExtras(ttl, expireTime) : this;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
index f13e6a6..cb36999 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccEntryExtras.java
@@ -19,53 +19,28 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 import org.jetbrains.annotations.*;
 
-import java.util.*;
-
 /**
  * Extras where attributes and MVCC are set.
  */
 public class GridCacheAttributesMvccEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** MVCC. */
     private GridCacheMvcc mvcc;
 
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param mvcc MVCC.
      */
-    public GridCacheAttributesMvccEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc) {
-        assert attrData != null;
+    public GridCacheAttributesMvccEntryExtras(GridCacheMvcc mvcc) {
         assert mvcc != null;
 
-        this.attrData = attrData;
         this.mvcc = mvcc;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheMvccEntryExtras(mvcc);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }
@@ -78,18 +53,18 @@ public class GridCacheAttributesMvccEntryExtras extends GridCacheEntryExtrasAdap
             return this;
         }
         else
-            return new GridCacheAttributesEntryExtras(attrData);
+            return new GridCacheAttributesEntryExtras();
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras obsoleteVersion(GridCacheVersion obsoleteVer) {
-        return obsoleteVer != null ? new GridCacheAttributesMvccObsoleteEntryExtras(attrData, mvcc, obsoleteVer) :
+        return obsoleteVer != null ? new GridCacheAttributesMvccObsoleteEntryExtras(mvcc, obsoleteVer) :
             this;
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras ttlAndExpireTime(long ttl, long expireTime) {
-        return ttl != 0 ? new GridCacheAttributesMvccTtlEntryExtras(attrData, mvcc, ttl, expireTime) : this;
+        return ttl != 0 ? new GridCacheAttributesMvccTtlEntryExtras(mvcc, ttl, expireTime) : this;
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
index 4d12be9..a0b9b25 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteEntryExtras.java
@@ -19,19 +19,13 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 import org.jetbrains.annotations.*;
 
-import java.util.*;
-
 /**
  * Extras where attributes, MVCC and obsolete version are set.
  */
 public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** MVCC. */
     private GridCacheMvcc mvcc;
 
@@ -41,38 +35,19 @@ public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryEx
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param mvcc MVCC.
      * @param obsoleteVer Obsolete version.
      */
-    public GridCacheAttributesMvccObsoleteEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc,
+    public GridCacheAttributesMvccObsoleteEntryExtras(GridCacheMvcc mvcc,
         GridCacheVersion obsoleteVer) {
-        assert attrData != null;
         assert mvcc != null;
         assert obsoleteVer != null;
 
-        this.attrData = attrData;
         this.mvcc = mvcc;
         this.obsoleteVer = obsoleteVer;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheMvccObsoleteEntryExtras(mvcc, obsoleteVer);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }
@@ -85,7 +60,7 @@ public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryEx
             return this;
         }
         else
-            return new GridCacheAttributesObsoleteEntryExtras(attrData, obsoleteVer);
+            return new GridCacheAttributesObsoleteEntryExtras(obsoleteVer);
     }
 
     /** {@inheritDoc} */
@@ -101,12 +76,12 @@ public class GridCacheAttributesMvccObsoleteEntryExtras extends GridCacheEntryEx
             return this;
         }
         else
-            return new GridCacheAttributesMvccEntryExtras(attrData, mvcc);
+            return new GridCacheAttributesMvccEntryExtras(mvcc);
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras ttlAndExpireTime(long ttl, long expireTime) {
-        return ttl != 0 ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(attrData, mvcc, obsoleteVer, ttl,
+        return ttl != 0 ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(mvcc, obsoleteVer, ttl,
             expireTime) : this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
index 4adc29d..c7727c7 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccObsoleteTtlEntryExtras.java
@@ -19,19 +19,13 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 import org.jetbrains.annotations.*;
 
-import java.util.*;
-
 /**
  * Extras where attributes, MVCC, obsolete version and TTL are set.
  */
 public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** MVCC. */
     private GridCacheMvcc mvcc;
 
@@ -47,20 +41,17 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param mvcc MVCC.
      * @param obsoleteVer Obsolete version.
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesMvccObsoleteTtlEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc,
+    public GridCacheAttributesMvccObsoleteTtlEntryExtras(GridCacheMvcc mvcc,
         GridCacheVersion obsoleteVer, long ttl, long expireTime) {
-        assert attrData != null;
         assert mvcc != null;
         assert obsoleteVer != null;
         assert ttl != 0;
 
-        this.attrData = attrData;
         this.mvcc = mvcc;
         this.obsoleteVer = obsoleteVer;
         this.ttl = ttl;
@@ -68,22 +59,6 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheMvccObsoleteTtlEntryExtras(mvcc, obsoleteVer, ttl ,expireTime);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }
@@ -96,7 +71,7 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
             return this;
         }
         else
-            return new GridCacheAttributesObsoleteTtlEntryExtras(attrData, obsoleteVer, ttl, expireTime);
+            return new GridCacheAttributesObsoleteTtlEntryExtras(obsoleteVer, ttl, expireTime);
     }
 
     /** {@inheritDoc} */
@@ -112,7 +87,7 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
             return this;
         }
         else
-            return new GridCacheAttributesMvccTtlEntryExtras(attrData, mvcc, ttl, expireTime);
+            return new GridCacheAttributesMvccTtlEntryExtras(mvcc, ttl, expireTime);
     }
 
     /** {@inheritDoc} */
@@ -134,7 +109,7 @@ public class GridCacheAttributesMvccObsoleteTtlEntryExtras extends GridCacheEntr
             return this;
         }
         else
-            return new GridCacheAttributesMvccObsoleteEntryExtras(attrData, mvcc, obsoleteVer);
+            return new GridCacheAttributesMvccObsoleteEntryExtras(mvcc, obsoleteVer);
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
index 68dc3bf..aa5df67 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesMvccTtlEntryExtras.java
@@ -19,19 +19,13 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 import org.jetbrains.annotations.*;
 
-import java.util.*;
-
 /**
  * Extras where attributes, MVCC and TTL are set.
  */
 public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** MVCC. */
     private GridCacheMvcc mvcc;
 
@@ -44,40 +38,21 @@ public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasA
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param mvcc MVCC.
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesMvccTtlEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheMvcc mvcc, long ttl,
+    public GridCacheAttributesMvccTtlEntryExtras(GridCacheMvcc mvcc, long ttl,
         long expireTime) {
-        assert attrData != null;
         assert mvcc != null;
         assert ttl != 0;
 
-        this.attrData = attrData;
         this.mvcc = mvcc;
         this.ttl = ttl;
         this.expireTime = expireTime;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheMvccTtlEntryExtras(mvcc, ttl ,expireTime);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }
@@ -90,12 +65,12 @@ public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasA
             return this;
         }
         else
-            return new GridCacheAttributesTtlEntryExtras(attrData, ttl, expireTime);
+            return new GridCacheAttributesTtlEntryExtras(ttl, expireTime);
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras obsoleteVersion(GridCacheVersion obsoleteVer) {
-        return obsoleteVer != null ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(attrData, mvcc, obsoleteVer,
+        return obsoleteVer != null ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(mvcc, obsoleteVer,
             ttl, expireTime) : this;
     }
 
@@ -118,7 +93,7 @@ public class GridCacheAttributesMvccTtlEntryExtras extends GridCacheEntryExtrasA
             return this;
         }
         else
-            return new GridCacheAttributesMvccEntryExtras(attrData, mvcc);
+            return new GridCacheAttributesMvccEntryExtras(mvcc);
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
index c7451a0..47c46d2 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteEntryExtras.java
@@ -19,55 +19,29 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
-import org.jetbrains.annotations.*;
-
-import java.util.*;
 
 /**
  * Extras where attributes and obsolete version are set.
  */
 public class GridCacheAttributesObsoleteEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** Obsolete version. */
     private GridCacheVersion obsoleteVer;
 
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param obsoleteVer Obsolete version.
      */
-    public GridCacheAttributesObsoleteEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheVersion obsoleteVer) {
-        assert attrData != null;
+    public GridCacheAttributesObsoleteEntryExtras(GridCacheVersion obsoleteVer) {
         assert obsoleteVer != null;
 
-        this.attrData = attrData;
         this.obsoleteVer = obsoleteVer;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheObsoleteEntryExtras(obsoleteVer);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
-        return mvcc != null ? new GridCacheAttributesMvccObsoleteEntryExtras(attrData, mvcc, obsoleteVer) : this;
+        return mvcc != null ? new GridCacheAttributesMvccObsoleteEntryExtras(mvcc, obsoleteVer) : this;
     }
 
     /** {@inheritDoc} */
@@ -83,12 +57,12 @@ public class GridCacheAttributesObsoleteEntryExtras extends GridCacheEntryExtras
             return this;
         }
         else
-            return new GridCacheAttributesEntryExtras(attrData);
+            return new GridCacheAttributesEntryExtras();
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras ttlAndExpireTime(long ttl, long expireTime) {
-        return ttl != 0 ? new GridCacheAttributesObsoleteTtlEntryExtras(attrData, obsoleteVer, ttl, expireTime) :
+        return ttl != 0 ? new GridCacheAttributesObsoleteTtlEntryExtras(obsoleteVer, ttl, expireTime) :
             this;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
index 09cd41b..42cff5d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesObsoleteTtlEntryExtras.java
@@ -19,19 +19,12 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
-import org.jetbrains.annotations.*;
-
-import java.util.*;
 
 /**
  * Extras where attributes, obsolete version and TTL are set.
  */
 public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** Obsolete version. */
     private GridCacheVersion obsoleteVer;
 
@@ -44,42 +37,23 @@ public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExt
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param obsoleteVer Obsolete version.
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesObsoleteTtlEntryExtras(GridLeanMap<Integer, Object> attrData, GridCacheVersion obsoleteVer,
+    public GridCacheAttributesObsoleteTtlEntryExtras(GridCacheVersion obsoleteVer,
         long ttl, long expireTime) {
-        assert attrData != null;
         assert obsoleteVer != null;
         assert ttl != 0;
 
-        this.attrData = attrData;
         this.obsoleteVer = obsoleteVer;
         this.ttl = ttl;
         this.expireTime = expireTime;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheObsoleteTtlEntryExtras(obsoleteVer, ttl, expireTime);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
-        return mvcc != null ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(attrData, mvcc, obsoleteVer, ttl,
+        return mvcc != null ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(mvcc, obsoleteVer, ttl,
             expireTime) : this;
     }
 
@@ -96,7 +70,7 @@ public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExt
             return this;
         }
         else
-            return new GridCacheAttributesTtlEntryExtras(attrData, ttl, expireTime);
+            return new GridCacheAttributesTtlEntryExtras(ttl, expireTime);
     }
 
     /** {@inheritDoc} */
@@ -118,7 +92,7 @@ public class GridCacheAttributesObsoleteTtlEntryExtras extends GridCacheEntryExt
             return this;
         }
         else
-            return new GridCacheAttributesObsoleteEntryExtras(attrData, obsoleteVer);
+            return new GridCacheAttributesObsoleteEntryExtras(obsoleteVer);
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
index b69f380..cf2dc45 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheAttributesTtlEntryExtras.java
@@ -19,19 +19,12 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
-import org.jetbrains.annotations.*;
-
-import java.util.*;
 
 /**
  * Extras where attributes and TTL are set.
  */
 public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapter {
-    /** Attributes data. */
-    private GridLeanMap<Integer, Object> attrData;
-
     /** TTL. */
     private long ttl;
 
@@ -41,43 +34,24 @@ public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapt
     /**
      * Constructor.
      *
-     * @param attrData Attributes data.
      * @param ttl TTL.
      * @param expireTime Expire time.
      */
-    public GridCacheAttributesTtlEntryExtras(GridLeanMap<Integer, Object> attrData, long ttl, long expireTime) {
-        assert attrData != null;
+    public GridCacheAttributesTtlEntryExtras(long ttl, long expireTime) {
         assert ttl != 0;
 
-        this.attrData = attrData;
         this.ttl = ttl;
         this.expireTime = expireTime;
     }
 
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return attrData;
-    }
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(@Nullable GridLeanMap<Integer, Object> attrData) {
-        if (attrData != null) {
-            this.attrData = attrData;
-
-            return this;
-        }
-        else
-            return new GridCacheTtlEntryExtras(ttl, expireTime);
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
-        return mvcc != null ? new GridCacheAttributesMvccTtlEntryExtras(attrData, mvcc, ttl, expireTime) : this;
+        return mvcc != null ? new GridCacheAttributesMvccTtlEntryExtras(mvcc, ttl, expireTime) : this;
     }
 
     /** {@inheritDoc} */
     @Override public GridCacheEntryExtras obsoleteVersion(GridCacheVersion obsoleteVer) {
-        return obsoleteVer != null ? new GridCacheAttributesObsoleteTtlEntryExtras(attrData, obsoleteVer, ttl,
+        return obsoleteVer != null ? new GridCacheAttributesObsoleteTtlEntryExtras(obsoleteVer, ttl,
             expireTime) : this;
     }
 
@@ -100,7 +74,7 @@ public class GridCacheAttributesTtlEntryExtras extends GridCacheEntryExtrasAdapt
             return this;
         }
         else
-            return new GridCacheAttributesEntryExtras(attrData);
+            return new GridCacheAttributesEntryExtras();
     }
 
     /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
index 5a2c00a..568555d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtras.java
@@ -19,27 +19,13 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.jetbrains.annotations.*;
 
-import java.util.*;
-
 /**
  * Cache extras.
  */
 public interface GridCacheEntryExtras {
     /**
-     * @return Attributes data.
-     */
-    @Nullable public GridLeanMap<Integer, Object> attributesData();
-
-    /**
-     * @param attrData Attributes data.
-     * @return Updated extras.
-     */
-    public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData);
-
-    /**
      * @return MVCC.
      */
     @Nullable public GridCacheMvcc mvcc();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
index 2eda1bb..058353e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheEntryExtrasAdapter.java
@@ -19,20 +19,12 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
-
-import java.util.*;
 
 /**
  * Cache extras adapter.
  */
 public abstract class GridCacheEntryExtrasAdapter implements GridCacheEntryExtras {
     /** {@inheritDoc} */
-    @Override public GridLeanMap<Integer, Object> attributesData() {
-        return null;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
index a90f1fd..e1d5bc4 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where MVCC is set.
  */
@@ -42,12 +39,6 @@ public class GridCacheMvccEntryExtras extends GridCacheEntryExtrasAdapter {
         this.mvcc = mvcc;
     }
 
-
-    /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesMvccEntryExtras(attrData, mvcc) : this;
-    }
-
     /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
index c02f937..29b7b4f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where MVCC and obsolete version are set.
  */
@@ -49,11 +46,6 @@ public class GridCacheMvccObsoleteEntryExtras extends GridCacheEntryExtrasAdapte
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesMvccObsoleteEntryExtras(attrData, mvcc, obsoleteVer) : this;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
index 51c5eda..9b56ebd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccObsoleteTtlEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where MVCC, obsolete version and TTL are set.
  */
@@ -61,12 +58,6 @@ public class GridCacheMvccObsoleteTtlEntryExtras extends GridCacheEntryExtrasAda
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesMvccObsoleteTtlEntryExtras(attrData, mvcc, obsoleteVer, ttl,
-            expireTime) : this;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
index 58d9c78..d41c05c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheMvccTtlEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where MVCC and TTL are set.
  */
@@ -54,11 +51,6 @@ public class GridCacheMvccTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesMvccTtlEntryExtras(attrData, mvcc, ttl, expireTime) : this;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheMvcc mvcc() {
         return mvcc;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
index 1650f9f..fd1da38 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where obsolete version is set.
  */
@@ -43,11 +40,6 @@ public class GridCacheObsoleteEntryExtras extends GridCacheEntryExtrasAdapter {
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesObsoleteEntryExtras(attrData, obsoleteVer) : this;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
         return mvcc != null ? new GridCacheMvccObsoleteEntryExtras(mvcc, obsoleteVer) : this;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
index ab0358d..f4bb0b6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheObsoleteTtlEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where obsolete version and TTL are set.
  */
@@ -54,12 +51,6 @@ public class GridCacheObsoleteTtlEntryExtras extends GridCacheEntryExtrasAdapter
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesObsoleteTtlEntryExtras(attrData, obsoleteVer, ttl,
-            expireTime) : this;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
         return mvcc != null ? new GridCacheMvccObsoleteTtlEntryExtras(mvcc, obsoleteVer, ttl, expireTime) : this;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e62f6d07/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
index abd26f9..d334ede 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/extras/GridCacheTtlEntryExtras.java
@@ -19,11 +19,8 @@ package org.apache.ignite.internal.processors.cache.extras;
 
 import org.apache.ignite.internal.processors.cache.*;
 import org.apache.ignite.internal.processors.cache.version.*;
-import org.apache.ignite.internal.util.*;
 import org.apache.ignite.internal.util.typedef.internal.*;
 
-import java.util.*;
-
 /**
  * Extras where TTL and expire time are set.
  */
@@ -48,11 +45,6 @@ public class GridCacheTtlEntryExtras extends GridCacheEntryExtrasAdapter {
     }
 
     /** {@inheritDoc} */
-    @Override public GridCacheEntryExtras attributesData(GridLeanMap<Integer, Object> attrData) {
-        return attrData != null ? new GridCacheAttributesTtlEntryExtras(attrData, ttl, expireTime) : this;
-    }
-
-    /** {@inheritDoc} */
     @Override public GridCacheEntryExtras mvcc(GridCacheMvcc mvcc) {
         return mvcc != null ? new GridCacheMvccTtlEntryExtras(mvcc, ttl, expireTime) : this;
     }


[20/27] incubator-ignite git commit: GridGain -> Ignite

Posted by sb...@apache.org.
GridGain -> Ignite


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

Branch: refs/heads/ignite-752
Commit: c4a4bd43afff653f5d6fed4c5b01b520e5ed19b8
Parents: 0055b40
Author: Anton Vinogradov <av...@gridgain.com>
Authored: Thu Jul 23 15:02:34 2015 +0300
Committer: Anton Vinogradov <av...@gridgain.com>
Committed: Thu Jul 23 15:02:34 2015 +0300

----------------------------------------------------------------------
 .../apache/ignite/cache/store/jdbc/CacheJdbcBlobStoreFactory.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c4a4bd43/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcBlobStoreFactory.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcBlobStoreFactory.java b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcBlobStoreFactory.java
index 297f32e..cf493a0 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcBlobStoreFactory.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/store/jdbc/CacheJdbcBlobStoreFactory.java
@@ -45,7 +45,7 @@ import javax.sql.*;
  *                      ...
  *                      &lt;property name="cacheStoreFactory"&gt;
  *                          &lt;bean class="org.apache.ignite.cache.store.jdbc.CacheJdbcBlobStoreFactory"&gt;
- *                              &lt;property name="user" value = "GridGain" /&gt;
+ *                              &lt;property name="user" value = "Ignite" /&gt;
  *                              &lt;property name="dataSourceBean" value = "simpleDataSource" /&gt;
  *                          &lt;/bean&gt;
  *                      &lt;/property&gt;