This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.0 by this push: new 9676cb03488 [fix](load) acquire latest token instead of oldest token in TokenManager (#34424) (#34535) 9676cb03488 is described below commit 9676cb03488ca90bce694d5273c09fb81c9424fc Author: Kaijie Chen <c...@apache.org> AuthorDate: Wed May 8 19:11:52 2024 +0800 [fix](load) acquire latest token instead of oldest token in TokenManager (#34424) (#34535) --- .../main/java/org/apache/doris/load/loadv2/TokenManager.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/TokenManager.java b/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/TokenManager.java index 80f6c3f9b50..7debdfd8143 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/TokenManager.java +++ b/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/TokenManager.java @@ -44,6 +44,7 @@ public class TokenManager { private int thriftTimeoutMs = 300 * 1000; private EvictingQueue<String> tokenQueue; + private String latestToken; private ScheduledExecutorService tokenGenerator; public TokenManager() { @@ -52,13 +53,18 @@ public class TokenManager { public void start() { this.tokenQueue = EvictingQueue.create(Config.token_queue_size); // init one token to avoid async issue. - this.tokenQueue.offer(generateNewToken()); + this.addNewToken(generateNewToken()); this.tokenGenerator = Executors.newScheduledThreadPool(1, new CustomThreadFactory("token-generator")); - this.tokenGenerator.scheduleAtFixedRate(() -> tokenQueue.offer(generateNewToken()), 0, + this.tokenGenerator.scheduleAtFixedRate(() -> this.addNewToken(generateNewToken()), 0, Config.token_generate_period_hour, TimeUnit.HOURS); } + private void addNewToken(String token) { + tokenQueue.offer(token); + latestToken = token; + } + private String generateNewToken() { return UUID.randomUUID().toString(); } @@ -70,7 +76,7 @@ public class TokenManager { public String acquireToken() throws UserException { if (Env.getCurrentEnv().isMaster() || FeConstants.runningUnitTest) { - return tokenQueue.peek(); + return latestToken; } else { try { return acquireTokenFromMaster(); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org