http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java
index bf40a85..491cdfd 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAdapter.java
@@ -52,8 +52,6 @@ import static org.gridgain.grid.cache.GridCacheFlag.*;
 import static org.gridgain.grid.cache.GridCachePeekMode.*;
 import static org.gridgain.grid.cache.GridCacheTxConcurrency.*;
 import static org.gridgain.grid.cache.GridCacheTxIsolation.*;
-import static org.gridgain.grid.cache.GridCacheTxState.*;
-import static org.apache.ignite.events.IgniteEventType.*;
 import static org.gridgain.grid.kernal.GridClosureCallMode.*;
 import static org.gridgain.grid.kernal.processors.dr.GridDrType.*;
 import static 
org.gridgain.grid.kernal.processors.task.GridTaskThreadContextKey.*;
@@ -80,8 +78,8 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
     /** {@link GridCacheReturn}-to-value conversion. */
     private static final IgniteClosure RET2VAL =
-        new CX1<IgniteFuture<GridCacheReturn<Object>>, Object>() {
-            @Nullable @Override public Object 
applyx(IgniteFuture<GridCacheReturn<Object>> fut) throws IgniteCheckedException 
{
+        new CX1<InternalFuture<GridCacheReturn<Object>>, Object>() {
+            @Nullable @Override public Object 
applyx(InternalFuture<GridCacheReturn<Object>> fut) throws 
IgniteCheckedException {
                 return fut.get().value();
             }
 
@@ -92,8 +90,8 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
     /** {@link GridCacheReturn}-to-success conversion. */
     private static final IgniteClosure RET2FLAG =
-        new CX1<IgniteFuture<GridCacheReturn<Object>>, Boolean>() {
-            @Override public Boolean 
applyx(IgniteFuture<GridCacheReturn<Object>> fut) throws IgniteCheckedException 
{
+        new CX1<InternalFuture<GridCacheReturn<Object>>, Boolean>() {
+            @Override public Boolean 
applyx(InternalFuture<GridCacheReturn<Object>> fut) throws 
IgniteCheckedException {
                 return fut.get().success();
             }
 
@@ -485,7 +483,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Optional filter.
      * @return Locks future.
      */
-    public abstract IgniteFuture<Boolean> txLockAsync(
+    public abstract InternalFuture<Boolean> txLockAsync(
         Collection<? extends K> keys,
         long timeout,
         GridCacheTxLocalEx<K, V> tx,
@@ -1203,7 +1201,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             // Send job to remote nodes only.
             Collection<ClusterNode> nodes = 
ctx.grid().forCache(name()).forRemotes().nodes();
 
-            IgniteFuture<Object> fut = null;
+            InternalFuture<Object> fut = null;
 
             if (!nodes.isEmpty()) {
                 ctx.kernalContext().task().setThreadContext(TC_TIMEOUT, 
timeout);
@@ -1300,15 +1298,15 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> getForcePrimaryAsync(final K key) {
+    @Override public InternalFuture<V> getForcePrimaryAsync(final K key) {
         ctx.denyOnFlag(LOCAL);
 
         String taskName = ctx.kernalContext().job().currentTaskName();
 
         return getAllAsync(Collections.singletonList(key), /*force 
primary*/true, /*skip tx*/false, null, null,
-            taskName, true).chain(new CX1<IgniteFuture<Map<K, V>>, V>() {
+            taskName, true).chain(new CX1<InternalFuture<Map<K, V>>, V>() {
                 @Override
-                public V applyx(IgniteFuture<Map<K, V>> e) throws 
IgniteCheckedException {
+                public V applyx(InternalFuture<Map<K, V>> e) throws 
IgniteCheckedException {
                     return e.get().get(key);
                 }
             });
@@ -1322,7 +1320,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Map<K, V>> getAllOutTxAsync(List<K> keys) {
+    @Override public InternalFuture<Map<K, V>> getAllOutTxAsync(List<K> keys) {
         String taskName = ctx.kernalContext().job().currentTaskName();
 
         return getAllAsync(keys, ctx.hasFlag(GET_PRIMARY), /*skip tx*/true, 
null, null, taskName, true);
@@ -1334,7 +1332,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> reloadAsync(K key) {
+    @Override public InternalFuture<V> reloadAsync(K key) {
         return reloadAsync(key, (IgnitePredicate<GridCacheEntry<K, V>>[])null);
     }
 
@@ -1344,7 +1342,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> reloadAllAsync(@Nullable Collection<? 
extends K> keys) {
+    @Override public InternalFuture<?> reloadAllAsync(@Nullable Collection<? 
extends K> keys) {
         return reloadAllAsync(keys, (IgnitePredicate<GridCacheEntry<K, 
V>>[])null);
     }
 
@@ -1356,7 +1354,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> reloadAllAsync() {
+    @Override public InternalFuture<?> reloadAllAsync() {
         ctx.denyOnFlags(F.asList(LOCAL, READ));
 
         return reloadAllAsync(keySet(), (IgnitePredicate<GridCacheEntry<K, 
V>>[])null);
@@ -1370,7 +1368,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param vis Visitor.
      * @return Future.
      */
-    public IgniteFuture<Object> readThroughAllAsync(final Collection<? extends 
K> keys, boolean reload,
+    public InternalFuture<Object> readThroughAllAsync(final Collection<? 
extends K> keys, boolean reload,
         @Nullable final GridCacheTxEx<K, V> tx, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter, @Nullable UUID subjId,
         String taskName, final IgniteBiInClosure<K, V> vis) {
         return ctx.closures().callLocalSafe(new GPC<Object>() {
@@ -1409,7 +1407,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Filter.
      * @return Future.
      */
-    public IgniteFuture<Map<K, V>> reloadAllAsync(@Nullable Collection<? 
extends K> keys, boolean ret,
+    public InternalFuture<Map<K, V>> reloadAllAsync(@Nullable Collection<? 
extends K> keys, boolean ret,
         @Nullable UUID subjId, String taskName, @Nullable final 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         ctx.denyOnFlag(READ);
 
@@ -1469,7 +1467,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
                 final Collection<K> loadedKeys = new GridConcurrentHashSet<>();
 
-                IgniteFuture<Object> readFut =
+                InternalFuture<Object> readFut =
                     readThroughAllAsync(absentKeys, true, null, filter, 
subjId, taskName, new CI2<K, V>() {
                         /** Version for all loaded entries. */
                         private GridCacheVersion nextVer = 
ctx.versions().next();
@@ -1538,8 +1536,8 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
                         }
                     });
 
-                return readFut.chain(new CX1<IgniteFuture<Object>, Map<K, 
V>>() {
-                    @Override public Map<K, V> applyx(IgniteFuture<Object> e) 
throws IgniteCheckedException {
+                return readFut.chain(new CX1<InternalFuture<Object>, Map<K, 
V>>() {
+                    @Override public Map<K, V> applyx(InternalFuture<Object> 
e) throws IgniteCheckedException {
                         // Touch all not loaded keys.
                         for (K key : absentKeys) {
                             if (!loadedKeys.contains(key)) {
@@ -1599,12 +1597,12 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> getAsync(final K key) {
-        IgniteFuture<V> fut = getAsync(key, true, null);
+    @Override public InternalFuture<V> getAsync(final K key) {
+        InternalFuture<V> fut = getAsync(key, true, null);
 
         if (ctx.config().getInterceptor() != null)
-            return fut.chain(new CX1<IgniteFuture<V>, V>() {
-                @Override public V applyx(IgniteFuture<V> f) throws 
IgniteCheckedException {
+            return fut.chain(new CX1<InternalFuture<V>, V>() {
+                @Override public V applyx(InternalFuture<V> f) throws 
IgniteCheckedException {
                     return (V)ctx.config().getInterceptor().onGet(key, 
f.get());
                 }
             });
@@ -1623,12 +1621,12 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Map<K, V>> getAllAsync(@Nullable final 
Collection<? extends K> keys) {
-        IgniteFuture<Map<K, V>> fut = getAllAsync(keys, true, null);
+    @Override public InternalFuture<Map<K, V>> getAllAsync(@Nullable final 
Collection<? extends K> keys) {
+        InternalFuture<Map<K, V>> fut = getAllAsync(keys, true, null);
 
         if (ctx.config().getInterceptor() != null)
-            return fut.chain(new CX1<IgniteFuture<Map<K, V>>, Map<K, V>>() {
-                @Override public Map<K, V> applyx(IgniteFuture<Map<K, V>> f) 
throws IgniteCheckedException {
+            return fut.chain(new CX1<InternalFuture<Map<K, V>>, Map<K, V>>() {
+                @Override public Map<K, V> applyx(InternalFuture<Map<K, V>> f) 
throws IgniteCheckedException {
                     return interceptGet(keys, f.get());
                 }
             });
@@ -1678,7 +1676,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    protected IgniteFuture<Map<K, V>> getAllAsync(
+    protected InternalFuture<Map<K, V>> getAllAsync(
         @Nullable Collection<? extends K> keys,
         boolean forcePrimary,
         boolean skipTx,
@@ -1694,7 +1692,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    public IgniteFuture<Map<K, V>> getAllAsync(@Nullable final Collection<? 
extends K> keys,
+    public InternalFuture<Map<K, V>> getAllAsync(@Nullable final Collection<? 
extends K> keys,
         @Nullable GridCacheEntryEx<K, V> cached, boolean checkTx, @Nullable 
final UUID subjId, final String taskName,
         final boolean deserializePortable, final boolean forcePrimary,
         @Nullable final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
@@ -1903,8 +1901,8 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
                                 return map;
                             }
                         }), true),
-                        new C2<Map<K, V>, Exception, IgniteFuture<Map<K, 
V>>>() {
-                            @Override public IgniteFuture<Map<K, V>> 
apply(Map<K, V> map, Exception e) {
+                        new C2<Map<K, V>, Exception, InternalFuture<Map<K, 
V>>>() {
+                            @Override public InternalFuture<Map<K, V>> 
apply(Map<K, V> map, Exception e) {
                                 if (e != null)
                                     return new 
GridFinishedFuture<>(ctx.kernalContext(), e);
 
@@ -1964,7 +1962,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             final GridCacheEntryEx<K, V> cached0 = cached;
 
             return asyncOp(tx, new AsyncOp<Map<K, V>>(keys) {
-                @Override public IgniteFuture<Map<K, V>> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+                @Override public InternalFuture<Map<K, V>> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                     return ctx.wrapCloneMap(tx.getAllAsync(ctx, keys, cached0, 
deserializePortable, filter));
                 }
             });
@@ -2027,13 +2025,13 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> putAsync(K key, V val,
+    @Override public InternalFuture<V> putAsync(K key, V val,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         return putAsync(key, val, null, -1, filter);
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> putAsync(final K key, final V val, 
@Nullable final GridCacheEntryEx<K, V> entry,
+    @Override public InternalFuture<V> putAsync(final K key, final V val, 
@Nullable final GridCacheEntryEx<K, V> entry,
         final long ttl, @Nullable final IgnitePredicate<GridCacheEntry<K, 
V>>... filter) {
         A.notNull(key, "key", val, "val");
 
@@ -2046,9 +2044,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
         return ctx.wrapClone(asyncOp(new AsyncOp<V>(key) {
             @Override
-            public IgniteFuture<V> op(GridCacheTxLocalAdapter<K, V> tx) {
+            public InternalFuture<V> op(GridCacheTxLocalAdapter<K, V> tx) {
                 return tx.putAllAsync(ctx, F.t(key, val), true, entry, ttl, 
filter)
-                    .chain((IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
V>)RET2VAL);
+                    .chain((IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
V>)RET2VAL);
             }
 
             @Override
@@ -2104,7 +2102,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> putAllDrAsync(final Map<? extends K, 
GridCacheDrInfo<V>> drMap)
+    @Override public InternalFuture<?> putAllDrAsync(final Map<? extends K, 
GridCacheDrInfo<V>> drMap)
         throws IgniteCheckedException {
         if (F.isEmpty(drMap))
             return new GridFinishedFuture<Object>(ctx.kernalContext());
@@ -2114,7 +2112,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncInOp(drMap.keySet()) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.putAllDrAsync(ctx, drMap);
             }
 
@@ -2156,7 +2154,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
         return syncOp(new SyncOp<R>(true) {
             @Override public R op(GridCacheTxLocalAdapter<K, V> tx) throws 
IgniteCheckedException {
-                IgniteFuture<GridCacheReturn<V>> ret = 
tx.transformAllAsync(ctx,
+                InternalFuture<GridCacheReturn<V>> ret = 
tx.transformAllAsync(ctx,
                     F.t(key, new 
GridCacheTransformComputeClosure<>(transformer)), true, null, -1);
 
                 return transformer.apply(ret.get().value()).get2();
@@ -2169,13 +2167,13 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> putxAsync(K key, V val,
+    @Override public InternalFuture<Boolean> putxAsync(K key, V val,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         return putxAsync(key, val, null, -1, filter);
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> putxAsync(final K key, final V val,
+    @Override public InternalFuture<Boolean> putxAsync(final K key, final V 
val,
         @Nullable final GridCacheEntryEx<K, V> entry, final long ttl,
         @Nullable final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         A.notNull(key, "key", val, "val");
@@ -2188,9 +2186,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncOp<Boolean>(key) {
-            @Override public IgniteFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 return tx.putAllAsync(ctx, F.t(key, val), false, entry, ttl, 
filter).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
             }
 
             @Override public String toString() {
@@ -2200,12 +2198,12 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAsync(final K key, final 
IgniteClosure<V, V> transformer) {
+    @Override public InternalFuture<?> transformAsync(final K key, final 
IgniteClosure<V, V> transformer) {
         return transformAsync(key, transformer, null, -1);
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAsync(final K key, final 
IgniteClosure<V, V> transformer,
+    @Override public InternalFuture<?> transformAsync(final K key, final 
IgniteClosure<V, V> transformer,
         @Nullable final GridCacheEntryEx<K, V> entry, final long ttl) {
         A.notNull(key, "key", transformer, "transformer");
 
@@ -2215,7 +2213,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncInOp(key) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.transformAllAsync(ctx, F.t(key, transformer), false, 
entry, ttl);
             }
 
@@ -2248,7 +2246,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> putIfAbsentAsync(final K key, final V 
val) {
+    @Override public InternalFuture<V> putIfAbsentAsync(final K key, final V 
val) {
         A.notNull(key, "key", val, "val");
 
         if (keyCheck)
@@ -2259,9 +2257,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return ctx.wrapClone(asyncOp(new AsyncOp<V>(key) {
-            @Override public IgniteFuture<V> op(GridCacheTxLocalAdapter<K, V> 
tx) {
+            @Override public InternalFuture<V> op(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.putAllAsync(ctx, F.t(key, val), true, null, -1, 
ctx.noPeekArray())
-                    .chain((IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
V>)RET2VAL);
+                    .chain((IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
V>)RET2VAL);
             }
 
             @Override public String toString() {
@@ -2293,7 +2291,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> putxIfAbsentAsync(final K key, 
final V val) {
+    @Override public InternalFuture<Boolean> putxIfAbsentAsync(final K key, 
final V val) {
         A.notNull(key, "key", val, "val");
 
         if (keyCheck)
@@ -2304,9 +2302,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncOp<Boolean>(key) {
-            @Override public IgniteFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 return tx.putAllAsync(ctx, F.t(key, val), false, null, -1, 
ctx.noPeekArray()).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
             }
 
             @Override public String toString() {
@@ -2339,7 +2337,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> replaceAsync(final K key, final V val) {
+    @Override public InternalFuture<V> replaceAsync(final K key, final V val) {
         A.notNull(key, "key", val, "val");
 
         if (keyCheck)
@@ -2350,9 +2348,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return ctx.wrapClone(asyncOp(new AsyncOp<V>(key) {
-            @Override public IgniteFuture<V> op(GridCacheTxLocalAdapter<K, V> 
tx) {
+            @Override public InternalFuture<V> op(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.putAllAsync(ctx, F.t(key, val), true, null, -1, 
ctx.hasPeekArray()).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
V>)RET2VAL);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
V>)RET2VAL);
             }
 
             @Override public String toString() {
@@ -2384,7 +2382,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replacexAsync(final K key, final V 
val) {
+    @Override public InternalFuture<Boolean> replacexAsync(final K key, final 
V val) {
         A.notNull(key, "key", val, "val");
 
         if (keyCheck)
@@ -2395,9 +2393,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncOp<Boolean>(key) {
-            @Override public IgniteFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 return tx.putAllAsync(ctx, F.t(key, val), false, null, -1, 
ctx.hasPeekArray()).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
             }
 
             @Override public String toString() {
@@ -2436,7 +2434,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replaceAsync(final K key, final V 
oldVal, final V newVal) {
+    @Override public InternalFuture<Boolean> replaceAsync(final K key, final V 
oldVal, final V newVal) {
         A.notNull(key, "key", oldVal, "oldVal", newVal, "newVal");
 
         if (keyCheck)
@@ -2449,7 +2447,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncOp<Boolean>(key) {
-            @Override public IgniteFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 // Register before hiding in the filter.
                 if (ctx.deploymentEnabled()) {
                     try {
@@ -2461,7 +2459,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
                 }
 
                 return tx.putAllAsync(ctx, F.t(key, newVal), false, null, -1, 
ctx.equalsPeekArray(oldVal)).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
             }
 
             @Override public String toString() {
@@ -2531,7 +2529,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> putAllAsync(final Map<? extends K, ? 
extends V> m,
+    @Override public InternalFuture<?> putAllAsync(final Map<? extends K, ? 
extends V> m,
         @Nullable final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         if (F.isEmpty(m))
             return new GridFinishedFuture<Object>(ctx.kernalContext());
@@ -2544,7 +2542,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncInOp(m.keySet()) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.putAllAsync(ctx, m, false, null, -1, filter);
             }
 
@@ -2555,7 +2553,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAllAsync(@Nullable final Map<? 
extends K, ? extends IgniteClosure<V, V>> m) {
+    @Override public InternalFuture<?> transformAllAsync(@Nullable final Map<? 
extends K, ? extends IgniteClosure<V, V>> m) {
         if (F.isEmpty(m))
             return new GridFinishedFuture<>(ctx.kernalContext());
 
@@ -2565,7 +2563,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncInOp(m.keySet()) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.transformAllAsync(ctx, m, false, null, -1);
             }
 
@@ -2576,7 +2574,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAllAsync(@Nullable Set<? extends 
K> keys,
+    @Override public InternalFuture<?> transformAllAsync(@Nullable Set<? 
extends K> keys,
         final IgniteClosure<V, V> transformer) throws IgniteCheckedException {
         if (F.isEmpty(keys))
             return new GridFinishedFuture<>(ctx.kernalContext());
@@ -2622,12 +2620,12 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> removeAsync(K key, 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
+    @Override public InternalFuture<V> removeAsync(K key, 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         return removeAsync(key, null, filter);
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> removeAsync(final K key, @Nullable final 
GridCacheEntryEx<K, V> entry,
+    @Override public InternalFuture<V> removeAsync(final K key, @Nullable 
final GridCacheEntryEx<K, V> entry,
         @Nullable final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         ctx.denyOnLocalRead();
 
@@ -2637,10 +2635,10 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             validateCacheKey(key);
 
         return ctx.wrapClone(asyncOp(new AsyncOp<V>(key) {
-            @Override public IgniteFuture<V> op(GridCacheTxLocalAdapter<K, V> 
tx) {
+            @Override public InternalFuture<V> op(GridCacheTxLocalAdapter<K, 
V> tx) {
                 // TODO should we invoke interceptor here?
                 return tx.removeAllAsync(ctx, Collections.singletonList(key), 
null, true, filter)
-                    .chain((IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
V>) RET2VAL);
+                    .chain((IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
V>) RET2VAL);
             }
 
             @Override public String toString() {
@@ -2683,7 +2681,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> removeAllAsync(@Nullable final 
Collection<? extends K> keys,
+    @Override public InternalFuture<?> removeAllAsync(@Nullable final 
Collection<? extends K> keys,
         final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         if (F.isEmpty(keys))
             return new GridFinishedFuture<Object>(ctx.kernalContext());
@@ -2694,7 +2692,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncInOp(keys) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.removeAllAsync(ctx, keys, null, false, filter);
             }
 
@@ -2732,12 +2730,12 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removexAsync(K key, 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
+    @Override public InternalFuture<Boolean> removexAsync(K key, 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         return removexAsync(key, null, filter);
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removexAsync(final K key, @Nullable 
final GridCacheEntryEx<K, V> entry,
+    @Override public InternalFuture<Boolean> removexAsync(final K key, 
@Nullable final GridCacheEntryEx<K, V> entry,
         @Nullable final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         ctx.denyOnLocalRead();
 
@@ -2747,9 +2745,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             validateCacheKey(key);
 
         return asyncOp(new AsyncOp<Boolean>(key) {
-            @Override public IgniteFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 return tx.removeAllAsync(ctx, Collections.singletonList(key), 
entry, false, filter).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
             }
 
             @Override public String toString() {
@@ -2804,7 +2802,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> removeAllDrAsync(final Map<? extends K, 
GridCacheVersion> drMap)
+    @Override public InternalFuture<?> removeAllDrAsync(final Map<? extends K, 
GridCacheVersion> drMap)
         throws IgniteCheckedException {
         ctx.denyOnLocalRead();
 
@@ -2814,7 +2812,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.dr().onReceiveCacheEntriesReceived(drMap.size());
 
         return asyncOp(new AsyncInOp(drMap.keySet()) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.removeAllDrAsync(ctx, drMap);
             }
 
@@ -2849,7 +2847,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<GridCacheReturn<V>> removexAsync(final K 
key, final V val) {
+    @Override public InternalFuture<GridCacheReturn<V>> removexAsync(final K 
key, final V val) {
         ctx.denyOnLocalRead();
 
         A.notNull(key, "key", val, "val");
@@ -2858,7 +2856,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             validateCacheKey(key);
 
         return asyncOp(new AsyncOp<GridCacheReturn<V>>(key) {
-            @Override public IgniteFuture<GridCacheReturn<V>> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<GridCacheReturn<V>> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 // Register before hiding in the filter.
                 try {
                     if (ctx.deploymentEnabled())
@@ -2879,7 +2877,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<GridCacheReturn<V>> replacexAsync(final K 
key, final V oldVal, final V newVal) {
+    @Override public InternalFuture<GridCacheReturn<V>> replacexAsync(final K 
key, final V oldVal, final V newVal) {
         A.notNull(key, "key", oldVal, "oldVal", newVal, "newVal");
 
         if (keyCheck)
@@ -2888,7 +2886,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         ctx.denyOnLocalRead();
 
         return asyncOp(new AsyncOp<GridCacheReturn<V>>(key) {
-            @Override public IgniteFuture<GridCacheReturn<V>> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<GridCacheReturn<V>> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 // Register before hiding in the filter.
                 try {
                     if (ctx.deploymentEnabled())
@@ -2940,7 +2938,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removeAsync(final K key, final V 
val) {
+    @Override public InternalFuture<Boolean> removeAsync(final K key, final V 
val) {
         ctx.denyOnLocalRead();
 
         A.notNull(key, "key", val, "val");
@@ -2951,7 +2949,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         validateCacheValue(val);
 
         return asyncOp(new AsyncOp<Boolean>(key) {
-            @Override public IgniteFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            @Override public InternalFuture<Boolean> 
op(GridCacheTxLocalAdapter<K, V> tx) {
                 // Register before hiding in the filter.
                 if (ctx.deploymentEnabled()) {
                     try {
@@ -2975,7 +2973,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
                 return tx.removeAllAsync(ctx, Collections.singletonList(key0), 
null, false,
                     ctx.vararg(F.<K, V>cacheContainsPeek(val))).chain(
-                    (IgniteClosure<IgniteFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
+                    (IgniteClosure<InternalFuture<GridCacheReturn<V>>, 
Boolean>)RET2FLAG);
             }
 
             @Override public String toString() {
@@ -3005,13 +3003,13 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> removeAllAsync(final 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
+    @Override public InternalFuture<?> removeAllAsync(final 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         ctx.denyOnLocalRead();
 
         final Set<? extends K> keys = keySet(filter);
 
         return asyncOp(new AsyncInOp(keys) {
-            @Override public IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
+            @Override public InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, 
V> tx) {
                 return tx.removeAllAsync(ctx, keys, null, false, null);
             }
 
@@ -3061,7 +3059,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> lockAsync(K key, long timeout,
+    @Override public InternalFuture<Boolean> lockAsync(K key, long timeout,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         A.notNull(key, "key");
 
@@ -3225,7 +3223,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
         assert tx0 != null;
 
-        IgniteFuture<?> lockFut = tx0.groupLockAsync(ctx, 
(Collection)F.asList(grpLockKey));
+        InternalFuture<?> lockFut = tx0.groupLockAsync(ctx, 
(Collection)F.asList(grpLockKey));
 
         try {
             lockFut.get();
@@ -3355,7 +3353,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> loadCacheAsync(final IgniteBiPredicate<K, 
V> p, final long ttl, final Object[] args) {
+    @Override public InternalFuture<?> loadCacheAsync(final 
IgniteBiPredicate<K, V> p, final long ttl, final Object[] args) {
         return ctx.closures().callLocalSafe(
             ctx.projectSafe(new Callable<Object>() {
                 @Nullable
@@ -3536,18 +3534,18 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @return Transaction commit future.
      */
     @SuppressWarnings("unchecked")
-    public IgniteFuture<GridCacheTx> commitTxAsync(final GridCacheTx tx) {
+    public InternalFuture<GridCacheTx> commitTxAsync(final GridCacheTx tx) {
         FutureHolder holder = lastFut.get();
 
         holder.lock();
 
         try {
-            IgniteFuture fut = holder.future();
+            InternalFuture fut = holder.future();
 
             if (fut != null && !fut.isDone()) {
-                IgniteFuture<GridCacheTx> f = new GridEmbeddedFuture<>(fut,
-                    new C2<Object, Exception, IgniteFuture<GridCacheTx>>() {
-                        @Override public IgniteFuture<GridCacheTx> 
apply(Object o, Exception e) {
+                InternalFuture<GridCacheTx> f = new GridEmbeddedFuture<>(fut,
+                    new C2<Object, Exception, InternalFuture<GridCacheTx>>() {
+                        @Override public InternalFuture<GridCacheTx> 
apply(Object o, Exception e) {
                             return tx.commitAsync();
                         }
                     }, ctx.kernalContext());
@@ -3557,7 +3555,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
                 return f;
             }
 
-            IgniteFuture<GridCacheTx> f = tx.commitAsync();
+            InternalFuture<GridCacheTx> f = tx.commitAsync();
 
             saveFuture(holder, f);
 
@@ -3613,7 +3611,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     public void awaitLastFut() {
         FutureHolder holder = lastFut.get();
 
-        IgniteFuture fut = holder.future();
+        InternalFuture fut = holder.future();
 
         if (fut != null && !fut.isDone()) {
             try {
@@ -3638,7 +3636,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             // Send job to remote nodes only.
             Collection<ClusterNode> nodes = 
ctx.grid().forCache(name()).forRemotes().nodes();
 
-            IgniteFuture<Collection<Integer>> fut = null;
+            InternalFuture<Collection<Integer>> fut = null;
 
             if (!nodes.isEmpty()) {
                 ctx.kernalContext().task().setThreadContext(TC_TIMEOUT, 
gridCfg.getNetworkTimeout());
@@ -3708,7 +3706,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
                 return t;
             }
-            catch (GridInterruptedException | GridCacheTxHeuristicException | 
GridCacheTxRollbackException e) {
+            catch (InternalInterruptedException | 
GridCacheTxHeuristicException | GridCacheTxRollbackException e) {
                 throw e;
             }
             catch (IgniteCheckedException e) {
@@ -3743,7 +3741,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @return Future.
      */
     @SuppressWarnings("unchecked")
-    private <T> IgniteFuture<T> asyncOp(final AsyncOp<T> op) {
+    private <T> InternalFuture<T> asyncOp(final AsyncOp<T> op) {
         try {
             checkJta();
         }
@@ -3778,8 +3776,8 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @return Future.
      */
     @SuppressWarnings("unchecked")
-    protected <T> IgniteFuture<T> asyncOp(GridCacheTxLocalAdapter<K, V> tx, 
final AsyncOp<T> op) {
-        IgniteFuture<T> fail = asyncOpAcquire();
+    protected <T> InternalFuture<T> asyncOp(GridCacheTxLocalAdapter<K, V> tx, 
final AsyncOp<T> op) {
+        InternalFuture<T> fail = asyncOpAcquire();
 
         if (fail != null)
             return fail;
@@ -3789,14 +3787,14 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         holder.lock();
 
         try {
-            IgniteFuture fut = holder.future();
+            InternalFuture fut = holder.future();
 
             if (fut != null && !fut.isDone()) {
                 final GridCacheTxLocalAdapter<K, V> tx0 = tx;
 
-                IgniteFuture<T> f = new GridEmbeddedFuture<>(fut,
-                    new C2<T, Exception, IgniteFuture<T>>() {
-                        @Override public IgniteFuture<T> apply(T t, Exception 
e) {
+                InternalFuture<T> f = new GridEmbeddedFuture<>(fut,
+                    new C2<T, Exception, InternalFuture<T>>() {
+                        @Override public InternalFuture<T> apply(T t, 
Exception e) {
                             return op.op(tx0);
                         }
                     }, ctx.kernalContext());
@@ -3806,7 +3804,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
                 return f;
             }
 
-            IgniteFuture<T> f = op.op(tx);
+            InternalFuture<T> f = op.op(tx);
 
             saveFuture(holder, f);
 
@@ -3827,7 +3825,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param holder Future holder.
      * @param fut Future to save.
      */
-    protected void saveFuture(final FutureHolder holder, IgniteFuture<?> fut) {
+    protected void saveFuture(final FutureHolder holder, InternalFuture<?> 
fut) {
         assert holder != null;
         assert fut != null;
         assert holder.holdsLock();
@@ -3840,8 +3838,8 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             asyncOpRelease();
         }
         else {
-            fut.listenAsync(new CI1<IgniteFuture<?>>() {
-                @Override public void apply(IgniteFuture<?> f) {
+            fut.listenAsync(new CI1<InternalFuture<?>>() {
+                @Override public void apply(InternalFuture<?> f) {
                     asyncOpRelease();
 
                     if (!holder.tryLock())
@@ -3864,7 +3862,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      *
      * @return Failed future if waiting was interrupted.
      */
-    @Nullable protected <T> IgniteFuture<T> asyncOpAcquire() {
+    @Nullable protected <T> InternalFuture<T> asyncOpAcquire() {
         try {
             if (asyncOpsSem != null)
                 asyncOpsSem.acquire();
@@ -3874,7 +3872,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         catch (InterruptedException e) {
             Thread.currentThread().interrupt();
 
-            return new GridFinishedFutureEx<>(new 
GridInterruptedException("Failed to wait for asynchronous " +
+            return new GridFinishedFutureEx<>(new 
InternalInterruptedException("Failed to wait for asynchronous " +
                 "operation permit (thread got interrupted).", e));
         }
     }
@@ -3928,7 +3926,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> forceRepartition() {
+    @Override public InternalFuture<?> forceRepartition() {
         ctx.preloader().forcePreload();
 
         return ctx.preloader().syncFuture();
@@ -4314,7 +4312,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Filter to evaluate.
      * @return Read operation future.
      */
-    public final IgniteFuture<V> getAsync(final K key, boolean 
deserializePortable,
+    public final InternalFuture<V> getAsync(final K key, boolean 
deserializePortable,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>> filter) {
         ctx.denyOnFlag(LOCAL);
 
@@ -4325,9 +4323,9 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
             return new GridFinishedFuture<>(ctx.kernalContext(), e);
         }
 
-        return getAllAsync(Collections.singletonList(key), 
deserializePortable, filter).chain(new CX1<IgniteFuture<Map<K, V>>, V>() {
+        return getAllAsync(Collections.singletonList(key), 
deserializePortable, filter).chain(new CX1<InternalFuture<Map<K, V>>, V>() {
             @Override
-            public V applyx(IgniteFuture<Map<K, V>> e) throws 
IgniteCheckedException {
+            public V applyx(InternalFuture<Map<K, V>> e) throws 
IgniteCheckedException {
                 return e.get().get(key);
             }
         });
@@ -4398,7 +4396,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Filter to evaluate.
      * @return Reload future.
      */
-    public IgniteFuture<?> reloadAllAsync(@Nullable Collection<? extends K> 
keys,
+    public InternalFuture<?> reloadAllAsync(@Nullable Collection<? extends K> 
keys,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         UUID subjId = ctx.subjectIdPerCall(null);
 
@@ -4412,7 +4410,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Filter to evaluate.
      * @return Reload future.
      */
-    public IgniteFuture<V> reloadAsync(final K key,
+    public InternalFuture<V> reloadAsync(final K key,
         @Nullable final IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         ctx.denyOnFlags(F.asList(LOCAL, READ));
 
@@ -4441,7 +4439,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Filter to evaluate.
      * @return Reload future.
      */
-    public IgniteFuture<?> reloadAllAsync(@Nullable final 
IgnitePredicate<GridCacheEntry<K, V>> filter) {
+    public InternalFuture<?> reloadAllAsync(@Nullable final 
IgnitePredicate<GridCacheEntry<K, V>> filter) {
         ctx.denyOnFlag(READ);
 
         return ctx.closures().callLocalSafe(ctx.projectSafe(new GPC() {
@@ -4458,7 +4456,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
      * @param filter Filter to evaluate.
      * @return Read future.
      */
-    public IgniteFuture<Map<K, V>> getAllAsync(@Nullable Collection<? extends 
K> keys,
+    public InternalFuture<Map<K, V>> getAllAsync(@Nullable Collection<? 
extends K> keys,
         boolean deserializePortable, @Nullable 
IgnitePredicate<GridCacheEntry<K, V>> filter) {
         String taskName = ctx.kernalContext().job().currentTaskName();
 
@@ -4649,7 +4647,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
          * @param tx Transaction.
          * @return Operation return value.
          */
-        public abstract IgniteFuture<T> op(GridCacheTxLocalAdapter<K, V> tx);
+        public abstract InternalFuture<T> op(GridCacheTxLocalAdapter<K, V> tx);
     }
 
     /**
@@ -4672,15 +4670,15 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
 
         /** {@inheritDoc} */
         @SuppressWarnings({"unchecked"})
-        @Override public final IgniteFuture<Object> 
op(GridCacheTxLocalAdapter<K, V> tx) {
-            return (IgniteFuture<Object>)inOp(tx);
+        @Override public final InternalFuture<Object> 
op(GridCacheTxLocalAdapter<K, V> tx) {
+            return (InternalFuture<Object>)inOp(tx);
         }
 
         /**
          * @param tx Transaction.
          * @return Operation return value.
          */
-        public abstract IgniteFuture<?> inOp(GridCacheTxLocalAdapter<K, V> tx);
+        public abstract InternalFuture<?> inOp(GridCacheTxLocalAdapter<K, V> 
tx);
     }
 
     /**
@@ -4794,7 +4792,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
         private final ReentrantLock lock = new ReentrantLock();
 
         /** Future. */
-        private IgniteFuture fut;
+        private InternalFuture fut;
 
         /**
          * Tries to acquire lock.
@@ -4832,7 +4830,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
          *
          * @return Future.
          */
-        public IgniteFuture future() {
+        public InternalFuture future() {
             return fut;
         }
 
@@ -4841,7 +4839,7 @@ public abstract class GridCacheAdapter<K, V> extends 
GridMetadataAwareAdapter im
          *
          * @param fut Future.
          */
-        public void future(@Nullable IgniteFuture fut) {
+        public void future(@Nullable InternalFuture fut) {
             this.fut = fut;
         }
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAffinityManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAffinityManager.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAffinityManager.java
index 834286d..03d60f8 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAffinityManager.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheAffinityManager.java
@@ -90,10 +90,10 @@ public class GridCacheAffinityManager<K, V> extends 
GridCacheManagerAdapter<K, V
      * @param topVer Topology version to wait.
      * @return Affinity ready future.
      */
-    public IgniteFuture<Long> affinityReadyFuture(long topVer) {
+    public InternalFuture<Long> affinityReadyFuture(long topVer) {
         assert !cctx.isLocal();
 
-        IgniteFuture<Long> fut = aff.readyFuture(topVer);
+        InternalFuture<Long> fut = aff.readyFuture(topVer);
 
         return fut != null ? fut : new GridFinishedFutureEx<>(topVer);
     }
@@ -105,7 +105,7 @@ public class GridCacheAffinityManager<K, V> extends 
GridCacheManagerAdapter<K, V
      * @param topVer Topology version to wait.
      * @return Affinity ready future or {@code null}.
      */
-    @Nullable public IgniteFuture<Long> affinityReadyFuturex(long topVer) {
+    @Nullable public InternalFuture<Long> affinityReadyFuturex(long topVer) {
         assert !cctx.isLocal();
 
         return aff.readyFuture(topVer);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheContext.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheContext.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheContext.java
index c6cb355..3db5454 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheContext.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheContext.java
@@ -15,7 +15,6 @@ import org.apache.ignite.configuration.*;
 import org.apache.ignite.lang.*;
 import org.apache.ignite.marshaller.*;
 import org.apache.ignite.portables.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.cache.*;
 import org.gridgain.grid.cache.cloner.*;
 import org.gridgain.grid.kernal.*;
@@ -1207,12 +1206,12 @@ public class GridCacheContext<K, V> implements 
Externalizable {
      * @param f Target future.
      * @return Wrapped future that is aware of cloning behaviour.
      */
-    public IgniteFuture<V> wrapClone(IgniteFuture<V> f) {
+    public InternalFuture<V> wrapClone(InternalFuture<V> f) {
         if (!hasFlag(CLONE))
             return f;
 
-        return f.chain(new CX1<IgniteFuture<V>, V>() {
-            @Override public V applyx(IgniteFuture<V> f) throws 
IgniteCheckedException {
+        return f.chain(new CX1<InternalFuture<V>, V>() {
+            @Override public V applyx(InternalFuture<V> f) throws 
IgniteCheckedException {
                 return cloneValue(f.get());
             }
         });
@@ -1222,12 +1221,12 @@ public class GridCacheContext<K, V> implements 
Externalizable {
      * @param f Target future.
      * @return Wrapped future that is aware of cloning behaviour.
      */
-    public IgniteFuture<Map<K, V>> wrapCloneMap(IgniteFuture<Map<K, V>> f) {
+    public InternalFuture<Map<K, V>> wrapCloneMap(InternalFuture<Map<K, V>> f) 
{
         if (!hasFlag(CLONE))
             return f;
 
-        return f.chain(new CX1<IgniteFuture<Map<K, V>>, Map<K, V>>() {
-            @Override public Map<K, V> applyx(IgniteFuture<Map<K, V>> f) 
throws IgniteCheckedException {
+        return f.chain(new CX1<InternalFuture<Map<K, V>>, Map<K, V>>() {
+            @Override public Map<K, V> applyx(InternalFuture<Map<K, V>> f) 
throws IgniteCheckedException {
                 Map<K, V> map = new GridLeanMap<>();
 
                 for (Map.Entry<K, V> e : f.get().entrySet())

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java
index 452e074..7936f48 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEntryImpl.java
@@ -369,7 +369,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> reloadAsync() {
+    @Override public InternalFuture<V> reloadAsync() {
         GridCacheProjectionImpl<K, V> old = 
ctx.gate().enter(proxy.gateProjection());
 
         try {
@@ -401,7 +401,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> getAsync() {
+    @Override public InternalFuture<V> getAsync() {
         return proxy.getAsync(key);
     }
 
@@ -412,7 +412,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> setAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<V> setAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         // Should not pass dht entries as to near cache.
         return proxy.putAsync(key, val, isNearEnabled(ctx) ? null : cached, 
ttl, filter);
     }
@@ -424,7 +424,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> setxAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<Boolean> setxAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         // Should not pass dht entries as to near cache.
         return proxy.putxAsync(key, val, isNearEnabled(ctx) ? null : cached, 
ttl, filter);
     }
@@ -435,7 +435,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> replaceAsync(V val) {
+    @Override public InternalFuture<V> replaceAsync(V val) {
         return setAsync(val, ctx.hasPeekArray());
     }
 
@@ -445,7 +445,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replaceAsync(V oldVal, V newVal) {
+    @Override public InternalFuture<Boolean> replaceAsync(V oldVal, V newVal) {
         return setxAsync(newVal, ctx.equalsPeekArray(newVal));
     }
 
@@ -491,7 +491,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> setIfAbsentAsync(V val) {
+    @Override public InternalFuture<V> setIfAbsentAsync(V val) {
         return setAsync(val, ctx.noPeekArray());
     }
 
@@ -501,7 +501,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> setxIfAbsentAsync(V val) {
+    @Override public InternalFuture<Boolean> setxIfAbsentAsync(V val) {
         return setxAsync(val, ctx.noPeekArray());
     }
 
@@ -511,7 +511,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAsync(IgniteClosure<V, V> 
transformer) {
+    @Override public InternalFuture<?> transformAsync(IgniteClosure<V, V> 
transformer) {
         return proxy.transformAsync(key, transformer, isNearEnabled(ctx) ? 
null : cached, ttl);
     }
 
@@ -521,7 +521,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replacexAsync(V val) {
+    @Override public InternalFuture<Boolean> replacexAsync(V val) {
         return setxAsync(val, ctx.hasPeekArray());
     }
 
@@ -531,7 +531,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> 
removeAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<V> 
removeAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         return proxy.removeAsync(key, isNearEnabled(ctx) ? null : cached, 
filter);
     }
 
@@ -541,7 +541,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> 
removexAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<Boolean> 
removexAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         return proxy.removexAsync(key, isNearEnabled(ctx) ? null : cached, 
filter);
     }
 
@@ -551,7 +551,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removeAsync(V val) {
+    @Override public InternalFuture<Boolean> removeAsync(V val) {
         return proxy.removeAsync(key, val);
     }
 
@@ -700,7 +700,7 @@ public class GridCacheEntryImpl<K, V> implements 
GridCacheEntry<K, V>, Externali
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> lockAsync(long timeout,
+    @Override public InternalFuture<Boolean> lockAsync(long timeout,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         return proxy.lockAsync(key, timeout, filter);
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java
index b15b958..cc5077f 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionEntry.java
@@ -204,7 +204,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> reloadAsync() {
+    @Override public InternalFuture<V> reloadAsync() {
         throw unsupported();
     }
 
@@ -241,7 +241,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> getAsync() {
+    @Override public InternalFuture<V> getAsync() {
         throw unsupported();
     }
 
@@ -251,7 +251,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> setAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<V> setAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         throw unsupported();
     }
 
@@ -261,7 +261,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> setxAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<Boolean> setxAsync(V val, 
IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         throw unsupported();
     }
 
@@ -271,7 +271,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAsync(IgniteClosure<V, V> 
transformer) {
+    @Override public InternalFuture<?> transformAsync(IgniteClosure<V, V> 
transformer) {
         throw unsupported();
     }
 
@@ -281,7 +281,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> replaceAsync(V val) {
+    @Override public InternalFuture<V> replaceAsync(V val) {
         throw unsupported();
     }
 
@@ -291,7 +291,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replaceAsync(V oldVal, V newVal) {
+    @Override public InternalFuture<Boolean> replaceAsync(V oldVal, V newVal) {
         throw unsupported();
     }
 
@@ -311,7 +311,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> setIfAbsentAsync(V val) {
+    @Override public InternalFuture<V> setIfAbsentAsync(V val) {
         throw unsupported();
     }
 
@@ -321,7 +321,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> setxIfAbsentAsync(V val) {
+    @Override public InternalFuture<Boolean> setxIfAbsentAsync(V val) {
         throw unsupported();
     }
 
@@ -331,7 +331,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replacexAsync(V val) {
+    @Override public InternalFuture<Boolean> replacexAsync(V val) {
         throw unsupported();
     }
 
@@ -341,7 +341,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> 
removeAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<V> 
removeAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         throw unsupported();
     }
 
@@ -351,7 +351,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> 
removexAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
+    @Override public InternalFuture<Boolean> 
removexAsync(IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         throw unsupported();
     }
 
@@ -361,7 +361,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removeAsync(V val) {
+    @Override public InternalFuture<Boolean> removeAsync(V val) {
         throw unsupported();
     }
 
@@ -454,7 +454,7 @@ public class GridCacheEvictionEntry<K, V> implements 
GridCacheEntry<K, V>, Exter
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> lockAsync(long timeout,
+    @Override public InternalFuture<Boolean> lockAsync(long timeout,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>[] filter) {
         throw unsupported();
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionManager.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionManager.java
index e07211c..8865eb3 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionManager.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheEvictionManager.java
@@ -1050,8 +1050,8 @@ public class GridCacheEvictionManager<K, V> extends 
GridCacheManagerAdapter<K, V
                         // Thread that prepares future should remove it and 
install listener.
                         curEvictFut.compareAndSet(fut, null);
 
-                        fut.listenAsync(new CI1<IgniteFuture<?>>() {
-                            @Override public void apply(IgniteFuture<?> f) {
+                        fut.listenAsync(new CI1<InternalFuture<?>>() {
+                            @Override public void apply(InternalFuture<?> f) {
                                 if (!busyLock.enterBusy()) {
                                     if (log.isDebugEnabled())
                                         log.debug("Will not notify eviction 
future completion (grid is stopping): " +
@@ -1103,7 +1103,7 @@ public class GridCacheEvictionManager<K, V> extends 
GridCacheManagerAdapter<K, V
             try {
                 t = fut.get();
             }
-            catch (IgniteFutureCancelledException ignored) {
+            catch (InternalFutureCancelledException ignored) {
                 assert false : "Future has been cancelled, but manager is not 
stopping: " + fut;
 
                 return;
@@ -1370,7 +1370,7 @@ public class GridCacheEvictionManager<K, V> extends 
GridCacheManagerAdapter<K, V
         }
 
         /** {@inheritDoc} */
-        @Override protected void body() throws InterruptedException, 
GridInterruptedException {
+        @Override protected void body() throws InterruptedException, 
InternalInterruptedException {
             assert !cctx.isNear() && evictSync;
 
             ClusterNode loc = cctx.localNode();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheExplicitLockSpan.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheExplicitLockSpan.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheExplicitLockSpan.java
index efb8811..7e157b3 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheExplicitLockSpan.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheExplicitLockSpan.java
@@ -234,7 +234,7 @@ public class GridCacheExplicitLockSpan<K> extends 
ReentrantLock {
      *
      * @return Release future.
      */
-    public IgniteFuture<Object> releaseFuture() {
+    public InternalFuture<Object> releaseFuture() {
         return releaseFut;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java
index 6862a5e..1255651 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFilterEvaluationEntry.java
@@ -110,7 +110,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> getAsync() {
+    @Override public InternalFuture<V> getAsync() {
         throw new UnsupportedOperationException("getAsync");
     }
 
@@ -125,7 +125,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> reloadAsync() {
+    @Override public InternalFuture<V> reloadAsync() {
         throw new UnsupportedOperationException("reloadAsync");
     }
 
@@ -202,7 +202,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> setAsync(V val, @Nullable 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
+    @Override public InternalFuture<V> setAsync(V val, @Nullable 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         throw new UnsupportedOperationException("setAsync");
     }
 
@@ -212,7 +212,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> setIfAbsentAsync(V val) {
+    @Override public InternalFuture<V> setIfAbsentAsync(V val) {
         throw new UnsupportedOperationException("setIfAbsentAsync");
     }
 
@@ -223,7 +223,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> setxAsync(V val,
+    @Override public InternalFuture<Boolean> setxAsync(V val,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         throw new UnsupportedOperationException("setxAsync");
     }
@@ -234,7 +234,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> setxIfAbsentAsync(V val) {
+    @Override public InternalFuture<Boolean> setxIfAbsentAsync(V val) {
         throw new UnsupportedOperationException("setxIfAbsentAsync");
     }
 
@@ -244,7 +244,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<?> transformAsync(IgniteClosure<V, V> 
transformer) {
+    @Override public InternalFuture<?> transformAsync(IgniteClosure<V, V> 
transformer) {
         throw new UnsupportedOperationException("transformAsync");
     }
 
@@ -254,7 +254,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> replaceAsync(V val) {
+    @Override public InternalFuture<V> replaceAsync(V val) {
         throw new UnsupportedOperationException("replaceAsync");
     }
 
@@ -264,7 +264,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replacexAsync(V val) {
+    @Override public InternalFuture<Boolean> replacexAsync(V val) {
         throw new UnsupportedOperationException("replacexAsync");
     }
 
@@ -274,7 +274,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> replaceAsync(V oldVal, V newVal) {
+    @Override public InternalFuture<Boolean> replaceAsync(V oldVal, V newVal) {
         throw new UnsupportedOperationException("replaceAsync");
     }
 
@@ -285,7 +285,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<V> removeAsync(@Nullable 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
+    @Override public InternalFuture<V> removeAsync(@Nullable 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         throw new UnsupportedOperationException("removeAsync");
     }
 
@@ -295,7 +295,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removexAsync(@Nullable 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
+    @Override public InternalFuture<Boolean> removexAsync(@Nullable 
IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         throw new UnsupportedOperationException("removexAsync");
     }
 
@@ -305,7 +305,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> removeAsync(V val) {
+    @Override public InternalFuture<Boolean> removeAsync(V val) {
         throw new UnsupportedOperationException("removeAsync");
     }
 
@@ -332,7 +332,7 @@ public class GridCacheFilterEvaluationEntry<K, V> 
implements GridCacheEntry<K, V
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFuture<Boolean> lockAsync(long timeout,
+    @Override public InternalFuture<Boolean> lockAsync(long timeout,
         @Nullable IgnitePredicate<GridCacheEntry<K, V>>... filter) {
         throw new UnsupportedOperationException("lockAsync");
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFuture.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFuture.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFuture.java
index 32b66f3..c3633f7 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFuture.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheFuture.java
@@ -17,7 +17,7 @@ import java.util.*;
 /**
  * This interface should be implemented by all distributed futures.
  */
-public interface GridCacheFuture<R> extends IgniteFuture<R> {
+public interface GridCacheFuture<R> extends InternalFuture<R> {
     /**
      * @return Unique identifier for this future.
      */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheIoManager.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheIoManager.java
index a222c32..a93b60e 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheIoManager.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheIoManager.java
@@ -108,13 +108,13 @@ public class GridCacheIoManager<K, V> extends 
GridCacheSharedManagerAdapter<K, V
                     log.debug("Received message has higher topology version 
[msg=" + msg +
                         ", locTopVer=" + locTopVer + ", rmtTopVer=" + 
rmtTopVer + ']');
 
-                IgniteFuture<Long> topFut = 
cctx.discovery().topologyFuture(rmtTopVer);
+                InternalFuture<Long> topFut = 
cctx.discovery().topologyFuture(rmtTopVer);
 
                 if (!topFut.isDone()) {
                     final IgniteBiInClosure<UUID, GridCacheMessage<K, V>> c0 = 
c;
 
-                    topFut.listenAsync(new CI1<IgniteFuture<Long>>() {
-                        @Override public void apply(IgniteFuture<Long> t) {
+                    topFut.listenAsync(new CI1<InternalFuture<Long>>() {
+                        @Override public void apply(InternalFuture<Long> t) {
                             onMessage0(nodeId, cacheMsg, c0);
                         }
                     });
@@ -203,7 +203,7 @@ public class GridCacheIoManager<K, V> extends 
GridCacheSharedManagerAdapter<K, V
             if (cacheMsg.allowForStartup())
                 processMessage(nodeId, cacheMsg, c);
             else {
-                IgniteFuture<?> startFut = startFuture(cacheMsg);
+                InternalFuture<?> startFut = startFuture(cacheMsg);
 
                 if (startFut.isDone())
                     processMessage(nodeId, cacheMsg, c);
@@ -213,8 +213,8 @@ public class GridCacheIoManager<K, V> extends 
GridCacheSharedManagerAdapter<K, V
                             ", locId=" + cctx.localNodeId() + ", msg=" + 
cacheMsg + ']');
 
                     // Don't hold this thread waiting for preloading to 
complete.
-                    startFut.listenAsync(new CI1<IgniteFuture<?>>() {
-                        @Override public void apply(IgniteFuture<?> f) {
+                    startFut.listenAsync(new CI1<InternalFuture<?>>() {
+                        @Override public void apply(InternalFuture<?> f) {
                             rw.readLock();
 
                             try {
@@ -269,7 +269,7 @@ public class GridCacheIoManager<K, V> extends 
GridCacheSharedManagerAdapter<K, V
      * @param cacheMsg Cache message to get start future.
      * @return Preloader start future.
      */
-    private IgniteFuture<Object> startFuture(GridCacheMessage<K, V> cacheMsg) {
+    private InternalFuture<Object> startFuture(GridCacheMessage<K, V> 
cacheMsg) {
         int cacheId = cacheMsg.cacheId();
 
         return cacheId != 0 ? 
cctx.cacheContext(cacheId).preloader().startFuture() : 
cctx.preloadersStartFuture();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMultiTxFuture.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMultiTxFuture.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMultiTxFuture.java
index 44e9711..ebbd48a 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMultiTxFuture.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMultiTxFuture.java
@@ -94,8 +94,8 @@ public final class GridCacheMultiTxFuture<K, V> extends 
GridFutureAdapter<Boolea
 
             for (final GridCacheTxEx<K, V> tx : txs) {
                 if (!tx.done()) {
-                    tx.finishFuture().listenAsync(new 
CI1<IgniteFuture<GridCacheTx>>() {
-                        @Override public void apply(IgniteFuture<GridCacheTx> 
t) {
+                    tx.finishFuture().listenAsync(new 
CI1<InternalFuture<GridCacheTx>>() {
+                        @Override public void 
apply(InternalFuture<GridCacheTx> t) {
                             remainingTxs.remove(tx);
 
                             checkRemaining();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/90948e67/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMvccManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMvccManager.java
 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMvccManager.java
index 10a953b..0fda7c1 100644
--- 
a/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMvccManager.java
+++ 
b/modules/core/src/main/java/org/gridgain/grid/kernal/processors/cache/GridCacheMvccManager.java
@@ -13,7 +13,6 @@ import org.apache.ignite.*;
 import org.apache.ignite.cluster.*;
 import org.apache.ignite.events.*;
 import org.apache.ignite.lang.*;
-import org.gridgain.grid.*;
 import org.gridgain.grid.cache.*;
 import org.gridgain.grid.kernal.managers.discovery.*;
 import org.gridgain.grid.kernal.managers.eventstorage.*;
@@ -192,7 +191,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
                 }
             }
 
-            for (IgniteFuture<?> fut : atomicFuts.values()) {
+            for (InternalFuture<?> fut : atomicFuts.values()) {
                 if (fut instanceof GridCacheFuture) {
                     GridCacheFuture cacheFut = (GridCacheFuture)fut;
 
@@ -290,7 +289,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @param fut Future.
      */
     public void addAtomicFuture(GridCacheVersion futVer, 
GridCacheAtomicFuture<K, ?> fut) {
-        IgniteFuture<?> old = atomicFuts.put(futVer, fut);
+        InternalFuture<?> old = atomicFuts.put(futVer, fut);
 
         assert old == null;
     }
@@ -308,7 +307,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @param futVer Future ID.
      * @return Future.
      */
-    @Nullable public IgniteFuture<?> atomicFuture(GridCacheVersion futVer) {
+    @Nullable public InternalFuture<?> atomicFuture(GridCacheVersion futVer) {
         return atomicFuts.get(futVer);
     }
 
@@ -316,7 +315,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @param futVer Future ID.
      * @return Removed future.
      */
-    @Nullable public IgniteFuture<?> removeAtomicFuture(GridCacheVersion 
futVer) {
+    @Nullable public InternalFuture<?> removeAtomicFuture(GridCacheVersion 
futVer) {
         return atomicFuts.remove(futVer);
     }
 
@@ -487,10 +486,10 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @param ver Version.
      * @return All futures for given lock version.
      */
-    public <T> Collection<? extends IgniteFuture<T>> futures(GridCacheVersion 
ver) {
+    public <T> Collection<? extends InternalFuture<T>> 
futures(GridCacheVersion ver) {
         Collection c = futs.get(ver);
 
-        return c == null ? Collections.<IgniteFuture<T>>emptyList() : 
(Collection<IgniteFuture<T>>)c;
+        return c == null ? Collections.<InternalFuture<T>>emptyList() : 
(Collection<InternalFuture<T>>)c;
     }
 
     /**
@@ -893,7 +892,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @return Future that signals when all locks for given partitions are 
released.
      */
     @SuppressWarnings({"unchecked"})
-    public IgniteFuture<?> finishLocks(long topVer) {
+    public InternalFuture<?> finishLocks(long topVer) {
         assert topVer > 0;
         return finishLocks(null, topVer);
     }
@@ -905,7 +904,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @param topVer Topology version to wait for.
      * @return Explicit locks release future.
      */
-    public IgniteFuture<?> finishExplicitLocks(long topVer) {
+    public InternalFuture<?> finishExplicitLocks(long topVer) {
         GridCompoundFuture<Object, Object> res = new 
GridCompoundFuture<>(cctx.kernalContext());
 
         for (GridCacheExplicitLockSpan<K> span : pendingExplicit.values()) {
@@ -925,14 +924,14 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      *
      * @return Finish update future.
      */
-    public IgniteFuture<?> finishAtomicUpdates(long topVer) {
+    public InternalFuture<?> finishAtomicUpdates(long topVer) {
         GridCompoundFuture<Object, Object> res = new 
GridCompoundFuture<>(cctx.kernalContext());
 
         res.ignoreChildFailures(ClusterTopologyException.class, 
GridCachePartialUpdateException.class);
 
         for (GridCacheAtomicFuture<K, ?> fut : atomicFuts.values()) {
             if (fut.waitForPartitionExchange() && fut.topologyVersion() < 
topVer)
-                res.add((IgniteFuture<Object>)fut);
+                res.add((InternalFuture<Object>)fut);
         }
 
         res.markInitialized();
@@ -946,7 +945,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @return Future that signals when all locks for given keys are released.
      */
     @SuppressWarnings("unchecked")
-    public IgniteFuture<?> finishKeys(Collection<K> keys, long topVer) {
+    public InternalFuture<?> finishKeys(Collection<K> keys, long topVer) {
         if (!(keys instanceof Set))
             keys = new HashSet<>(keys);
 
@@ -964,7 +963,7 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
      * @param topVer Topology version.
      * @return Future that signals when all locks for given partitions will be 
released.
      */
-    private IgniteFuture<?> finishLocks(@Nullable final IgnitePredicate<K> 
keyFilter, long topVer) {
+    private InternalFuture<?> finishLocks(@Nullable final IgnitePredicate<K> 
keyFilter, long topVer) {
         assert topVer != 0;
 
         if (topVer < 0)
@@ -984,8 +983,8 @@ public class GridCacheMvccManager<K, V> extends 
GridCacheSharedManagerAdapter<K,
 
         finishFuts.add(finishFut);
 
-        finishFut.listenAsync(new CI1<IgniteFuture<?>>() {
-            @Override public void apply(IgniteFuture<?> e) {
+        finishFut.listenAsync(new CI1<InternalFuture<?>>() {
+            @Override public void apply(InternalFuture<?> e) {
                 finishFuts.remove(finishFut);
 
                 // This call is required to make sure that the concurrent queue

Reply via email to