This is an automated email from the ASF dual-hosted git repository. zhaoc 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 54952a2 Remove and comment some FE code (#2766) 54952a2 is described below commit 54952a24adf9143c9aedde5cfcacf14b0acaebb5 Author: kangkaisen <kangkai...@apache.org> AuthorDate: Wed Jan 15 15:14:52 2020 +0800 Remove and comment some FE code (#2766) --- fe/src/main/java/org/apache/doris/catalog/Replica.java | 1 + .../java/org/apache/doris/catalog/TabletInvertedIndex.java | 1 - .../java/org/apache/doris/clone/BackendLoadStatistic.java | 2 +- fe/src/main/java/org/apache/doris/clone/LoadBalancer.java | 7 ++----- fe/src/main/java/org/apache/doris/clone/TabletChecker.java | 2 +- .../main/java/org/apache/doris/clone/TabletScheduler.java | 13 ++++--------- fe/src/main/java/org/apache/doris/system/Backend.java | 13 +++---------- .../apache/doris/transaction/TransactionIdGenerator.java | 3 +-- .../java/org/apache/doris/transaction/TransactionState.java | 7 ++----- 9 files changed, 15 insertions(+), 34 deletions(-) diff --git a/fe/src/main/java/org/apache/doris/catalog/Replica.java b/fe/src/main/java/org/apache/doris/catalog/Replica.java index d088c54..4588d5d 100644 --- a/fe/src/main/java/org/apache/doris/catalog/Replica.java +++ b/fe/src/main/java/org/apache/doris/catalog/Replica.java @@ -85,6 +85,7 @@ public class Replica implements Writable { private long pathHash = -1; + // bad means this Replica is unrecoverable and we will delete it private boolean bad = false; /* diff --git a/fe/src/main/java/org/apache/doris/catalog/TabletInvertedIndex.java b/fe/src/main/java/org/apache/doris/catalog/TabletInvertedIndex.java index b2d00cf..dcb873d 100644 --- a/fe/src/main/java/org/apache/doris/catalog/TabletInvertedIndex.java +++ b/fe/src/main/java/org/apache/doris/catalog/TabletInvertedIndex.java @@ -502,7 +502,6 @@ public class TabletInvertedIndex { writeLock(); try { Preconditions.checkState(tabletMetaMap.containsKey(tabletId)); - TabletMeta tabletMeta = tabletMetaMap.get(tabletId); if (replicaMetaTable.containsRow(tabletId)) { Replica replica = replicaMetaTable.remove(tabletId, backendId); replicaToTabletMap.remove(replica.getId()); diff --git a/fe/src/main/java/org/apache/doris/clone/BackendLoadStatistic.java b/fe/src/main/java/org/apache/doris/clone/BackendLoadStatistic.java index acd61a4..5479a16 100644 --- a/fe/src/main/java/org/apache/doris/clone/BackendLoadStatistic.java +++ b/fe/src/main/java/org/apache/doris/clone/BackendLoadStatistic.java @@ -203,7 +203,7 @@ public class BackendLoadStatistic { totalReplicaNumMap = invertedIndex.getReplicaNumByBeIdAndStorageMedium(beId); // This is very tricky. because the number of replica on specified medium we get - // from getReplicaNumByBeIdAndStorageMedium() is counted based on meta data. + // from getReplicaNumByBeIdAndStorageMedium() is defined by table properties, // but in fact there may not has SSD disk on this backend. So if we found that no SSD disk on this // backend, set the replica number to 0, otherwise, the average replica number on specified medium // will be incorrect. diff --git a/fe/src/main/java/org/apache/doris/clone/LoadBalancer.java b/fe/src/main/java/org/apache/doris/clone/LoadBalancer.java index 12426a5..f764f56 100644 --- a/fe/src/main/java/org/apache/doris/clone/LoadBalancer.java +++ b/fe/src/main/java/org/apache/doris/clone/LoadBalancer.java @@ -229,7 +229,7 @@ public class LoadBalancer { } // if all low backends is not available, return - if (lowBe.stream().allMatch(b -> !b.isAvailable())) { + if (lowBe.stream().noneMatch(BackendLoadStatistic::isAvailable)) { throw new SchedException(Status.UNRECOVERABLE, "all low load backends is unavailable"); } @@ -261,9 +261,7 @@ public class LoadBalancer { continue; } long pathHash = slot.takeBalanceSlot(replica.getPathHash()); - if (pathHash == -1) { - continue; - } else { + if (pathHash != -1) { tabletCtx.setSrc(replica); setSource = true; break; @@ -318,7 +316,6 @@ public class LoadBalancer { long pathHash = slot.takeAnAvailBalanceSlotFrom(pathLow); if (pathHash == -1) { LOG.debug("paths has no available balance slot: {}", pathLow); - continue; } else { tabletCtx.setDest(beStat.getBeId(), pathHash); setDest = true; diff --git a/fe/src/main/java/org/apache/doris/clone/TabletChecker.java b/fe/src/main/java/org/apache/doris/clone/TabletChecker.java index 1d9ac6d..bae2438 100644 --- a/fe/src/main/java/org/apache/doris/clone/TabletChecker.java +++ b/fe/src/main/java/org/apache/doris/clone/TabletChecker.java @@ -126,7 +126,7 @@ public class TabletChecker extends MasterDaemon { } // we also need to change the priority of tablets which are already in - tabletScheduler.changePriorityOfTablets(dbId, tblId, partitionIds); + tabletScheduler.changeTabletsPriorityToVeryHigh(dbId, tblId, partitionIds); } private void removePrios(long dbId, long tblId, List<Long> partitionIds) { diff --git a/fe/src/main/java/org/apache/doris/clone/TabletScheduler.java b/fe/src/main/java/org/apache/doris/clone/TabletScheduler.java index e8dbee3..a7d1b23 100644 --- a/fe/src/main/java/org/apache/doris/clone/TabletScheduler.java +++ b/fe/src/main/java/org/apache/doris/clone/TabletScheduler.java @@ -228,9 +228,9 @@ public class TabletScheduler extends MasterDaemon { } /* - * Iterate current tablets, change their priority if necessary. + * Iterate current tablets, change their priority to VERY_HIGH if necessary. */ - public synchronized void changePriorityOfTablets(long dbId, long tblId, List<Long> partitionIds) { + public synchronized void changeTabletsPriorityToVeryHigh(long dbId, long tblId, List<Long> partitionIds) { PriorityQueue<TabletSchedCtx> newPendingTablets = new PriorityQueue<>(); for (TabletSchedCtx tabletCtx : pendingTablets) { if (tabletCtx.getDbId() == dbId && tabletCtx.getTblId() == tblId @@ -552,6 +552,7 @@ public class TabletScheduler extends MasterDaemon { handleReplicaMissing(tabletCtx, batchTask); break; case VERSION_INCOMPLETE: + case NEED_FURTHER_REPAIR: // same as version incomplete, it prefer to the dest replica which need further repair handleReplicaVersionIncomplete(tabletCtx, batchTask); break; case REPLICA_RELOCATING: @@ -572,10 +573,6 @@ public class TabletScheduler extends MasterDaemon { case COLOCATE_REDUNDANT: handleColocateRedundant(tabletCtx); break; - case NEED_FURTHER_REPAIR: - // same as version incomplete, it prefer to the dest replica which need further repair - handleReplicaVersionIncomplete(tabletCtx, batchTask); - break; default: break; } @@ -1224,9 +1221,7 @@ public class TabletScheduler extends MasterDaemon { // 1. remove the tablet ctx if timeout List<TabletSchedCtx> timeoutTablets = Lists.newArrayList(); synchronized (this) { - runningTablets.values().stream().filter(t -> t.isTimeout()).forEach(t -> { - timeoutTablets.add(t); - }); + runningTablets.values().stream().filter(TabletSchedCtx::isTimeout).forEach(timeoutTablets::add); for (TabletSchedCtx tabletSchedCtx : timeoutTablets) { removeTabletCtx(tabletSchedCtx, "timeout"); diff --git a/fe/src/main/java/org/apache/doris/system/Backend.java b/fe/src/main/java/org/apache/doris/system/Backend.java index 79e81c0..4bce2a9 100644 --- a/fe/src/main/java/org/apache/doris/system/Backend.java +++ b/fe/src/main/java/org/apache/doris/system/Backend.java @@ -37,13 +37,13 @@ import org.apache.logging.log4j.Logger; import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicReference; -import java.util.stream.Collectors; /** * This class extends the primary identifier of a Backend with ephemeral state, @@ -164,26 +164,21 @@ public class Backend implements Writable { // for test only public void updateOnce(int bePort, int httpPort, int beRpcPort) { - boolean isChanged = false; if (this.bePort.get() != bePort) { - isChanged = true; this.bePort.set(bePort); } if (this.httpPort.get() != httpPort) { - isChanged = true; this.httpPort.set(httpPort); } if (this.beRpcPort.get() != beRpcPort) { - isChanged = true; this.beRpcPort.set(beRpcPort); } long currentTime = System.currentTimeMillis(); this.lastUpdateMs.set(currentTime); if (!isAlive.get()) { - isChanged = true; this.lastStartTime.set(currentTime); LOG.info("{} is alive,", this.toString()); this.isAlive.set(true); @@ -354,7 +349,6 @@ public class Backend implements Writable { } public void updateDisks(Map<String, TDisk> backendDisks) { - ImmutableMap<String, DiskInfo> disks = disksRef.get(); // The very first time to init the path info if (!initPathInfo) { @@ -362,11 +356,12 @@ public class Backend implements Writable { for (DiskInfo diskInfo : disks.values()) { if (diskInfo.getPathHash() == 0) { allPathHashUpdated = false; + break; } } if (allPathHashUpdated) { initPathInfo = true; - Catalog.getCurrentSystemInfo().updatePathInfo(disks.values().stream().collect(Collectors.toList()), Lists.newArrayList()); + Catalog.getCurrentSystemInfo().updatePathInfo(new ArrayList<>(disks.values()), Lists.newArrayList()); } } @@ -555,8 +550,6 @@ public class Backend implements Writable { return BackendState.using; case 1: return BackendState.offline; - case 2: - return BackendState.free; default: return BackendState.free; } diff --git a/fe/src/main/java/org/apache/doris/transaction/TransactionIdGenerator.java b/fe/src/main/java/org/apache/doris/transaction/TransactionIdGenerator.java index 77e6d88..6f741ce 100644 --- a/fe/src/main/java/org/apache/doris/transaction/TransactionIdGenerator.java +++ b/fe/src/main/java/org/apache/doris/transaction/TransactionIdGenerator.java @@ -66,8 +66,7 @@ public class TransactionIdGenerator { out.writeLong(batchEndId); } public void readFields(DataInput in) throws IOException { - long endId = in.readLong(); - batchEndId = endId; + batchEndId = in.readLong(); // maybe a little rough nextId = batchEndId; } diff --git a/fe/src/main/java/org/apache/doris/transaction/TransactionState.java b/fe/src/main/java/org/apache/doris/transaction/TransactionState.java index 4b2c5e8..03bcf70 100644 --- a/fe/src/main/java/org/apache/doris/transaction/TransactionState.java +++ b/fe/src/main/java/org/apache/doris/transaction/TransactionState.java @@ -211,11 +211,8 @@ public class TransactionState implements Writable { } public boolean isRunning() { - if (transactionStatus == TransactionStatus.PREPARE - || transactionStatus == TransactionStatus.COMMITTED) { - return true; - } - return false; + return transactionStatus == TransactionStatus.PREPARE + || transactionStatus == TransactionStatus.COMMITTED; } public void addPublishVersionTask(Long backendId, PublishVersionTask task) { --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org