You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2021/01/19 02:26:02 UTC
[incubator-doris] branch master updated: [Bug] Fix fe restart
failed bug when replay erase table log (#5221)
This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-doris.git
The following commit(s) were added to refs/heads/master by this push:
new a59831d [Bug] Fix fe restart failed bug when replay erase table log (#5221)
a59831d is described below
commit a59831d1193126d2fdfbcde11c4430c6e5418537
Author: gengjun-git <54...@users.noreply.github.com>
AuthorDate: Tue Jan 19 10:25:49 2021 +0800
[Bug] Fix fe restart failed bug when replay erase table log (#5221)
Co-authored-by: gengjun <ge...@dorisdb.com>
---
.../main/java/org/apache/doris/catalog/CatalogRecycleBin.java | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/CatalogRecycleBin.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/CatalogRecycleBin.java
index db3185e..4f2788c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/CatalogRecycleBin.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/CatalogRecycleBin.java
@@ -55,6 +55,9 @@ import java.util.Set;
public class CatalogRecycleBin extends MasterDaemon implements Writable {
private static final Logger LOG = LogManager.getLogger(CatalogRecycleBin.class);
+ // erase meta at least after minEraseLatency milliseconds
+ // to avoid erase log ahead of drop log
+ private static final long minEraseLatency = 10 * 60 * 1000; // 10 min
private Map<Long, RecycleDatabaseInfo> idToDatabase;
private Map<Long, RecycleTableInfo> idToTable;
@@ -130,10 +133,8 @@ public class CatalogRecycleBin extends MasterDaemon implements Writable {
}
private synchronized boolean isExpire(long id, long currentTimeMs) {
- if (currentTimeMs - idToRecycleTime.get(id) > Config.catalog_trash_expire_second * 1000L) {
- return true;
- }
- return false;
+ long latency = currentTimeMs - idToRecycleTime.get(id);
+ return latency > minEraseLatency && latency > Config.catalog_trash_expire_second * 1000L;
}
private synchronized void eraseDatabase(long currentTimeMs) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org