You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2017/04/24 08:21:58 UTC
[40/65] [abbrv] ignite git commit: IGNITE-4952 - Delete swap-related
functionality - Fixes #1794.
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
index 87b0d00..8296945 100644
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java
@@ -722,53 +722,6 @@ public class IgniteH2Indexing implements GridQueryIndexing {
}
}
- /** {@inheritDoc} */
- @Override public void onSwap(@Nullable String spaceName, KeyCacheObject key,
- int partId) throws IgniteCheckedException {
- Schema schema = schemas.get(schema(spaceName));
-
- if (schema == null)
- return;
-
- Class<?> keyCls = getClass(objectContext(spaceName), key);
-
- for (TableDescriptor tbl : schema.tbls.values()) {
- if (tbl.type().keyClass().isAssignableFrom(keyCls)) {
- try {
- if (tbl.tbl.onSwap(key, partId))
- return;
- }
- catch (IgniteCheckedException e) {
- throw new IgniteCheckedException(e);
- }
- }
- }
- }
-
- /** {@inheritDoc} */
- @Override public void onUnswap(@Nullable String spaceName, KeyCacheObject key, int partId, CacheObject val)
- throws IgniteCheckedException {
- assert val != null;
-
- CacheObjectContext coctx = objectContext(spaceName);
-
- Class<?> keyCls = getClass(coctx, key);
- Class<?> valCls = getClass(coctx, val);
-
- for (TableDescriptor tbl : tables(schema(spaceName))) {
- if (tbl.type().keyClass().isAssignableFrom(keyCls)
- && tbl.type().valueClass().isAssignableFrom(valCls)) {
- try {
- if (tbl.tbl.onUnswap(key, partId, val))
- return;
- }
- catch (IgniteCheckedException e) {
- throw new IgniteCheckedException(e);
- }
- }
- }
- }
-
/**
* Drops table form h2 database and clear all related indexes (h2 text, lucene).
*
@@ -3532,9 +3485,6 @@ public class IgniteH2Indexing implements GridQueryIndexing {
private final GridUnsafeGuard guard;
/** */
- private final boolean preferSwapVal;
-
- /** */
private final boolean snapshotableIdx;
/** */
@@ -3579,10 +3529,6 @@ public class IgniteH2Indexing implements GridQueryIndexing {
props[i] = p;
}
- // TODO GG-10884.
-// preferSwapVal = schema.ccfg.getMemoryMode() == CacheMemoryMode.OFFHEAP_TIERED;
- preferSwapVal = true;
-
// Index is not snapshotable in db-x.
snapshotableIdx = false;
}
@@ -3733,14 +3679,6 @@ public class IgniteH2Indexing implements GridQueryIndexing {
}
/** {@inheritDoc} */
- @SuppressWarnings("unchecked")
- @Override public Object readFromSwap(Object key) throws IgniteCheckedException {
- assert false : "'readFromSwap' to be removed";
-
- return null;
- }
-
- /** {@inheritDoc} */
@Override public int valueType() {
return valType;
}
@@ -3799,11 +3737,6 @@ public class IgniteH2Indexing implements GridQueryIndexing {
}
/** {@inheritDoc} */
- @Override public boolean preferSwapValue() {
- return preferSwapVal;
- }
-
- /** {@inheritDoc} */
@Override public boolean snapshotableIndex() {
return snapshotableIdx;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java
index e9970af..28dd891 100644
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java
@@ -111,33 +111,6 @@ public abstract class GridH2AbstractKeyValueRow extends GridH2Row {
}
/**
- * Should be called to remove reference on value.
- *
- * @throws IgniteCheckedException If failed.
- */
- public synchronized void onSwap() throws IgniteCheckedException {
- setValue(VAL_COL, null);
- }
-
- /**
- * Should be called when entry getting unswapped.
- *
- * @param val Value.
- * @param beforeRmv If this is unswap before remove.
- * @throws IgniteCheckedException If failed.
- */
- public synchronized void onUnswap(Object val, boolean beforeRmv) throws IgniteCheckedException {
- Value val0 = peekValue(VAL_COL);
-
- if (val0 != null && !(val0 instanceof WeakValue))
- return;
-
- setValue(VAL_COL, desc.wrap(val, desc.valueType()));
-
- notifyAll();
- }
-
- /**
* Atomically updates weak value.
*
* @param valObj New value.
@@ -209,68 +182,8 @@ public abstract class GridH2AbstractKeyValueRow extends GridH2Row {
if (col < DEFAULT_COLUMNS_COUNT) {
Value v;
- if (col == VAL_COL) {
+ if (col == VAL_COL)
v = peekValue(VAL_COL);
-
- long start = 0;
- int attempt = 0;
-
- while ((v = WeakValue.unwrap(v)) == null) {
- if (!desc.preferSwapValue()) {
- v = getOffheapValue(VAL_COL);
-
- if (v != null) {
- setValue(VAL_COL, v);
-
- if (peekValue(KEY_COL) == null)
- cache();
-
- return v;
- }
- }
-
- Object k = getValue(KEY_COL).getObject();
-
- try {
- Object valObj = desc.readFromSwap(k);
-
- if (valObj != null) {
- // Even if we've found valObj in swap, it is may be some new value,
- // while the needed value was already unswapped, so we have to recheck it.
- if ((v = getOffheapValue(VAL_COL)) == null)
- return updateWeakValue(valObj);
- }
- else {
- // If nothing found in swap then we should be already unswapped.
- if (desc.preferSwapValue()) {
- v = getOffheapValue(VAL_COL);
-
- if (v != null) {
- setValue(VAL_COL, v);
-
- if (peekValue(KEY_COL) == null)
- cache();
-
- return v;
- }
- }
-
- v = syncValue(attempt);
- }
- }
- catch (IgniteCheckedException e) {
- throw new IgniteException(e);
- }
-
- attempt++;
-
- if (start == 0)
- start = U.currentTimeMillis();
- else if (U.currentTimeMillis() - start > 60_000) // Loop for at most 60 seconds.
- throw new IgniteException("Failed to get value for key: " + k +
- ". This can happen due to a long GC pause.");
- }
- }
else {
assert col == KEY_COL : col;
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java
index 78ba2e2..fd310ce 100644
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java
@@ -187,34 +187,6 @@ public class GridH2KeyValueRowOffheap extends GridH2AbstractKeyValueRow {
}
/** {@inheritDoc} */
- @Override public synchronized void onSwap() throws IgniteCheckedException {
- Lock l = lock(ptr);
-
- try {
- final long p = ptr + OFFSET_VALUE_REF;
-
- final GridUnsafeMemory mem = desc.memory();
-
- final long valPtr = mem.readLongVolatile(p);
-
- if (valPtr <= 0)
- throw new IllegalStateException("Already swapped: " + ptr);
-
- if (!mem.casLong(p, valPtr, 0))
- throw new IllegalStateException("Concurrent unswap: " + ptr);
-
- desc.guard().finalizeLater(new Runnable() {
- @Override public void run() {
- mem.release(valPtr, mem.readInt(valPtr) + OFFSET_VALUE);
- }
- });
- }
- finally {
- l.unlock();
- }
- }
-
- /** {@inheritDoc} */
@SuppressWarnings("NonSynchronizedMethodOverridesSynchronizedMethod")
@Override protected synchronized Value updateWeakValue(Object valObj) throws IgniteCheckedException {
Value val = peekValue(VAL_COL);
@@ -232,48 +204,6 @@ public class GridH2KeyValueRowOffheap extends GridH2AbstractKeyValueRow {
}
/** {@inheritDoc} */
- @Override public synchronized void onUnswap(Object val, boolean beforeRmv) throws IgniteCheckedException {
- assert val != null;
-
- final long p = ptr;
-
- Lock l = lock(p);
-
- try {
- GridUnsafeMemory mem = desc.memory();
-
- if (mem.readLongVolatile(p + OFFSET_VALUE_REF) != 0)
- return; // The offheap value is in its place, nothing to do here.
-
- Value v = peekValue(VAL_COL);
-
- if (v == null) {
- setValue(VAL_COL, desc.wrap(val, desc.valueType()));
-
- v = peekValue(VAL_COL);
- }
-
- byte[] bytes = new byte[SIZE_CALCULATOR.getValueLen(v)];
-
- Data data = Data.create(null, bytes);
-
- data.writeValue(v);
-
- long valPtr = mem.allocate(bytes.length + OFFSET_VALUE);
-
- mem.writeInt(valPtr, bytes.length);
- mem.writeBytes(valPtr + OFFSET_VALUE, bytes);
-
- mem.writeLongVolatile(p + OFFSET_VALUE_REF, valPtr);
- }
- finally {
- l.unlock();
- }
-
- notifyAll();
- }
-
- /** {@inheritDoc} */
@Override protected Value syncValue(long waitTime) {
Value v = super.syncValue(waitTime);
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2RowDescriptor.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2RowDescriptor.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2RowDescriptor.java
index f645921..61de362 100644
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2RowDescriptor.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2RowDescriptor.java
@@ -80,12 +80,6 @@ public interface GridH2RowDescriptor extends GridOffHeapSmartPointerFactory<Grid
*/
public GridH2Row cachedRow(long link);
- /**
- * @param key Cache key.
- * @return Value.
- * @throws IgniteCheckedException If failed.
- */
- public Object readFromSwap(Object key) throws IgniteCheckedException;
/**
* @return Value type.
@@ -164,11 +158,6 @@ public interface GridH2RowDescriptor extends GridOffHeapSmartPointerFactory<Grid
public Value wrap(Object o, int type) throws IgniteCheckedException;
/**
- * @return {@code True} if should check swap value before offheap.
- */
- public boolean preferSwapValue();
-
- /**
* @return {@code True} if index should support snapshots.
*/
public boolean snapshotableIndex();
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java
index a9c1a20..c07dce4 100644
--- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java
+++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java
@@ -187,79 +187,6 @@ public class GridH2Table extends TableBase {
}
/**
- * Should be called when entry is swapped.
- *
- * @param key Entry key.
- * @return {@code true} If row was found.
- * @throws IgniteCheckedException If failed.
- */
- public boolean onSwap(KeyCacheObject key, int partId) throws IgniteCheckedException {
- return onSwapUnswap(key, partId, null);
- }
-
- /**
- * Should be called when entry is unswapped.
- *
- * @param key Key.
- * @param val Value.
- * @return {@code true} If row was found.
- * @throws IgniteCheckedException If failed.
- */
- public boolean onUnswap(KeyCacheObject key, int partId, CacheObject val) throws IgniteCheckedException {
- assert val != null : "Key=" + key;
-
- return onSwapUnswap(key, partId, val);
- }
-
- /**
- * Swaps or unswaps row.
- *
- * @param key Key.
- * @param val Value for promote or {@code null} if we have to swap.
- * @return {@code true} if row was found and swapped/unswapped.
- * @throws IgniteCheckedException If failed.
- */
- @SuppressWarnings("LockAcquiredButNotSafelyReleased")
- private boolean onSwapUnswap(KeyCacheObject key, int partId, @Nullable CacheObject val) throws IgniteCheckedException {
- assert key != null;
-
- GridH2IndexBase pk = pk();
-
- assert desc != null;
-
- GridH2Row searchRow = desc.createRow(key, partId, null, null, 0);
-
- GridUnsafeMemory mem = desc.memory();
-
- lock(false);
-
- if (mem != null)
- desc.guard().begin();
-
- try {
- ensureNotDestroyed();
-
- GridH2AbstractKeyValueRow row = (GridH2AbstractKeyValueRow)pk.findOne(searchRow);
-
- if (row == null)
- return false;
-
- if (val == null)
- row.onSwap();
- else
- row.onUnswap(val, false);
-
- return true;
- }
- finally {
- unlock(false);
-
- if (mem != null)
- desc.guard().end();
- }
- }
-
- /**
* @return Space name.
*/
@Nullable public String spaceName() {
@@ -621,12 +548,7 @@ public class GridH2Table extends TableBase {
GridH2Row old = pk.put(row); // Put to PK.
- if (old instanceof GridH2AbstractKeyValueRow) { // Unswap value on replace.
- GridH2AbstractKeyValueRow kvOld = (GridH2AbstractKeyValueRow)old;
-
- kvOld.onUnswap(kvOld.getValue(VAL_COL), true);
- }
- else if (old == null)
+ if (old == null)
size.increment();
int len = idxs.size();
@@ -648,13 +570,6 @@ public class GridH2Table extends TableBase {
// index(1) is PK, get full row from there (search row here contains only key but no other columns).
GridH2Row old = pk.remove(row);
- if (row.getColumnCount() != 1 && old instanceof GridH2AbstractKeyValueRow) { // Unswap value.
- Value v = row.getValue(VAL_COL);
-
- if (v != null)
- ((GridH2AbstractKeyValueRow)old).onUnswap(v.getObject(), true);
- }
-
if (old != null) {
// Remove row from all indexes.
// Start from 3 because 0 - Scan (don't need to update), 1 - PK hash (already updated), 2 - PK (already updated).
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridBinaryDuplicateIndexObjectsAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridBinaryDuplicateIndexObjectsAbstractSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridBinaryDuplicateIndexObjectsAbstractSelfTest.java
deleted file mode 100644
index e257378..0000000
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridBinaryDuplicateIndexObjectsAbstractSelfTest.java
+++ /dev/null
@@ -1,159 +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.internal.processors.cache;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.apache.ignite.IgniteCache;
-import org.apache.ignite.cache.CacheAtomicityMode;
-import org.apache.ignite.cache.CacheMode;
-import org.apache.ignite.cache.QueryEntity;
-import org.apache.ignite.cache.QueryIndex;
-import org.apache.ignite.cache.query.SqlFieldsQuery;
-import org.apache.ignite.configuration.BinaryConfiguration;
-import org.apache.ignite.configuration.CacheConfiguration;
-import org.apache.ignite.configuration.IgniteConfiguration;
-import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.binary.BinaryMarshaller;
-import org.apache.ignite.binary.BinaryObject;
-
-/**
- * Tests that binary object is the same in cache entry and in index.
- */
-public abstract class GridBinaryDuplicateIndexObjectsAbstractSelfTest extends GridCacheAbstractSelfTest {
- /** {@inheritDoc} */
- @Override protected int gridCount() {
- return 1;
- }
-
- /** {@inheritDoc} */
- @Override protected IgniteConfiguration getConfiguration(String igniteInstanceName) throws Exception {
- IgniteConfiguration cfg = super.getConfiguration(igniteInstanceName);
-
- BinaryConfiguration bCfg = new BinaryConfiguration();
-
- bCfg.setClassNames(Collections.singletonList(TestBinary.class.getName()));
-
- cfg.setBinaryConfiguration(bCfg);
-
- cfg.setMarshaller(new BinaryMarshaller());
-
- return cfg;
- }
-
- /** {@inheritDoc} */
- @Override protected CacheConfiguration cacheConfiguration(String igniteInstanceName) throws Exception {
- CacheConfiguration ccfg = super.cacheConfiguration(igniteInstanceName);
-
- ccfg.setCopyOnRead(false);
-
- QueryEntity queryEntity = new QueryEntity(Integer.class.getName(), TestBinary.class.getName());
-
- queryEntity.addQueryField("fieldOne", String.class.getName(), null);
- queryEntity.addQueryField("fieldTwo", Integer.class.getName(), null);
-
- queryEntity.setIndexes(Arrays.asList(
- new QueryIndex("fieldOne", true),
- new QueryIndex("fieldTwo", true)));
-
- ccfg.setQueryEntities(Collections.singletonList(queryEntity));
-
- return ccfg;
- }
-
- /** {@inheritDoc} */
- @Override public abstract CacheAtomicityMode atomicityMode();
-
- /** {@inheritDoc} */
- @Override public abstract CacheMode cacheMode();
-
- /**
- * @throws Exception If failed.
- */
- public void testIndexReferences() throws Exception {
- IgniteCache<Integer, TestBinary> cache = grid(0).cache(null);
-
- String fieldOneVal = "123";
- int fieldTwoVal = 123;
- int key = 0;
-
- cache.put(key, new TestBinary(fieldOneVal, fieldTwoVal));
-
- IgniteCache<Integer, BinaryObject> prj = grid(0).cache(null).withKeepBinary();
-
- BinaryObject cacheVal = prj.get(key);
-
- assertEquals(fieldOneVal, cacheVal.field("fieldOne"));
- assertEquals(new Integer(fieldTwoVal), cacheVal.field("fieldTwo"));
-
- List<?> row = F.first(prj.query(new SqlFieldsQuery("select _val from " +
- "TestBinary where _key = ?").setArgs(key)).getAll());
-
- assertEquals(1, row.size());
-
- BinaryObject qryVal = (BinaryObject)row.get(0);
-
- assertEquals(fieldOneVal, qryVal.field("fieldOne"));
- assertEquals(new Integer(fieldTwoVal), qryVal.field("fieldTwo"));
- assertSame(cacheVal, qryVal);
- }
-
- /**
- * Test binary object.
- */
- private static class TestBinary {
- /** */
- private String fieldOne;
-
- /** */
- private int fieldTwo;
-
- /**
- *
- */
- private TestBinary() {
- // No-op.
- }
-
- /**
- * @param fieldOne Field one.
- * @param fieldTwo Field two.
- */
- private TestBinary(String fieldOne, int fieldTwo) {
- this.fieldOne = fieldOne;
- this.fieldTwo = fieldTwo;
- }
-
- /**
- * @return Field one.
- */
- public String fieldOne() {
- return fieldOne;
- }
-
- /**
- * @return Field two.
- */
- public int fieldTwo() {
- return fieldTwo;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOffHeapSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOffHeapSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOffHeapSelfTest.java
index 148ce74..8d91a57 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOffHeapSelfTest.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOffHeapSelfTest.java
@@ -17,60 +17,36 @@
package org.apache.ignite.internal.processors.cache;
-import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.atomic.AtomicInteger;
import javax.cache.Cache;
-import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.cache.CachePeekMode;
-import org.apache.ignite.cache.query.SqlQuery;
import org.apache.ignite.cache.query.annotations.QuerySqlField;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
-import org.apache.ignite.events.Event;
import org.apache.ignite.internal.util.typedef.internal.CU;
import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
-import static java.util.concurrent.TimeUnit.MILLISECONDS;
import static org.apache.ignite.cache.CacheMode.REPLICATED;
import static org.apache.ignite.cache.CacheWriteSynchronizationMode.FULL_SYNC;
import static org.apache.ignite.configuration.DeploymentMode.SHARED;
-import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_FROM_OFFHEAP;
-import static org.apache.ignite.events.EventType.EVT_CACHE_OBJECT_TO_OFFHEAP;
/**
* Test for cache swap.
*/
public class GridCacheOffHeapSelfTest extends GridCommonAbstractTest {
- /** Entry count. */
- private static final int ENTRY_CNT = 1000;
-
- /** Swap count. */
- private final AtomicInteger swapCnt = new AtomicInteger();
-
- /** Unswap count. */
- private final AtomicInteger unswapCnt = new AtomicInteger();
-
/** Saved versions. */
private final Map<Integer, Object> versions = new HashMap<>();
/** */
private final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
- /** PeerClassLoadingLocalClassPathExclude enable. */
- private boolean excluded;
-
/** {@inheritDoc} */
@Override protected IgniteConfiguration getConfiguration(String igniteInstanceName) throws Exception {
IgniteConfiguration cfg = super.getConfiguration(igniteInstanceName);
@@ -93,10 +69,6 @@ public class GridCacheOffHeapSelfTest extends GridCommonAbstractTest {
cfg.setDeploymentMode(SHARED);
- if (excluded)
- cfg.setPeerClassLoadingLocalClassPathExclude(GridCacheOffHeapSelfTest.class.getName(),
- CacheValue.class.getName());
-
return cfg;
}
@@ -110,156 +82,6 @@ public class GridCacheOffHeapSelfTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
- @SuppressWarnings("BusyWait")
- public void testOffHeapDeployment() throws Exception {
- try {
- Ignite ignite1 = startGrid(1);
-
- excluded = true;
-
- Ignite ignite2 = startGrid(2);
-
- IgniteCache<Integer, Object> cache1 = ignite1.cache(null);
- IgniteCache<Integer, Object> cache2 = ignite2.cache(null);
-
- Object v1 = new CacheValue(1);
-
- cache1.put(1, v1);
-
- info("Stored value in cache1 [v=" + v1 + ", ldr=" + v1.getClass().getClassLoader() + ']');
-
- Object v2 = cache2.get(1);
-
- assert v2 != null;
-
- info("Read value from cache2 [v=" + v2 + ", ldr=" + v2.getClass().getClassLoader() + ']');
-
- assert !v2.getClass().getClassLoader().equals(getClass().getClassLoader());
- assert v2.getClass().getClassLoader().getClass().getName().contains("GridDeploymentClassLoader");
-
- SwapListener lsnr = new SwapListener();
-
- ignite2.events().localListen(lsnr, EVT_CACHE_OBJECT_TO_OFFHEAP, EVT_CACHE_OBJECT_FROM_OFFHEAP);
-
- cache2.localEvict(keySet(cache2));
-
- assert lsnr.awaitSwap();
-
- assert cache2.get(1) != null;
-
- assert lsnr.awaitUnswap();
-
- ignite2.events().stopLocalListen(lsnr);
-
- lsnr = new SwapListener();
-
- ignite2.events().localListen(lsnr, EVT_CACHE_OBJECT_TO_OFFHEAP, EVT_CACHE_OBJECT_FROM_OFFHEAP);
-
- cache2.localEvict(keySet(cache2));
-
- assert lsnr.awaitSwap();
-
- stopGrid(1);
-
- boolean success = false;
-
- for (int i = 0; i < 6; i++) {
- success = cache2.get(1) == null;
-
- if (success)
- break;
- else if (i < 2) {
- info("Sleeping to wait for cache clear.");
-
- Thread.sleep(500);
- }
- }
-
- assert success;
- }
- finally {
- stopAllGrids();
- }
- }
-
- /**
- * @throws Exception If failed.
- */
- public void testOffHeap() throws Exception {
- try {
- startGrids(1);
-
- grid(0).events().localListen(new IgnitePredicate<Event>() {
- @Override public boolean apply(Event evt) {
- assert evt != null;
-
- switch (evt.type()) {
- case EVT_CACHE_OBJECT_TO_OFFHEAP:
- swapCnt.incrementAndGet();
-
- break;
- case EVT_CACHE_OBJECT_FROM_OFFHEAP:
- unswapCnt.incrementAndGet();
-
- break;
- }
-
- return true;
- }
- }, EVT_CACHE_OBJECT_TO_OFFHEAP, EVT_CACHE_OBJECT_FROM_OFFHEAP);
-
- IgniteCache<Integer, CacheValue> cache = grid(0).cache(null);
-
- populate(cache);
- evictAll(cache);
-
- int cnt = 0;
-
- for (Cache.Entry<Integer, CacheValue> e : cache.localEntries(CachePeekMode.OFFHEAP)) {
- assertEquals(e.getKey().intValue(), e.getValue().value());
-
- cnt++;
- }
-
- assertEquals(ENTRY_CNT, cnt);
-
- query(cache, 0, 200); // Query swapped entries.
- unswap(cache, 200, 400); // Check 'promote' method.
- unswapAll(cache, 400, 600); // Check 'promoteAll' method.
- get(cache, 600, 800); // Check 'get' method.
- peek(cache, 800, ENTRY_CNT); // Check 'peek' method in 'SWAP' mode.
-
- // Check that all entries were unswapped.
- for (int i = 0; i < ENTRY_CNT; i++) {
- CacheValue val = cache.localPeek(i);
-
- assert val != null;
- assert val.value() == i;
- }
-
- // Query unswapped entries.
- Collection<Cache.Entry<Integer, CacheValue>> res = cache.query(
- new SqlQuery<Integer, CacheValue>(CacheValue.class, "val >= ? and val < ?").
- setArgs(0, ENTRY_CNT)).
- getAll();
-
- assert res.size() == ENTRY_CNT;
-
- for (Cache.Entry<Integer, CacheValue> entry : res) {
- assert entry != null;
- assert entry.getKey() != null;
- assert entry.getValue() != null;
- assert entry.getKey() == entry.getValue().value();
- }
- }
- finally {
- stopAllGrids();
- }
- }
-
- /**
- * @throws Exception If failed.
- */
public void testOffHeapIterator() throws Exception {
try {
startGrids(1);
@@ -272,8 +94,6 @@ public class GridCacheOffHeapSelfTest extends GridCommonAbstractTest {
info("Putting: " + i);
cache.put(i, i);
-
- cache.localEvict(Collections.singleton(i));
}
int i = 0;
@@ -300,255 +120,6 @@ public class GridCacheOffHeapSelfTest extends GridCommonAbstractTest {
}
/**
- * Populates cache.
- *
- * @param cache Cache.
- * @throws Exception In case of error.
- */
- private void populate(IgniteCache<Integer, CacheValue> cache) throws Exception {
- resetCounters();
-
- for (int i = 0; i < ENTRY_CNT; i++) {
- cache.put(i, new CacheValue(i));
-
- CacheValue val = cache.localPeek(i);
-
- assert val != null;
- assert val.value() == i;
-
- GridCacheEntryEx entry = dht(cache).peekEx(i);
-
- assert entry != null;
-
- versions.put(i, entry.version());
- }
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == 0;
- }
-
- /**
- * Evicts all entries in cache.
- *
- * @param cache Cache.
- * @throws Exception In case of error.
- */
- private void evictAll(IgniteCache<Integer, CacheValue> cache) throws Exception {
- resetCounters();
-
- assertEquals(ENTRY_CNT, cache.size());
- assertEquals(0, cache.localSize(CachePeekMode.OFFHEAP));
-
- for (int i = 0; i < ENTRY_CNT; i++) {
- cache.localEvict(Collections.singleton(i));
-
- assertEquals(ENTRY_CNT - i - 1, cache.localSize(CachePeekMode.ONHEAP));
- assertEquals(i + 1, cache.localSize(CachePeekMode.OFFHEAP));
- }
- // cache.evictAll();
-
- assertEquals(0, cache.localSize(CachePeekMode.ONHEAP));
- assertEquals(ENTRY_CNT, cache.localSize(CachePeekMode.OFFHEAP));
-
- for (int i = 0; i < ENTRY_CNT; i++)
- assertNull(cache.localPeek(i, CachePeekMode.ONHEAP));
-
- assertEquals(ENTRY_CNT, swapCnt.get());
- assertEquals(0, unswapCnt.get());
- }
-
- /**
- * Runs SQL query and checks result.
- *
- * @param cache Cache.
- * @param lowerBound Lower key bound.
- * @param upperBound Upper key bound.
- * @throws Exception In case of error.
- */
- private void query(IgniteCache<Integer, CacheValue> cache, int lowerBound, int upperBound) throws Exception {
- resetCounters();
-
- Collection<Cache.Entry<Integer, CacheValue>> res = cache.query(new SqlQuery<Integer, CacheValue>(CacheValue.class, "val >= ? and val < ?").
- setArgs(lowerBound, upperBound)).
- getAll();
-
- assertEquals(res.size(), upperBound - lowerBound);
-
- for (Cache.Entry<Integer, CacheValue> entry : res) {
- assert entry != null;
- assert entry.getKey() != null;
- assert entry.getValue() != null;
- assert entry.getKey() == entry.getValue().value();
- }
-
- assertEquals(0, swapCnt.get());
- assertEquals(0, unswapCnt.get());
-
- checkEntries(cache, lowerBound, upperBound);
-
- assertEquals(0, swapCnt.get());
- assertEquals(unswapCnt.get(), upperBound - lowerBound);
- }
-
- /**
- * Unswaps entries and checks result.
- *
- * @param cache Cache.
- * @param lowerBound Lower key bound.
- * @param upperBound Upper key bound.
- * @throws Exception In case of error.
- */
- private void unswap(IgniteCache<Integer, CacheValue> cache, int lowerBound, int upperBound) throws Exception {
- resetCounters();
-
- assertEquals(0, swapCnt.get());
- assertEquals(0, unswapCnt.get());
-
- for (int i = lowerBound; i < upperBound; i++) {
- assert cache.localPeek(i, CachePeekMode.ONHEAP) == null;
-
- cache.localPromote(Collections.singleton(i));
- CacheValue val = cache.localPeek(i);
-
- assertNotNull(val);
- assertEquals(i, val.value());
-
- assertEquals(i - lowerBound + 1, unswapCnt.get());
- }
-
- assertEquals(0, swapCnt.get());
- assertEquals(unswapCnt.get(), upperBound - lowerBound);
-
- checkEntries(cache, lowerBound, upperBound);
-
- assertEquals(0, swapCnt.get());
- assertEquals(unswapCnt.get(), upperBound - lowerBound);
- }
-
- /**
- * Unswaps entries and checks result.
- *
- * @param cache Cache.
- * @param lowerBound Lower key bound.
- * @param upperBound Upper key bound.
- * @throws Exception In case of error.
- */
- private void unswapAll(IgniteCache<Integer, CacheValue> cache, int lowerBound, int upperBound) throws Exception {
- resetCounters();
-
- Set<Integer> keys = new HashSet<>();
-
- for (int i = lowerBound; i < upperBound; i++) {
- assert cache.localPeek(i, CachePeekMode.ONHEAP) == null;
-
- keys.add(i);
- }
-
- cache.localPromote(keys);
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == upperBound - lowerBound;
-
- checkEntries(cache, lowerBound, upperBound);
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == upperBound - lowerBound;
- }
-
- /**
- * Unswaps entries via {@code get} method and checks result.
- *
- * @param cache Cache.
- * @param lowerBound Lower key bound.
- * @param upperBound Upper key bound.
- * @throws Exception In case of error.
- */
- private void get(IgniteCache<Integer, CacheValue> cache, int lowerBound, int upperBound) throws Exception {
- resetCounters();
-
- for (int i = lowerBound; i < upperBound; i++) {
- assert cache.localPeek(i, CachePeekMode.ONHEAP) == null;
-
- CacheValue val = cache.get(i);
-
- assert val != null;
- assert val.value() == i;
- }
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == upperBound - lowerBound;
-
- checkEntries(cache, lowerBound, upperBound);
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == upperBound - lowerBound;
- }
-
- /**
- * Peeks entries in {@code SWAP} mode and checks result.
- *
- * @param cache Cache.
- * @param lowerBound Lower key bound.
- * @param upperBound Upper key bound.
- * @throws Exception In case of error.
- */
- private void peek(IgniteCache<Integer, CacheValue> cache, int lowerBound, int upperBound) throws Exception {
- resetCounters();
-
- for (int i = lowerBound; i < upperBound; i++) {
- assert cache.localPeek(i, CachePeekMode.ONHEAP) == null;
-
- CacheValue val = cache.localPeek(i, CachePeekMode.OFFHEAP);
-
- assert val != null;
- assert val.value() == i;
- }
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == 0;
-
- checkEntries(cache, lowerBound, upperBound);
-
- assert swapCnt.get() == 0;
- assert unswapCnt.get() == upperBound - lowerBound;
- }
-
- /**
- * Resets event counters.
- */
- private void resetCounters() {
- swapCnt.set(0);
- unswapCnt.set(0);
- }
-
- /**
- * Checks that entries in cache are correct after being unswapped.
- * If entry is still swapped, it will be unswapped in this method.
- *
- * @param cache Cache.
- * @param lowerBound Lower key bound.
- * @param upperBound Upper key bound.
- * @throws Exception In case of error.
- */
- private void checkEntries(IgniteCache<Integer, CacheValue> cache, int lowerBound, int upperBound) throws Exception {
- for (int i = lowerBound; i < upperBound; i++) {
- cache.localPromote(Collections.singleton(i));
-
- GridCacheEntryEx entry = dht(cache).entryEx(i);
-
- assert entry != null;
- assert entry.key() != null;
-
- CacheValue val = CU.value(entry.rawGet(), entry.context(), false);
-
- assertNotNull("Value null for key: " + i, val);
- assertEquals(entry.key().value(entry.context().cacheObjectContext(), false), (Integer)val.value());
-
- assertEquals(entry.version(), versions.get(i));
- }
- }
-
- /**
*
*/
private static class CacheValue {
@@ -575,51 +146,4 @@ public class GridCacheOffHeapSelfTest extends GridCommonAbstractTest {
return S.toString(CacheValue.class, this);
}
}
-
- /**
- *
- */
- private class SwapListener implements IgnitePredicate<Event> {
- /** */
- private final CountDownLatch swapLatch = new CountDownLatch(1);
-
- /** */
- private final CountDownLatch unswapLatch = new CountDownLatch(1);
-
- /** {@inheritDoc} */
- @Override public boolean apply(Event evt) {
- assert evt != null;
-
- info("Received event: " + evt);
-
- switch (evt.type()) {
- case EVT_CACHE_OBJECT_TO_OFFHEAP:
- swapLatch.countDown();
-
- break;
- case EVT_CACHE_OBJECT_FROM_OFFHEAP:
- unswapLatch.countDown();
-
- break;
- }
-
- return true;
- }
-
- /**
- * @return {@code True} if await succeeded.
- * @throws InterruptedException If interrupted.
- */
- boolean awaitSwap() throws InterruptedException {
- return swapLatch.await(5000, MILLISECONDS);
- }
-
- /**
- * @return {@code True} if await succeeded.
- * @throws InterruptedException If interrupted.
- */
- boolean awaitUnswap() throws InterruptedException {
- return unswapLatch.await(5000, MILLISECONDS);
- }
- }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java
index 1f2ec99..e0024fb 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java
@@ -96,8 +96,6 @@ public class IgniteCacheQueryMultiThreadedSelfTest extends GridCommonAbstractTes
cfg.setCacheConfiguration(cacheConfiguration());
- GridQueryProcessor.idxCls = FakeIndexing.class;
-
return cfg;
}
@@ -140,24 +138,6 @@ public class IgniteCacheQueryMultiThreadedSelfTest extends GridCommonAbstractTes
return DURATION + 60_000;
}
- /**
- *
- */
- private static class FakeIndexing extends IgniteH2Indexing {
- @Override public void onSwap(@Nullable String spaceName, KeyCacheObject key, int partId) throws IgniteCheckedException {
- super.onSwap(spaceName, key, partId);
-
- idxSwapCnt.incrementAndGet();
- }
-
- @Override public void onUnswap(@Nullable String spaceName, KeyCacheObject key, int partId, CacheObject val)
- throws IgniteCheckedException {
- super.onUnswap(spaceName, key, partId, val);
-
- idxUnswapCnt.incrementAndGet();
- }
- }
-
/** @return {@code true} If evictions enabled. */
protected boolean evictsEnabled() {
return false;
@@ -185,11 +165,6 @@ public class IgniteCacheQueryMultiThreadedSelfTest extends GridCommonAbstractTes
/** {@inheritDoc} */
@Override protected void afterTestsStopped() throws Exception {
stopAllGrids();
-
- if (evictsEnabled()) {
- assertTrue(idxSwapCnt.get() > 0);
- assertTrue(idxUnswapCnt.get() > 0);
- }
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest.java
deleted file mode 100644
index d36b794..0000000
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest.java
+++ /dev/null
@@ -1,38 +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.internal.processors.cache.distributed;
-
-import org.apache.ignite.cache.CacheAtomicityMode;
-import org.apache.ignite.cache.CacheMode;
-import org.apache.ignite.internal.processors.cache.GridBinaryDuplicateIndexObjectsAbstractSelfTest;
-
-/**
- * Test PARTITIONED ATOMIC.
- */
-public class GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest extends
- GridBinaryDuplicateIndexObjectsAbstractSelfTest {
- /** {@inheritDoc} */
- @Override public CacheAtomicityMode atomicityMode() {
- return CacheAtomicityMode.ATOMIC;
- }
-
- /** {@inheritDoc} */
- @Override public CacheMode cacheMode() {
- return CacheMode.PARTITIONED;
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest.java
deleted file mode 100644
index 529b556..0000000
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest.java
+++ /dev/null
@@ -1,41 +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.internal.processors.cache.distributed;
-
-import org.apache.ignite.cache.CacheAtomicityMode;
-import org.apache.ignite.cache.CacheMode;
-import org.apache.ignite.internal.processors.cache.GridBinaryDuplicateIndexObjectsAbstractSelfTest;
-
-import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL;
-import static org.apache.ignite.cache.CacheMode.PARTITIONED;
-
-/**
- * Test PARTITIONED and TRANSACTIONAL.
- */
-public class GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest extends
- GridBinaryDuplicateIndexObjectsAbstractSelfTest {
- /** {@inheritDoc} */
- @Override public CacheAtomicityMode atomicityMode() {
- return TRANSACTIONAL;
- }
-
- /** {@inheritDoc} */
- @Override public CacheMode cacheMode() {
- return PARTITIONED;
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/IgniteQueryDedicatedPoolTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/IgniteQueryDedicatedPoolTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/IgniteQueryDedicatedPoolTest.java
index fe966f9..f3404fd 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/IgniteQueryDedicatedPoolTest.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/query/IgniteQueryDedicatedPoolTest.java
@@ -208,15 +208,5 @@ public class IgniteQueryDedicatedPoolTest extends GridCommonAbstractTest {
@Override public void remove(@Nullable String spaceName, Object key) {
// No-op.
}
-
- /** {@inheritDoc} */
- @Override public void onSwap(@Nullable String spaceName, Object key) {
- // No-op.
- }
-
- /** {@inheritDoc} */
- @Override public void onUnswap(@Nullable String spaceName, Object key, Object val) {
- // No-op.
- }
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteBinaryCacheQueryTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteBinaryCacheQueryTestSuite.java b/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteBinaryCacheQueryTestSuite.java
index e957f0f..5826b72 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteBinaryCacheQueryTestSuite.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteBinaryCacheQueryTestSuite.java
@@ -22,8 +22,6 @@ import org.apache.ignite.internal.binary.BinaryMarshaller;
import org.apache.ignite.internal.processors.cache.BinarySerializationQuerySelfTest;
import org.apache.ignite.internal.processors.cache.BinarySerializationQueryWithReflectiveSerializerSelfTest;
import org.apache.ignite.internal.processors.cache.IgniteCacheBinaryObjectsScanSelfTest;
-import org.apache.ignite.internal.processors.cache.distributed.GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest;
-import org.apache.ignite.internal.processors.cache.distributed.GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest;
import org.apache.ignite.testframework.config.GridTestProperties;
/**
@@ -47,9 +45,6 @@ public class IgniteBinaryCacheQueryTestSuite extends TestSuite {
//Should be adjusted. Not ready to be used with BinaryMarshaller.
//suite.addTestSuite(GridCacheBinarySwapScanQuerySelfTest.class);
- suite.addTestSuite(GridCacheBinaryDuplicateIndexObjectPartitionedAtomicSelfTest.class);
- suite.addTestSuite(GridCacheBinaryDuplicateIndexObjectPartitionedTransactionalSelfTest.class);
-
//TODO: the following tests= was never tested with binary. Exclude or pass?
// suite.addTestSuite(IgniteSqlSchemaIndexingTest.class);
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/kafka/src/main/java/org/apache/ignite/stream/kafka/connect/IgniteSourceTask.java
----------------------------------------------------------------------
diff --git a/modules/kafka/src/main/java/org/apache/ignite/stream/kafka/connect/IgniteSourceTask.java b/modules/kafka/src/main/java/org/apache/ignite/stream/kafka/connect/IgniteSourceTask.java
index 2f6a728..d5f2286 100644
--- a/modules/kafka/src/main/java/org/apache/ignite/stream/kafka/connect/IgniteSourceTask.java
+++ b/modules/kafka/src/main/java/org/apache/ignite/stream/kafka/connect/IgniteSourceTask.java
@@ -333,10 +333,6 @@ public class IgniteSourceTask extends SourceTask {
/** */
UNLOCKED(EventType.EVT_CACHE_OBJECT_UNLOCKED),
/** */
- SWAPPED(EventType.EVT_CACHE_OBJECT_SWAPPED),
- /** */
- UNSWAPPED(EventType.EVT_CACHE_OBJECT_UNSWAPPED),
- /** */
EXPIRED(EventType.EVT_CACHE_OBJECT_EXPIRED);
/** Internal Ignite event id. */
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheAbstractTest.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheAbstractTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheAbstractTest.cs
index d629331..351c25c 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheAbstractTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheAbstractTest.cs
@@ -1313,64 +1313,6 @@ namespace Apache.Ignite.Core.Tests.Cache
}
[Test]
- [Ignore("IGNITE-4535")]
- public void TestPromote()
- {
- var cache = Cache();
-
- int key = GetPrimaryKeyForCache(cache);
-
- cache.Put(key, 1);
-
- Assert.AreEqual(1, PeekInt(cache, key));
-
- cache.LocalEvict(new[] {key});
-
- Assert.AreEqual(0, cache.GetLocalSize(CachePeekMode.Onheap));
-
- Assert.AreEqual(0, PeekInt(cache, key));
-
- cache.LocalPromote(new[] { key });
-
- Assert.AreEqual(1, cache.GetLocalSize(CachePeekMode.Onheap));
-
- Assert.AreEqual(1, PeekInt(cache, key));
- }
-
- [Test]
- [Ignore("IGNITE-4535")]
- public void TestPromoteAll()
- {
- var cache = Cache();
-
- List<int> keys = GetPrimaryKeysForCache(cache, 3);
-
- cache.Put(keys[0], 1);
- cache.Put(keys[1], 2);
- cache.Put(keys[2], 3);
-
- Assert.AreEqual(1, PeekInt(cache, keys[0]));
- Assert.AreEqual(2, PeekInt(cache, keys[1]));
- Assert.AreEqual(3, PeekInt(cache, keys[2]));
-
- cache.LocalEvict(new List<int> { -1, keys[0], keys[1] });
-
- Assert.AreEqual(1, cache.GetLocalSize(CachePeekMode.Onheap));
-
- Assert.AreEqual(0, PeekInt(cache, keys[0]));
- Assert.AreEqual(0, PeekInt(cache, keys[1]));
- Assert.AreEqual(3, PeekInt(cache, keys[2]));
-
- cache.LocalPromote(new[] {keys[0], keys[1]});
-
- Assert.AreEqual(3, cache.GetLocalSize(CachePeekMode.Onheap));
-
- Assert.AreEqual(1, PeekInt(cache, keys[0]));
- Assert.AreEqual(2, PeekInt(cache, keys[1]));
- Assert.AreEqual(3, PeekInt(cache, keys[2]));
- }
-
- [Test]
public void TestPutGetBinary()
{
var cache = Cache<int, BinarizablePerson>();
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheTestAsyncWrapper.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheTestAsyncWrapper.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheTestAsyncWrapper.cs
index c44a17b..6c8f0d6 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheTestAsyncWrapper.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/CacheTestAsyncWrapper.cs
@@ -439,12 +439,6 @@ namespace Apache.Ignite.Core.Tests.Cache
}
/** <inheritDoc /> */
- public void LocalPromote(IEnumerable<TK> keys)
- {
- _cache.LocalPromote(keys);
- }
-
- /** <inheritDoc /> */
public IQueryCursor<ICacheEntry<TK, TV>> Query(QueryBase qry)
{
return _cache.Query(qry);
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/platforms/dotnet/Apache.Ignite.Core/Cache/ICache.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Cache/ICache.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Cache/ICache.cs
index 5a4cdcf..b7cb0d5 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Cache/ICache.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Cache/ICache.cs
@@ -693,12 +693,6 @@ namespace Apache.Ignite.Core.Cache
Task<int> GetSizeAsync(params CachePeekMode[] modes);
/// <summary>
- /// This method unswaps cache entries by given keys, if any, from swap storage into memory.
- /// </summary>
- /// <param name="keys">Keys to promote entries for.</param>
- void LocalPromote(IEnumerable<TK> keys);
-
- /// <summary>
/// Queries cache.
/// </summary>
/// <param name="qry">Query.</param>
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
index 516f91c..6009659 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs
@@ -818,14 +818,6 @@ namespace Apache.Ignite.Core.Impl.Cache
return (int) DoOutInOp((int) op, modes0);
}
- /** <inheritDoc /> */
- public void LocalPromote(IEnumerable<TK> keys)
- {
- IgniteArgumentCheck.NotNull(keys, "keys");
-
- DoOutOp(CacheOp.LocPromote, writer => WriteEnumerable(writer, keys));
- }
-
/** <inheritdoc /> */
public TRes Invoke<TArg, TRes>(TK key, ICacheEntryProcessor<TK, TV, TArg, TRes> processor, TArg arg)
{
http://git-wip-us.apache.org/repos/asf/ignite/blob/0da8c70a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheOp.cs
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheOp.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheOp.cs
index dc4f9aa..51fef40 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheOp.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheOp.cs
@@ -40,7 +40,6 @@ namespace Apache.Ignite.Core.Impl.Cache
LoadCache = 15,
LocEvict = 16,
LocLoadCache = 17,
- LocPromote = 18,
LocalClear = 20,
LocalClearAll = 21,
Lock = 22,