You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/07/11 04:08:27 UTC
[iotdb] branch master updated: fix (#6630)
This is an automated email from the ASF dual-hosted git repository.
xingtanzjr pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new a7be051e5f fix (#6630)
a7be051e5f is described below
commit a7be051e5fd239fca8ec6868121d6b18b775b1f5
Author: Alan Choo <43...@users.noreply.github.com>
AuthorDate: Mon Jul 11 12:08:23 2022 +0800
fix (#6630)
---
.../consensus/multileader/client/DispatchLogHandler.java | 2 ++
.../consensus/multileader/logdispatcher/IndexController.java | 11 -----------
.../consensus/multileader/logdispatcher/LogDispatcher.java | 11 +++++++----
3 files changed, 9 insertions(+), 15 deletions(-)
diff --git a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java
index 14a2b4ad58..b4cefed078 100644
--- a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java
+++ b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java
@@ -57,6 +57,8 @@ public class DispatchLogHandler implements AsyncMethodCallback<TSyncLogRes> {
sleepCorrespondingTimeAndRetryAsynchronous();
} else {
thread.getSyncStatus().removeBatch(batch);
+ // update safely deleted search index after current sync index is updated by removeBatch
+ thread.updateSafelyDeletedSearchIndex();
}
}
diff --git a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/IndexController.java b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/IndexController.java
index 064f6841e0..62cc0e5894 100644
--- a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/IndexController.java
+++ b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/IndexController.java
@@ -54,17 +54,6 @@ public class IndexController {
restore();
}
- public long incrementAndGet() {
- try {
- lock.writeLock().lock();
- currentIndex++;
- checkPersist();
- return currentIndex;
- } finally {
- lock.writeLock().unlock();
- }
- }
-
public long updateAndGet(long index) {
try {
lock.writeLock().lock();
diff --git a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/LogDispatcher.java b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/LogDispatcher.java
index ce6adc5fff..0a65148fe3 100644
--- a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/LogDispatcher.java
+++ b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/logdispatcher/LogDispatcher.java
@@ -201,10 +201,6 @@ public class LogDispatcher {
syncStatus.addNextBatch(batch);
// sends batch asynchronously and migrates the retry logic into the callback handler
sendBatchAsync(batch, new DispatchLogHandler(this, batch));
- // update safely deleted search index to delete outdated info,
- // indicating that insert nodes whose search index are before this value can be deleted
- // safely
- reader.setSafelyDeletedSearchIndex(impl.getCurrentSafelyDeletedSearchIndex());
}
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
@@ -214,6 +210,13 @@ public class LogDispatcher {
logger.info("{}: Dispatcher for {} exits", impl.getThisNode(), peer);
}
+ public void updateSafelyDeletedSearchIndex() {
+ // update safely deleted search index to delete outdated info,
+ // indicating that insert nodes whose search index are before this value can be deleted
+ // safely
+ reader.setSafelyDeletedSearchIndex(impl.getCurrentSafelyDeletedSearchIndex());
+ }
+
public PendingBatch getBatch() {
PendingBatch batch;
List<TLogBatch> logBatches = new ArrayList<>();