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/03/30 11:50:18 UTC
[49/50] [abbrv] ignite git commit: Merge branch master into
ignite-3477-master
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
index 38252ef,7a98366..bf2ab29
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
@@@ -47,9 -43,8 +47,9 @@@ import org.apache.ignite.internal.proce
import org.apache.ignite.internal.processors.cache.GridCacheMapEntryFactory;
import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionExchangeId;
import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionFullMap;
- import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2;
+ import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap;
import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture;
+import org.apache.ignite.internal.util.F0;
import org.apache.ignite.internal.util.GridAtomicLong;
import org.apache.ignite.internal.util.StripedCompositeReadWriteLock;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
@@@ -1088,11 -1002,9 +1088,11 @@@ class GridDhtPartitionTopologyImpl impl
/** {@inheritDoc} */
@SuppressWarnings({"MismatchedQueryAndUpdateOfCollection"})
- @Override public GridDhtPartitionMap2 update(
- @Override public boolean update(@Nullable GridDhtPartitionExchangeId exchId,
++ @Override public GridDhtPartitionMap update(
+ @Nullable GridDhtPartitionExchangeId exchId,
GridDhtPartitionFullMap partMap,
- @Nullable Map<Integer, Long> cntrMap) {
+ @Nullable Map<Integer, T2<Long, Long>> cntrMap
+ ) {
if (log.isDebugEnabled())
log.debug("Updating full partition map [exchId=" + exchId + ", parts=" + fullMapString() + ']');
@@@ -1185,9 -1093,9 +1185,9 @@@
node2part = partMap;
- Map<Integer, Set<UUID>> p2n = U.newHashMap(cctx.affinity().partitions());
+ Map<Integer, Set<UUID>> p2n = new HashMap<>(cctx.affinity().partitions(), 1.0f);
- for (Map.Entry<UUID, GridDhtPartitionMap2> e : partMap.entrySet()) {
+ for (Map.Entry<UUID, GridDhtPartitionMap> e : partMap.entrySet()) {
for (Integer p : e.getValue().keySet()) {
Set<UUID> ids = p2n.get(p);
@@@ -1206,34 -1114,6 +1206,34 @@@
AffinityTopologyVersion affVer = cctx.affinity().affinityTopologyVersion();
- GridDhtPartitionMap2 nodeMap = partMap.get(cctx.localNodeId());
++ GridDhtPartitionMap nodeMap = partMap.get(cctx.localNodeId());
+
+ if (nodeMap != null && cctx.shared().database().persistenceEnabled()) {
+ for (Map.Entry<Integer, GridDhtPartitionState> e : nodeMap.entrySet()) {
+ int p = e.getKey();
+ GridDhtPartitionState state = e.getValue();
+
+ if (state == MOVING) {
+ GridDhtLocalPartition locPart = locParts.get(p);
+
+ assert locPart != null;
+
+ if (locPart.state() == OWNING) {
+ locPart.moving();
+
+ changed = true;
+ }
+
+ if (cntrMap != null) {
+ T2<Long, Long> cntr = cntrMap.get(p);
+
+ if (cntr != null && cntr.get2() > locPart.updateCounter())
+ locPart.updateCounter(cntr.get2());
+ }
+ }
+ }
+ }
+
if (!affVer.equals(AffinityTopologyVersion.NONE) && affVer.compareTo(topVer) >= 0) {
List<List<ClusterNode>> aff = cctx.affinity().assignments(topVer);
@@@ -1258,12 -1135,10 +1258,12 @@@
}
/** {@inheritDoc} */
- @Override public boolean update(@Nullable GridDhtPartitionExchangeId exchId,
+ @SuppressWarnings({"MismatchedQueryAndUpdateOfCollection"})
- @Nullable @Override public GridDhtPartitionMap2 update(
++ @Nullable @Override public GridDhtPartitionMap update(
+ @Nullable GridDhtPartitionExchangeId exchId,
- GridDhtPartitionMap2 parts,
+ GridDhtPartitionMap parts,
- @Nullable Map<Integer, Long> cntrMap,
- boolean checkEvictions) {
+ @Nullable Map<Integer, T2<Long, Long>> cntrMap
+ ) {
if (log.isDebugEnabled())
log.debug("Updating single partition map [exchId=" + exchId + ", parts=" + mapString(parts) + ']');
@@@ -1377,96 -1242,6 +1377,96 @@@
if (log.isDebugEnabled())
log.debug("Partition map after single update: " + fullMapString());
+ if (changed)
+ cctx.shared().exchange().scheduleResendPartitions();
+
+ return changed ? localPartitionMap() : null;
+ }
+ finally {
+ lock.writeLock().unlock();
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean detectLostPartitions(DiscoveryEvent discoEvt) {
+ lock.writeLock().lock();
+
+ try {
+ int parts = cctx.affinity().partitions();
+
+ Collection<Integer> lost = null;
+
+ for (int p = 0; p < parts; p++) {
+ boolean foundOwner = false;
+
+ Set<UUID> nodeIds = part2node.get(p);
+
+ if (nodeIds != null) {
+ for (UUID nodeId : nodeIds) {
- GridDhtPartitionMap2 partMap = node2part.get(nodeId);
++ GridDhtPartitionMap partMap = node2part.get(nodeId);
+
+ GridDhtPartitionState state = partMap.get(p);
+
+ if (state == OWNING) {
+ foundOwner = true;
+
+ break;
+ }
+ }
+ }
+
+ if (!foundOwner) {
+ if (lost == null)
+ lost = new HashSet<>(parts - p, 1.0f);
+
+ lost.add(p);
+ }
+ }
+
+ boolean changed = false;
+
+ if (lost != null) {
+ PartitionLossPolicy plc = cctx.config().getPartitionLossPolicy();
+
+ assert plc != null;
+
+ // Update partition state on all nodes.
+ for (Integer part : lost) {
+ long updSeq = updateSeq.incrementAndGet();
+
+ GridDhtLocalPartition locPart = localPartition(part, topVer, false);
+
+ if (locPart != null) {
+ boolean marked = plc == PartitionLossPolicy.IGNORE ? locPart.own() : locPart.markLost();
+
+ if (marked)
+ updateLocal(locPart.id(), locPart.state(), updSeq);
+
+ changed |= marked;
+ }
+ // Update map for remote node.
+ else if (plc != PartitionLossPolicy.IGNORE) {
+ Set<UUID> nodeIds = part2node.get(part);
+
+ if (nodeIds != null) {
+ for (UUID nodeId : nodeIds) {
- GridDhtPartitionMap2 nodeMap = node2part.get(nodeId);
++ GridDhtPartitionMap nodeMap = node2part.get(nodeId);
+
+ if (nodeMap.get(part) != EVICTED)
+ nodeMap.put(part, LOST);
+ }
+ }
+ }
+
+ if (cctx.events().isRecordable(EventType.EVT_CACHE_REBALANCE_PART_DATA_LOST))
+ cctx.events().addPreloadEvent(part, EVT_CACHE_REBALANCE_PART_DATA_LOST,
+ discoEvt.eventNode(), discoEvt.type(), discoEvt.timestamp());
+ }
+
+ if (plc != PartitionLossPolicy.IGNORE)
+ cctx.needsRecovery(true);
+ }
+
return changed;
}
finally {
@@@ -1474,123 -1249,6 +1474,123 @@@
}
}
+ /** {@inheritDoc} */
+ @Override public void resetLostPartitions() {
+ lock.writeLock().lock();
+
+ try {
+ int parts = cctx.affinity().partitions();
+ long updSeq = updateSeq.incrementAndGet();
+
+ for (int part = 0; part < parts; part++) {
+ Set<UUID> nodeIds = part2node.get(part);
+
+ if (nodeIds != null) {
+ boolean lost = false;
+
+ for (UUID node : nodeIds) {
- GridDhtPartitionMap2 map = node2part.get(node);
++ GridDhtPartitionMap map = node2part.get(node);
+
+ if (map.get(part) == LOST) {
+ lost = true;
+
+ break;
+ }
+ }
+
+ if (lost) {
+ GridDhtLocalPartition locPart = localPartition(part, topVer, false);
+
+ if (locPart != null) {
+ boolean marked = locPart.own();
+
+ if (marked)
+ updateLocal(locPart.id(), locPart.state(), updSeq);
+ }
+
+ for (UUID nodeId : nodeIds) {
- GridDhtPartitionMap2 nodeMap = node2part.get(nodeId);
++ GridDhtPartitionMap nodeMap = node2part.get(nodeId);
+
+ if (nodeMap.get(part) == LOST)
+ nodeMap.put(part, OWNING);
+ }
+ }
+ }
+ }
+
+ checkEvictions(updSeq, cctx.affinity().assignments(topVer));
+
+ cctx.needsRecovery(false);
+ }
+ finally {
+ lock.writeLock().unlock();
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override public Collection<Integer> lostPartitions() {
+ lock.readLock().lock();
+
+ try {
+ Collection<Integer> res = null;
+
+ int parts = cctx.affinity().partitions();
+
+ for (int part = 0; part < parts; part++) {
+ Set<UUID> nodeIds = part2node.get(part);
+
+ if (nodeIds != null) {
+ for (UUID node : nodeIds) {
- GridDhtPartitionMap2 map = node2part.get(node);
++ GridDhtPartitionMap map = node2part.get(node);
+
+ if (map.get(part) == LOST) {
+ if (res == null)
+ res = new ArrayList<>(parts - part);
+
+ res.add(part);
+
+ break;
+ }
+ }
+ }
+ }
+
+ return res == null ? Collections.<Integer>emptyList() : res;
+ }
+ finally {
+ lock.readLock().unlock();
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override public void setOwners(int p, Set<UUID> owners, boolean updateSeq) {
+ lock.writeLock().lock();
+
+ try {
+
+ GridDhtLocalPartition locPart = locParts.get(p);
+
+ if (locPart != null) {
+ if (locPart.state() == OWNING && !owners.contains(cctx.localNodeId()))
+ locPart.moving();
+ }
+
- for (Map.Entry<UUID, GridDhtPartitionMap2> e : node2part.entrySet()) {
++ for (Map.Entry<UUID, GridDhtPartitionMap> e : node2part.entrySet()) {
+ if (!e.getValue().containsKey(p))
+ continue;
+
+ if (e.getValue().get(p) == OWNING && !owners.contains(e.getKey()))
+ e.getValue().put(p, MOVING);
+ }
+
+ if (updateSeq)
+ node2part = new GridDhtPartitionFullMap(node2part, this.updateSeq.incrementAndGet());
+ }
+ finally {
+ lock.writeLock().unlock();
+ }
+ }
+
/**
* @param updateSeq Update sequence.
* @return {@code True} if state changed.
@@@ -1743,32 -1398,30 +1743,32 @@@
}
}
- UUID locNodeId = cctx.localNodeId();
+ if (node2part != null) {
+ UUID locNodeId = cctx.localNodeId();
- GridDhtPartitionMap2 map = node2part.get(locNodeId);
+ GridDhtPartitionMap map = node2part.get(locNodeId);
- if (map == null) {
- map = new GridDhtPartitionMap(locNodeId,
- updateSeq,
- topVer,
- Collections.<Integer, GridDhtPartitionState>emptyMap(),
- false);
+ if (map == null) {
- map = new GridDhtPartitionMap2(locNodeId,
++ map = new GridDhtPartitionMap(locNodeId,
+ updateSeq,
+ topVer,
+ Collections.<Integer, GridDhtPartitionState>emptyMap(),
+ false);
- node2part.put(locNodeId, map);
- }
+ node2part.put(locNodeId, map);
+ }
- map.updateSequence(updateSeq, topVer);
+ map.updateSequence(updateSeq, topVer);
- map.put(p, state);
+ map.put(p, state);
- Set<UUID> ids = part2node.get(p);
+ Set<UUID> ids = part2node.get(p);
- if (ids == null)
- part2node.put(p, ids = U.newHashSet(3));
+ if (ids == null)
+ part2node.put(p, ids = U.newHashSet(3));
- ids.add(locNodeId);
+ ids.add(locNodeId);
+ }
return updateSeq;
}
@@@ -1858,19 -1511,7 +1858,19 @@@
}
/** {@inheritDoc} */
- @Nullable @Override public GridDhtPartitionMap2 partitions(UUID nodeId) {
- @Override public Map<Integer, Long> updateCounters(boolean skipZeros) {
++ @Nullable @Override public GridDhtPartitionMap partitions(UUID nodeId) {
+ lock.readLock().lock();
+
+ try {
+ return node2part.get(nodeId);
+ }
+ finally {
+ lock.readLock().unlock();
+ }
+ }
+
+ /** {@inheritDoc} */
+ @Override public Map<Integer, T2<Long, Long>> updateCounters(boolean skipZeros) {
lock.readLock().lock();
try {
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedGetFuture.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
index 0da3a44,47f4066..0334728
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridPartitionedSingleGetFuture.java
@@@ -286,43 -265,19 +281,20 @@@ public class GridPartitionedSingleGetFu
cctx.mvcc().addFuture(this, futId);
}
- GridCacheMessage req;
-
- if (node.version().compareTo(SINGLE_GET_MSG_SINCE) >= 0) {
- req = new GridNearSingleGetRequest(cctx.cacheId(),
- futId.localId(),
- key,
- readThrough,
- topVer,
- subjId,
- taskName == null ? 0 : taskName.hashCode(),
- expiryPlc != null ? expiryPlc.forCreate() : -1L,
- expiryPlc != null ? expiryPlc.forAccess() : -1L,
- skipVals,
- /**add reader*/false,
- needVer,
- cctx.deploymentEnabled(),
- recovery);
- }
- else {
- Map<KeyCacheObject, Boolean> map = Collections.singletonMap(key, false);
-
- req = new GridNearGetRequest(
- cctx.cacheId(),
- futId,
- futId,
- cctx.versions().next(),
- map,
- readThrough,
- topVer,
- subjId,
- taskName == null ? 0 : taskName.hashCode(),
- expiryPlc != null ? expiryPlc.forCreate() : -1L,
- expiryPlc != null ? expiryPlc.forAccess() : -1L,
- skipVals,
- cctx.deploymentEnabled(),
- recovery);
- }
+ GridCacheMessage req = new GridNearSingleGetRequest(cctx.cacheId(),
+ futId.localId(),
+ key,
+ readThrough,
+ topVer,
+ subjId,
+ taskName == null ? 0 : taskName.hashCode(),
+ expiryPlc != null ? expiryPlc.forCreate() : -1L,
+ expiryPlc != null ? expiryPlc.forAccess() : -1L,
+ skipVals,
+ /**add reader*/false,
+ needVer,
- cctx.deploymentEnabled());
++ cctx.deploymentEnabled(),
++ recovery);
try {
cctx.io().send(node, req, cctx.ioPolicy());
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicNearResponse.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicNearResponse.java
index 5dd2c03,74b7885..d6e2db0
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicNearResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicNearResponse.java
@@@ -165,8 -165,8 +165,8 @@@ public class GridDhtAtomicNearResponse
}
/** {@inheritDoc} */
- @Override public byte directType() {
+ @Override public short directType() {
- return -45;
+ return -48;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicCheckUpdateRequest.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicCheckUpdateRequest.java
index c23ebec,54c9723..4b9109e
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicCheckUpdateRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicCheckUpdateRequest.java
@@@ -95,8 -95,8 +95,8 @@@ public class GridNearAtomicCheckUpdateR
}
/** {@inheritDoc} */
- @Override public byte directType() {
+ @Override public short directType() {
- return -47;
+ return -50;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicFullUpdateRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateFilterRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateInvokeRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicSingleUpdateRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridNearAtomicUpdateResponse.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/NearCacheUpdates.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/NearCacheUpdates.java
index 94d53e7,76b8bc3..d922095
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/NearCacheUpdates.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/NearCacheUpdates.java
@@@ -314,8 -314,8 +314,8 @@@ public class NearCacheUpdates implement
}
/** {@inheritDoc} */
- @Override public byte directType() {
+ @Override public short directType() {
- return -48;
+ return -51;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
index 5822374,83ac1af..d1a132f
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/UpdateErrors.java
@@@ -201,8 -201,8 +201,8 @@@ public class UpdateErrors implements Me
}
/** {@inheritDoc} */
- @Override public byte directType() {
+ @Override public short directType() {
- return -46;
+ return -49;
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemandMessage.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index c059f79,d5f2246..b270ca0
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@@ -476,66 -439,47 +449,48 @@@ public class GridDhtPartitionDemander
GridDhtPartitionDemandMessage d = e.getValue();
- //Check remote node rebalancing API version.
- if (node.version().compareTo(GridDhtPreloader.REBALANCING_VER_2_SINCE) >= 0) {
- U.log(log, "Starting rebalancing [mode=" + cfg.getRebalanceMode() +
- ", fromNode=" + node.id() + ", partitionsCount=" + parts.size() +
- ", topology=" + fut.topologyVersion() + ", updateSeq=" + fut.updateSeq + "]");
-
- int lsnrCnt = cctx.gridConfig().getRebalanceThreadPoolSize();
+ U.log(log, "Starting rebalancing [mode=" + cfg.getRebalanceMode() +
+ ", fromNode=" + node.id() + ", partitionsCount=" + parts.size() +
+ ", topology=" + fut.topologyVersion() + ", updateSeq=" + fut.updateSeq + "]");
- List<Set<Integer>> sParts = new ArrayList<>(lsnrCnt);
+ int lsnrCnt = cctx.gridConfig().getRebalanceThreadPoolSize();
- for (int cnt = 0; cnt < lsnrCnt; cnt++)
- sParts.add(new HashSet<Integer>());
+ List<Set<Integer>> sParts = new ArrayList<>(lsnrCnt);
- Iterator<Integer> it = parts.iterator();
+ for (int cnt = 0; cnt < lsnrCnt; cnt++)
+ sParts.add(new HashSet<Integer>());
- int cnt = 0;
+ Iterator<Integer> it = parts.iterator();
- while (it.hasNext())
- sParts.get(cnt++ % lsnrCnt).add(it.next());
+ int cnt = 0;
- for (cnt = 0; cnt < lsnrCnt; cnt++) {
- if (!sParts.get(cnt).isEmpty()) {
- // Create copy.
- GridDhtPartitionDemandMessage initD = createDemandMessage(d, sParts.get(cnt));
+ while (it.hasNext())
+ sParts.get(cnt++ % lsnrCnt).add(it.next());
- initD.topic(rebalanceTopics.get(cnt));
- initD.updateSequence(fut.updateSeq);
- initD.timeout(cctx.config().getRebalanceTimeout());
+ for (cnt = 0; cnt < lsnrCnt; cnt++) {
+ if (!sParts.get(cnt).isEmpty()) {
+ // Create copy.
- GridDhtPartitionDemandMessage initD = new GridDhtPartitionDemandMessage(d, sParts.get(cnt));
++ GridDhtPartitionDemandMessage initD = createDemandMessage(d, sParts.get(cnt));
- synchronized (fut) {
- if (fut.isDone())
- return;
+ initD.topic(rebalanceTopics.get(cnt));
+ initD.updateSequence(fut.updateSeq);
+ initD.timeout(cctx.config().getRebalanceTimeout());
- // Future can be already cancelled at this moment and all failovers happened.
- // New requests will not be covered by failovers.
- cctx.io().sendOrderedMessage(node,
- rebalanceTopics.get(cnt), initD, cctx.ioPolicy(), initD.timeout());
- }
+ synchronized (fut) {
- if (!fut.isDone()) {
- // Future can be already cancelled at this moment and all failovers happened.
- // New requests will not be covered by failovers.
- cctx.io().sendOrderedMessage(node,
- rebalanceTopics.get(cnt), initD, cctx.ioPolicy(), initD.timeout());
- }
++ if (fut.isDone())
++ return;// Future can be already cancelled at this moment and all failovers happened.
+
- if (log.isDebugEnabled())
- log.debug("Requested rebalancing [from node=" + node.id() + ", listener index=" +
- cnt + ", partitions count=" + sParts.get(cnt).size() +
- " (" + partitionsList(sParts.get(cnt)) + ")]");
++ // New requests will not be covered by failovers.
++ cctx.io().sendOrderedMessage(node,
++ rebalanceTopics.get(cnt), initD, cctx.ioPolicy(), initD.timeout());
}
- }
- }
- else {
- U.log(log, "Starting rebalancing (old api) [cache=" + cctx.name() +
- ", mode=" + cfg.getRebalanceMode() +
- ", fromNode=" + node.id() +
- ", partitionsCount=" + parts.size() +
- ", topology=" + fut.topologyVersion() +
- ", updateSeq=" + fut.updateSeq + "]");
-
- d.timeout(cctx.config().getRebalanceTimeout());
- d.workerId(0);//old api support.
- worker = new DemandWorker(dmIdx.incrementAndGet(), fut);
+
- worker.run(node, d);
+ if (log.isDebugEnabled())
+ log.debug("Requested rebalancing [from node=" + node.id() + ", listener index=" +
+ cnt + ", partitions count=" + sParts.get(cnt).size() +
+ " (" + partitionsList(sParts.get(cnt)) + ")]");
+ }
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionSupplyMessageV2.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
index f1e2c01,1f3dee7..96d7a88
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
@@@ -19,12 -19,9 +19,11 @@@ package org.apache.ignite.internal.proc
import java.io.Externalizable;
import java.nio.ByteBuffer;
+import java.util.Map;
import org.apache.ignite.internal.processors.cache.GridCacheMessage;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
+import org.apache.ignite.internal.util.typedef.T2;
import org.apache.ignite.internal.util.typedef.internal.S;
- import org.apache.ignite.lang.IgniteProductVersion;
import org.apache.ignite.plugin.extensions.communication.MessageReader;
import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
index 829b29d,f41da2b..103bd49
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
@@@ -1838,10 -1475,8 +1838,10 @@@ public class GridDhtPartitionsExchangeF
*
* @param msg Partitions single message.
*/
- private void updatePartitionSingleMap(GridDhtPartitionsSingleMessage msg) {
+ private void updatePartitionSingleMap(ClusterNode node, GridDhtPartitionsSingleMessage msg) {
+ msgs.put(node.id(), msg);
+
- for (Map.Entry<Integer, GridDhtPartitionMap2> entry : msg.partitions().entrySet()) {
+ for (Map.Entry<Integer, GridDhtPartitionMap> entry : msg.partitions().entrySet()) {
Integer cacheId = entry.getKey();
GridCacheContext cacheCtx = cctx.cacheContext(cacheId);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsFullMessage.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsSingleMessage.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsSingleMessage.java
index 2f16c8c,da7403e..9003f3a
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsSingleMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsSingleMessage.java
@@@ -161,10 -152,7 +161,10 @@@ public class GridDhtPartitionsSingleMes
/**
* @return Local partitions.
*/
- public Map<Integer, GridDhtPartitionMap2> partitions() {
+ public Map<Integer, GridDhtPartitionMap> partitions() {
+ if (parts == null)
+ parts = new HashMap<>();
+
return parts;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsSingleRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
index 79192f5,dc988bd..7ffbf49
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java
@@@ -195,8 -185,9 +186,8 @@@ public class GridDhtPreloader extends G
cctx.shared().affinity().onCacheCreated(cctx);
supplier = new GridDhtPartitionSupplier(cctx);
- demander = new GridDhtPartitionDemander(cctx, demandLock);
+ demander = new GridDhtPartitionDemander(cctx);
- supplier.start();
demander.start();
cctx.events().addListener(discoLsnr, EVT_NODE_JOINED, EVT_NODE_LEFT, EVT_NODE_FAILED);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearGetRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearSingleGetRequest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/GridCacheQueryResponse.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryEntry.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryManager.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryManager.java
index e84555a,745bbde..8377754
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryManager.java
@@@ -56,10 -56,8 +56,9 @@@ import org.apache.ignite.internal.proce
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
import org.apache.ignite.internal.processors.cache.GridCacheManagerAdapter;
import org.apache.ignite.internal.processors.cache.KeyCacheObject;
+import org.apache.ignite.internal.processors.cache.database.CacheDataRow;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicAbstractUpdateFuture;
import org.apache.ignite.internal.processors.continuous.GridContinuousHandler;
- import org.apache.ignite.internal.processors.continuous.GridContinuousProcessor;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.CI2;
import org.apache.ignite.internal.util.typedef.F;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/store/GridCacheStoreManagerAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxEntry.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/TxLock.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/HadoopJobId.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopDirectShuffleMessage.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleAck.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/hadoop/shuffle/HadoopShuffleMessage.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/marshaller/GridMarshallerMappingProcessor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/marshaller/MissingMappingRequestMessage.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/marshaller/MissingMappingResponseMessage.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/utils/PlatformConfigurationUtils.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
index 5ed3853,676c836..6c5922b
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java
@@@ -339,80 -308,6 +339,80 @@@ public class GridQueryProcessor extend
}
/**
+ * Rebuilds indexes for provided caches from corresponding hash indexes.
+ *
+ * @param cacheIds Cache IDs.
+ * @return Future that will be completed when rebuilding is finished.
+ */
+ public IgniteInternalFuture<?> rebuildIndexesFromHash(Collection<Integer> cacheIds) {
+ if (!busyLock.enterBusy())
+ throw new IllegalStateException("Failed to get space size (grid is stopping).");
+
+ try {
+ GridCompoundFuture<Object, ?> fut = new GridCompoundFuture<Object, Object>();
+
+ for (Map.Entry<QueryTypeIdKey, QueryTypeDescriptorImpl> e : types.entrySet()) {
+ if (cacheIds.contains(CU.cacheId(e.getKey().space())))
+ fut.add(rebuildIndexesFromHash(e.getKey().space(), e.getValue()));
+ }
+
+ fut.markInitialized();
+
+ return fut;
+ }
+ finally {
+ busyLock.leaveBusy();
+ }
+ }
+
+ /**
+ * @param space Space.
+ * @param desc Type descriptor.
+ * @return Future that will be completed when rebuilding of all indexes is finished.
+ */
+ private IgniteInternalFuture<Object> rebuildIndexesFromHash(
+ @Nullable final String space,
+ @Nullable final QueryTypeDescriptorImpl desc
+ ) {
+ if (idx == null)
+ return new GridFinishedFuture<>(new IgniteCheckedException("Indexing is disabled."));
+
- if (desc == null || !desc.registered())
++ if (desc == null)
+ return new GridFinishedFuture<>();
+
+ final GridWorkerFuture<Object> fut = new GridWorkerFuture<>();
+
+ idx.markForRebuildFromHash(space, desc);
+
+ GridWorker w = new GridWorker(ctx.igniteInstanceName(), "index-rebuild-worker", log) {
+ @Override protected void body() {
+ try {
+ idx.rebuildIndexesFromHash(space, desc);
+
+ fut.onDone();
+ }
+ catch (Exception e) {
+ fut.onDone(e);
+ }
+ catch (Throwable e) {
+ log.error("Failed to rebuild indexes for type: " + desc.name(), e);
+
+ fut.onDone(e);
+
+ if (e instanceof Error)
+ throw e;
+ }
+ }
+ };
+
+ fut.setWorker(w);
+
+ ctx.getExecutorService().execute(w);
+
+ return fut;
+ }
+
+ /**
* @param space Space name.
* @return Cache object context.
*/
@@@ -455,61 -343,28 +455,61 @@@
try {
CacheObjectContext coctx = cacheObjectContext(space);
- Class<?> valCls = null;
+ QueryTypeDescriptorImpl desc = typeByValue(coctx, key, val, true);
- QueryTypeIdKey id;
+ if (prevVal != null) {
+ QueryTypeDescriptorImpl prevValDesc = typeByValue(coctx, key, prevVal, false);
- boolean binaryVal = ctx.cacheObjects().isBinaryObject(val);
+ if (prevValDesc != null && prevValDesc != desc)
+ idx.remove(space, prevValDesc, key, partId, prevVal, prevVer);
+ }
- if (binaryVal) {
- int typeId = ctx.cacheObjects().typeId(val);
+ if (desc == null)
+ return;
- id = new QueryTypeIdKey(space, typeId);
- }
- else {
- valCls = val.value(coctx, false).getClass();
+ idx.store(space, desc, key, partId, val, ver, expirationTime, link);
+ }
+ finally {
+ busyLock.leaveBusy();
+ }
+ }
- id = new QueryTypeIdKey(space, valCls);
- }
+ /**
+ * @param coctx Cache context.
+ * @param key Key.
+ * @param val Value.
+ * @param checkType If {@code true} checks that key and value type correspond to found TypeDescriptor.
+ * @return Type descriptor if found.
+ * @throws IgniteCheckedException If type check failed.
+ */
+ @Nullable private QueryTypeDescriptorImpl typeByValue(CacheObjectContext coctx,
+ KeyCacheObject key,
+ CacheObject val,
+ boolean checkType)
+ throws IgniteCheckedException {
+ Class<?> valCls = null;
- QueryTypeDescriptorImpl desc = types.get(id);
+ QueryTypeIdKey id;
- if (desc == null)
- return;
+ boolean binaryVal = ctx.cacheObjects().isBinaryObject(val);
+
+ if (binaryVal) {
+ int typeId = ctx.cacheObjects().typeId(val);
+ id = new QueryTypeIdKey(coctx.cacheName(), typeId);
+ }
+ else {
+ valCls = val.value(coctx, false).getClass();
+
+ id = new QueryTypeIdKey(coctx.cacheName(), valCls);
+ }
+
+ QueryTypeDescriptorImpl desc = types.get(id);
+
- if (desc == null || !desc.registered())
++ if (desc == null)
+ return null;
+
+ if (checkType) {
if (!binaryVal && !desc.valueClass().isAssignableFrom(valCls))
throw new IgniteCheckedException("Failed to update index due to class name conflict" +
"(multiple classes with same simple name are stored in the same cache) " +
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryTypeDescriptorImpl.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryTypeDescriptorImpl.java
index a4da5e1,5b29fbb..7677d0d
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryTypeDescriptorImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryTypeDescriptorImpl.java
@@@ -73,28 -73,8 +73,11 @@@ public class QueryTypeDescriptorImpl im
private boolean valTextIdx;
/** */
+ private int typeId;
+
+ /** */
private String affKey;
- /** SPI can decide not to register this type. */
- private boolean registered;
-
- /**
- * @return {@code True} if type registration in SPI was finished and type was not rejected.
- */
- public boolean registered() {
- return registered;
- }
-
- /**
- * @param registered Sets registered flag.
- */
- public void registered(boolean registered) {
- this.registered = registered;
- }
-
/** {@inheritDoc} */
@Override public String name() {
return name;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/messages/GridQueryFailResponse.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
index 1900ac7,d37eb9f..16a4b76
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
@@@ -120,14 -116,8 +117,8 @@@ import static org.apache.ignite.transac
* Grid service processor.
*/
@SuppressWarnings({"SynchronizationOnLocalVariableOrMethodParameter", "ConstantConditions"})
-public class GridServiceProcessor extends GridProcessorAdapter {
+public class GridServiceProcessor extends GridProcessorAdapter implements IgniteChangeGlobalStateSupport {
/** */
- public static final IgniteProductVersion LAZY_SERVICES_CFG_SINCE = IgniteProductVersion.fromString("1.5.22");
-
- /** Versions that only compatible with each other, and from 1.5.33. */
- private static final Set<IgniteProductVersion> SERVICE_TOP_CALLABLE_VER1;
-
- /** */
private final Boolean srvcCompatibilitySysProp;
/** Time to wait before reassignment retries. */
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskProcessor.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCache.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCache.java
index 16d20c1,ec6a350..f239ed9
--- a/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/visor/cache/VisorCache.java
@@@ -26,12 -25,13 +26,13 @@@ import org.apache.ignite.cache.CachePee
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.internal.IgniteEx;
import org.apache.ignite.internal.LessNamingBean;
+ import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
+import org.apache.ignite.internal.processors.cache.GridCacheContext;
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
-import org.apache.ignite.internal.processors.cache.GridCacheSwapManager;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtCacheAdapter;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartitionTopology;
- import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2;
+ import org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap;
import org.apache.ignite.internal.processors.cache.distributed.near.GridNearCacheAdapter;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.lang.IgniteUuid;
@@@ -84,6 -89,23 +85,9 @@@ public class VisorCache implements Seri
/** Number of partitions. */
private int partitions;
- /**
- * Flag indicating that cache has near cache.
- */
++ /** Flag indicating that cache has near cache. */
+ private boolean near;
+
- /** Number of primary entries in offheap. */
- private int offHeapPrimaryEntriesCnt;
-
- /** Number of backup entries in offheap. */
- private int offHeapBackupEntriesCnt;
-
- /** Number of primary entries in swap. */
- private int swapPrimaryEntriesCnt;
-
- /** Number of backup entries in swap. */
- private int swapBackupEntriesCnt;
-
/** Cache metrics. */
private VisorCacheMetrics metrics;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/visor/compute/VisorGatewayTask.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/internal/visor/query/VisorQueryJob.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
----------------------------------------------------------------------
diff --cc modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index cc07f3e,3e7d815..7dad586
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@@ -3670,73 -3639,11 +3651,37 @@@ class ServerImpl extends TcpDiscoveryIm
return;
}
+ boolean locActiveOnStart = booleanAttribute(locNode, ATTR_ACTIVE_ON_START, true);
+ boolean rmtActiveOnStart = booleanAttribute(node, ATTR_ACTIVE_ON_START, true);
+
+ if (locActiveOnStart != rmtActiveOnStart) {
+ String errMsg = "Local node's active on start flag differs from " +
+ "the same property on remote node (make sure all nodes in topology have the same " +
+ "active on start flag) [locActiveOnStart=" + locActiveOnStart +
+ ", rmtActiveOnStart=" + rmtActiveOnStart +
+ ", locNodeAddrs=" + U.addressesAsString(locNode) +
+ ", rmtNodeAddrs=" + U.addressesAsString(node) +
+ ", locNodeId=" + locNode.id() + ", rmtNodeId=" + msg.creatorNodeId() + ']';
+
+ String sndMsg = "Local node's active on start flag differs from " +
+ "the same property on remote node (make sure all nodes in topology have the same " +
+ "active on start flag) [locActiveOnStart=" + rmtActiveOnStart +
+ ", rmtActiveOnStart=" + locActiveOnStart +
+ ", locNodeAddrs=" + U.addressesAsString(node) + ", locPort=" + node.discoveryPort() +
+ ", rmtNodeAddr=" + U.addressesAsString(locNode) + ", locNodeId=" + node.id() +
+ ", rmtNodeId=" + locNode.id() + ']';
+
+ nodeCheckError(node, errMsg, sndMsg);
+
+ // Ignore join request.
+ return;
+ }
+
final Boolean locSrvcCompatibilityEnabled = locNode.attribute(ATTR_SERVICES_COMPATIBILITY_MODE);
- if (node.version().compareToIgnoreTimestamp(GridServiceProcessor.LAZY_SERVICES_CFG_SINCE) >= 0) {
- final Boolean rmtSrvcCompatibilityEnabled = node.attribute(ATTR_SERVICES_COMPATIBILITY_MODE);
-
- if (!F.eq(locSrvcCompatibilityEnabled, rmtSrvcCompatibilityEnabled)) {
- utilityPool.execute(
- new Runnable() {
- @Override public void run() {
- String errMsg = "Local node's " + IGNITE_SERVICES_COMPATIBILITY_MODE +
- " property value differs from remote node's value " +
- "(to make sure all nodes in topology have identical IgniteServices compatibility mode, " +
- "configure system property explicitly) " +
- "[locSrvcCompatibilityEnabled=" + locSrvcCompatibilityEnabled +
- ", rmtSrvcCompatibilityEnabled=" + rmtSrvcCompatibilityEnabled +
- ", locNodeAddrs=" + U.addressesAsString(locNode) +
- ", rmtNodeAddrs=" + U.addressesAsString(node) +
- ", locNodeId=" + locNode.id() + ", rmtNodeId=" + msg.creatorNodeId() + ']';
-
- String sndMsg = "Local node's " + IGNITE_SERVICES_COMPATIBILITY_MODE +
- " property value differs from remote node's value " +
- "(to make sure all nodes in topology have identical IgniteServices compatibility mode, " +
- "configure system property explicitly) " +
- "[locSrvcCompatibilityEnabled=" + rmtSrvcCompatibilityEnabled +
- ", rmtSrvcCompatibilityEnabled=" + locSrvcCompatibilityEnabled +
- ", locNodeAddrs=" + U.addressesAsString(node) + ", locPort=" + node.discoveryPort() +
- ", rmtNodeAddr=" + U.addressesAsString(locNode) + ", locNodeId=" + node.id() +
- ", rmtNodeId=" + locNode.id() + ']';
+ final Boolean rmtSrvcCompatibilityEnabled = node.attribute(ATTR_SERVICES_COMPATIBILITY_MODE);
- nodeCheckError(
- node,
- errMsg,
- sndMsg);
- }
- });
-
- // Ignore join request.
- return;
- }
- }
- else if (Boolean.FALSE.equals(locSrvcCompatibilityEnabled)) {
+ if (!F.eq(locSrvcCompatibilityEnabled, rmtSrvcCompatibilityEnabled)) {
utilityPool.execute(
new Runnable() {
@Override public void run() {
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/main/resources/META-INF/classnames.properties
----------------------------------------------------------------------
diff --cc modules/core/src/main/resources/META-INF/classnames.properties
index 988d889,c5f4b92..3598447
--- a/modules/core/src/main/resources/META-INF/classnames.properties
+++ b/modules/core/src/main/resources/META-INF/classnames.properties
@@@ -63,6 -63,6 +64,7 @@@ org.apache.ignite.cache.affinity.fair.F
org.apache.ignite.cache.affinity.fair.FairAffinityFunction$PartitionSetComparator
org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction
org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction$HashComparator
++org.apache.ignite.cache.eviction.AbstractEvictionPolicy
org.apache.ignite.cache.eviction.EvictionFilter
org.apache.ignite.cache.eviction.fifo.FifoEvictionPolicy
org.apache.ignite.cache.eviction.igfs.IgfsEvictionFilter
@@@ -144,7 -144,6 +146,8 @@@ org.apache.ignite.configuration.CacheCo
org.apache.ignite.configuration.CollectionConfiguration
org.apache.ignite.configuration.DeploymentMode
org.apache.ignite.configuration.IgniteReflectionFactory
+org.apache.ignite.configuration.MemoryConfiguration
++org.apache.ignite.configuration.MemoryPolicyConfiguration
org.apache.ignite.configuration.NearCacheConfiguration
org.apache.ignite.configuration.TopologyValidator
org.apache.ignite.configuration.TransactionConfiguration
@@@ -229,6 -230,6 +234,7 @@@ org.apache.ignite.internal.IgniteKerna
org.apache.ignite.internal.IgniteKernal$1
org.apache.ignite.internal.IgniteKernal$5
org.apache.ignite.internal.IgniteMessagingImpl
++org.apache.ignite.internal.IgniteNeedReconnectException
org.apache.ignite.internal.IgniteSchedulerImpl
org.apache.ignite.internal.IgniteServicesImpl
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance$1
@@@ -503,6 -490,6 +510,7 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$5
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$6
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$7
++org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$8
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeFutureSet
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$MessageHandler
org.apache.ignite.internal.processors.cache.GridCacheProcessor$2
@@@ -515,9 -502,25 +523,10 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.GridCacheProcessor$LocalAffinityFunction
org.apache.ignite.internal.processors.cache.GridCacheProxyImpl
org.apache.ignite.internal.processors.cache.GridCacheReturn
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$12
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$14
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$16
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$17
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$18
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$19
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$20
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$23
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$3
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$4
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$5
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$6
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$7
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$8
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$9
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$CloseablePartitionsIterator
-org.apache.ignite.internal.processors.cache.GridCacheSwapManager$IteratorWrapper
org.apache.ignite.internal.processors.cache.GridCacheTryPutFailedException
+org.apache.ignite.internal.processors.cache.GridCacheTtlManager$1
org.apache.ignite.internal.processors.cache.GridCacheTtlManager$GridConcurrentSkipListSetEx
++org.apache.ignite.internal.processors.cache.GridCacheUpdateAtomicResult$UpdateOutcome
org.apache.ignite.internal.processors.cache.GridCacheUtilityKey
org.apache.ignite.internal.processors.cache.GridCacheUtils$1
org.apache.ignite.internal.processors.cache.GridCacheUtils$10
@@@ -540,45 -543,33 +549,50 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.GridCacheUtils$9
org.apache.ignite.internal.processors.cache.GridCacheValueCollection
org.apache.ignite.internal.processors.cache.GridCacheValueCollection$1
+org.apache.ignite.internal.processors.cache.GridChangeGlobalStateMessageResponse
org.apache.ignite.internal.processors.cache.GridDeferredAckMessageSender$DeferredAckMessageBuffer
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$1
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$2
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$3
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$4
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$5
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$6
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$7
+org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$8
++org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl$1
org.apache.ignite.internal.processors.cache.IgniteCacheProxy
org.apache.ignite.internal.processors.cache.IgniteCacheProxy$1
- org.apache.ignite.internal.processors.cache.IgniteCacheProxy$10
++org.apache.ignite.internal.processors.cache.IgniteCacheProxy$1$1
org.apache.ignite.internal.processors.cache.IgniteCacheProxy$2
--org.apache.ignite.internal.processors.cache.IgniteCacheProxy$2$1
org.apache.ignite.internal.processors.cache.IgniteCacheProxy$3
org.apache.ignite.internal.processors.cache.IgniteCacheProxy$4
--org.apache.ignite.internal.processors.cache.IgniteCacheProxy$5
++org.apache.ignite.internal.processors.cache.IgniteCacheProxy$6
+ org.apache.ignite.internal.processors.cache.IgniteCacheProxy$7
org.apache.ignite.internal.processors.cache.IgniteCacheProxy$8
--org.apache.ignite.internal.processors.cache.IgniteCacheProxy$9
+org.apache.ignite.internal.processors.cache.IgniteRebalanceIterator
org.apache.ignite.internal.processors.cache.KeyCacheObject
org.apache.ignite.internal.processors.cache.KeyCacheObjectImpl
org.apache.ignite.internal.processors.cache.QueryCursorImpl$State
org.apache.ignite.internal.processors.cache.affinity.GridCacheAffinityProxy
++org.apache.ignite.internal.processors.cache.binary.BinaryMetadataHolder
org.apache.ignite.internal.processors.cache.binary.BinaryMetadataKey
org.apache.ignite.internal.processors.cache.binary.CacheDefaultBinaryAffinityKeyMapper
- org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$4
-org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$1
-org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$5
-org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$6
--org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$MetaDataEntryFilter
--org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$MetaDataPredicate
--org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$MetadataProcessor
++org.apache.ignite.internal.processors.cache.binary.CacheObjectBinaryProcessorImpl$3
++org.apache.ignite.internal.processors.cache.binary.MetadataRequestMessage
++org.apache.ignite.internal.processors.cache.binary.MetadataResponseMessage
++org.apache.ignite.internal.processors.cache.binary.MetadataResponseMessage$ClientResponseStatus
++org.apache.ignite.internal.processors.cache.binary.MetadataUpdateAcceptedMessage
++org.apache.ignite.internal.processors.cache.binary.MetadataUpdateProposedMessage
++org.apache.ignite.internal.processors.cache.binary.MetadataUpdateProposedMessage$ProposalStatus
++org.apache.ignite.internal.processors.cache.binary.MetadataUpdateResult$ResultType
++org.apache.ignite.internal.processors.cache.database.CacheDataRowAdapter$RowData
+org.apache.ignite.internal.processors.cache.database.tree.BPlusTree$Bool
+org.apache.ignite.internal.processors.cache.database.tree.BPlusTree$DestroyBag
+org.apache.ignite.internal.processors.cache.database.tree.BPlusTree$Result
+org.apache.ignite.internal.processors.cache.database.tree.io.DataPageIO$EntryPart
org.apache.ignite.internal.processors.cache.datastructures.CacheDataStructuresManager$BlockSetCallable
org.apache.ignite.internal.processors.cache.datastructures.CacheDataStructuresManager$QueueHeaderPredicate
org.apache.ignite.internal.processors.cache.datastructures.CacheDataStructuresManager$RemoveSetDataCallable
--org.apache.ignite.internal.processors.cache.distributed.GridCacheCommittedTxInfo
org.apache.ignite.internal.processors.cache.distributed.GridCacheTtlUpdateRequest
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture$1
org.apache.ignite.internal.processors.cache.distributed.GridCacheTxRecoveryFuture$2
@@@ -632,7 -622,7 +645,6 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter$1
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter$10
--org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter$10$1
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter$11
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter$2
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTransactionalCacheAdapter$3
@@@ -718,6 -713,7 +735,8 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateFuture$2
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateFuture$3
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateResponse
++org.apache.ignite.internal.processors.cache.distributed.dht.atomic.NearCacheUpdates
+ org.apache.ignite.internal.processors.cache.distributed.dht.atomic.UpdateErrors
org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedCache
org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedCache$2
org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedCache$3
@@@ -740,14 -736,12 +759,11 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$1$1
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$2
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$3
- org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$3$1
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$4$1
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$5$1
- org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$DemandWorker$1
- org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander$DemandWorker$2
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionExchangeId
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionFullMap
- org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2
+ org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap
-org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionSupplier$1
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionSupplier$SupplyContextPhase
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionSupplyMessage
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionSupplyMessageV2
@@@ -819,13 -813,13 +835,26 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxFinishResponse
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$1
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$10
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$11
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$12
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$13
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$14
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$15
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$16
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$17
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$18
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$19
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$2
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$20
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$21
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$3
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$4
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$5
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$6
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$7
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$8
++org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxLocal$FinishClosure
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareFutureAdapter$1
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareRequest
org.apache.ignite.internal.processors.cache.distributed.near.GridNearTxPrepareResponse
@@@ -868,12 -865,17 +897,15 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$9
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CacheSqlIndexMetadata
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CacheSqlMetadata
+ org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CachedResult
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CachedResult$QueueIterator
-org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$CompoundIterator
+ org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$FieldsResult
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$MetadataJob
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$MetadataJob$1
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$MetadataJob$2
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$MetadataJob$3
-org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$OffheapIteratorClosure
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$PeekValueExpiryAwareIterator
+ org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$QueryResult
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$RequestFutureMap
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$RequestFutureMap$1
org.apache.ignite.internal.processors.cache.query.GridCacheQueryMetricsAdapter
@@@ -935,19 -938,19 +968,6 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$9
org.apache.ignite.internal.processors.cache.transactions.IgniteTxKey
org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$1
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$10
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$11
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$12
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$13
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$14
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$15
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$2
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$4
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$5
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$6
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$9
--org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$FinishClosure
org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$PLC1
org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$PLC2
org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$PMC
@@@ -985,18 -988,12 +1005,12 @@@ org.apache.ignite.internal.processors.c
org.apache.ignite.internal.processors.cacheobject.IgniteCacheObjectProcessorImpl$UserKeyCacheObjectImpl
org.apache.ignite.internal.processors.clock.GridClockDeltaSnapshotMessage
org.apache.ignite.internal.processors.clock.GridClockDeltaVersion
-org.apache.ignite.internal.processors.closure.GridClosureProcessor$C1MLA
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C1
-org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2MLA
+org.apache.ignite.internal.processors.closure.GridClosureProcessor$C1MLA
- org.apache.ignite.internal.processors.closure.GridClosureProcessor$C1MLAV2
- org.apache.ignite.internal.processors.closure.GridClosureProcessor$C1V2
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2
-org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4MLA
+org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2MLA
- org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2MLAV2
- org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2V2
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4
+org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4MLA
- org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4MLAV2
- org.apache.ignite.internal.processors.closure.GridClosureProcessor$C4V2
org.apache.ignite.internal.processors.closure.GridClosureProcessor$T1
org.apache.ignite.internal.processors.closure.GridClosureProcessor$T10
org.apache.ignite.internal.processors.closure.GridClosureProcessor$T11
@@@ -1292,9 -1292,8 +1313,9 @@@ org.apache.ignite.internal.processors.q
org.apache.ignite.internal.processors.query.GridQueryProcessor$5
org.apache.ignite.internal.processors.query.GridQueryProcessor$6
org.apache.ignite.internal.processors.query.GridQueryProcessor$7
+org.apache.ignite.internal.processors.query.GridQueryProcessor$8
- org.apache.ignite.internal.processors.query.GridQueryProcessor$IndexType
org.apache.ignite.internal.processors.query.IgniteSQLException
+ org.apache.ignite.internal.processors.query.QueryUtils$IndexType
org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryCancelRequest
org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryFailResponse
org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryNextPageRequest
@@@ -1467,6 -1465,6 +1488,7 @@@ org.apache.ignite.internal.util.GridSpi
org.apache.ignite.internal.util.GridStringBuilder
org.apache.ignite.internal.util.GridSynchronizedMap
org.apache.ignite.internal.util.IgniteExceptionRegistry$ExceptionInfo
++org.apache.ignite.internal.util.IgniteTree$OperationType
org.apache.ignite.internal.util.IgniteUtils$10
org.apache.ignite.internal.util.IgniteUtils$11
org.apache.ignite.internal.util.IgniteUtils$12
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/cache/store/IgniteCacheExpiryStoreLoadSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/GridAffinityNoCacheSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/managers/GridManagerLocalMessageListenerSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridCommunicationSendMessageSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheExchangeMessageDuplicatedStateTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFailoverSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
----------------------------------------------------------------------
diff --cc modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
index 08dc56a,20bd9eb..de0b532
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
@@@ -5586,12 -6192,16 +6193,15 @@@ public abstract class GridCacheAbstract
/**
* @param ignite Node.
* @param cache Cache.
+ * @param async Use async API.
+ * @param oldAsync Use old async API.
* @throws Exception If failed.
*/
- private void doTransformResourceInjection(Ignite ignite, IgniteCache<String, Integer> cache) throws Exception {
+ private void doTransformResourceInjection(Ignite ignite, IgniteCache<String, Integer> cache, boolean async,
+ boolean oldAsync) throws Exception {
final Collection<ResourceType> required = Arrays.asList(ResourceType.IGNITE_INSTANCE,
ResourceType.CACHE_NAME,
- ResourceType.LOGGER,
- ResourceType.SERVICE);
+ ResourceType.LOGGER);
final CacheEventListener lsnr = new CacheEventListener();
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractMetricsSelfTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentTxMultiNodeTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheStoreManagerDeserializationTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheConfigVariationsFullApiTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheInvokeAbstractTest.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/2c480b4f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCachePeekModesAbstractTest.java
----------------------------------------------------------------------