You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by mm...@apache.org on 2021/08/10 11:44:04 UTC
[ignite] branch master updated: IGNITE-15208 Fix rebalance
procedure if delay greater that zero (#9310)
This is an automated email from the ASF dual-hosted git repository.
mmuzaf pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new 4703ec5 IGNITE-15208 Fix rebalance procedure if delay greater that zero (#9310)
4703ec5 is described below
commit 4703ec5d1980251545e0796aece2eeeef534a558
Author: Maxim Muzafarov <mm...@apache.org>
AuthorDate: Tue Aug 10 14:43:39 2021 +0300
IGNITE-15208 Fix rebalance procedure if delay greater that zero (#9310)
---
.../cache/distributed/dht/preloader/GridDhtPartitionDemander.java | 4 +++-
.../cache/distributed/dht/preloader/GridDhtPreloader.java | 7 +++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git 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
index 574a303..12caefd 100644
--- 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
@@ -347,7 +347,9 @@ public class GridDhtPartitionDemander {
long delay = grp.config().getRebalanceDelay();
- if ((delay == 0 || force) && assignments != null) {
+ if (delay == 0 || force) {
+ assert assignments != null;
+
final RebalanceFuture oldFut = rebalanceFut;
if (assignments.cancelled()) { // Pending exchange.
diff --git 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
index 21f2652..9823d03 100644
--- 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
@@ -377,10 +377,13 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter {
) {
long delay = grp.config().getRebalanceDelay();
boolean forceRebalance = forcedRebFut != null;
+ GridDhtPreloaderAssignments assigns = null;
// Don't delay for dummy reassigns to avoid infinite recursion.
- return (delay == 0 || forceRebalance) ? demander.addAssignments(generateAssignments(exchId, exchFut), forceRebalance,
- rebalanceId, next, forcedRebFut, compatibleRebFut) : null;
+ if (delay == 0 || forceRebalance)
+ assigns = generateAssignments(exchId, exchFut);
+
+ return demander.addAssignments(assigns, forceRebalance, rebalanceId, next, forcedRebFut, compatibleRebFut);
}
/**