You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by yo...@apache.org on 2022/08/02 06:25:54 UTC
[bookkeeper] 01/22: use LinkedList to take place of ArrayList. (#3330)
This is an automated email from the ASF dual-hosted git repository.
yong pushed a commit to branch branch-4.15
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
commit b1ae2579967828df5fe05dbad8368d7e81993963
Author: Yan Zhao <ho...@apache.org>
AuthorDate: Sat Jul 23 01:01:40 2022 +0800
use LinkedList to take place of ArrayList. (#3330)
(cherry picked from commit 93a6f670296ebe5e86af22bfb632eeb50825c5e7)
---
.../org/apache/bookkeeper/client/ListenerBasedPendingReadOp.java | 4 ++--
.../src/main/java/org/apache/bookkeeper/client/PendingReadOp.java | 6 +++---
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ListenerBasedPendingReadOp.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ListenerBasedPendingReadOp.java
index 108a805ca9..6733b2e9ea 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ListenerBasedPendingReadOp.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/ListenerBasedPendingReadOp.java
@@ -46,11 +46,11 @@ class ListenerBasedPendingReadOp extends PendingReadOp {
@Override
protected void submitCallback(int code) {
LedgerEntryRequest request;
- while (!seq.isEmpty() && (request = seq.get(0)) != null) {
+ while (!seq.isEmpty() && (request = seq.getFirst()) != null) {
if (!request.isComplete()) {
return;
}
- seq.remove(0);
+ seq.removeFirst();
long latencyNanos = MathUtils.elapsedNanos(requestTimeNanos);
LedgerEntry entry;
if (BKException.Code.OK == request.getRc()) {
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
index 60f76f8eed..476c44e72f 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
@@ -23,9 +23,9 @@ package org.apache.bookkeeper.client;
import com.google.common.collect.Lists;
import com.google.common.util.concurrent.ListenableFuture;
import io.netty.buffer.ByteBuf;
-import java.util.ArrayList;
import java.util.BitSet;
import java.util.HashSet;
+import java.util.LinkedList;
import java.util.List;
import java.util.Set;
import java.util.concurrent.Callable;
@@ -59,7 +59,7 @@ class PendingReadOp implements ReadEntryCallback, SafeRunnable {
private static final Logger LOG = LoggerFactory.getLogger(PendingReadOp.class);
private ScheduledFuture<?> speculativeTask = null;
- protected final List<LedgerEntryRequest> seq;
+ protected final LinkedList<LedgerEntryRequest> seq;
private final CompletableFuture<LedgerEntries> future;
private final Set<BookieId> heardFromHosts;
private final BitSet heardFromHostsBitSet;
@@ -463,7 +463,7 @@ class PendingReadOp implements ReadEntryCallback, SafeRunnable {
long startEntryId,
long endEntryId,
boolean isRecoveryRead) {
- this.seq = new ArrayList<>((int) ((endEntryId + 1) - startEntryId));
+ this.seq = new LinkedList<>();
this.future = new CompletableFuture<>();
this.lh = lh;
this.clientCtx = clientCtx;