This is an automated email from the ASF dual-hosted git repository.
yubiao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new 8485d681973 [improve] [broker] Print warn log if ssl handshake error &
print ledger id when switch ledger (#21201)
8485d681973 is described below
commit 8485d68197300dca83b7b443c8aebc4418a85e4b
Author: fengyubiao <[email protected]>
AuthorDate: Fri Sep 29 00:12:16 2023 +0800
[improve] [broker] Print warn log if ssl handshake error & print ledger id
when switch ledger (#21201)
### Modifications
- Print a warning log if the SSL handshake error
- Print ledger ID when switching ledger
---
.../apache/bookkeeper/mledger/impl/ManagedCursorImpl.java | 3 ++-
.../apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java | 6 ++++--
.../main/java/org/apache/pulsar/client/impl/ClientCnx.java | 13 +++++++++++++
3 files changed, 19 insertions(+), 3 deletions(-)
diff --git
a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
index 376bde3dc2c..f0a2c1f8acd 100644
---
a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
+++
b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
@@ -1266,7 +1266,8 @@ public class ManagedCursorImpl implements ManagedCursor {
newReadPosition = proposedReadPosition;
}
- log.info("[{}] Initiate reset readPosition to {} on cursor {}",
ledger.getName(), newReadPosition, name);
+ log.info("[{}] Initiate reset readPosition from {} to {} on cursor
{}", ledger.getName(), readPosition,
+ newReadPosition, name);
synchronized (pendingMarkDeleteOps) {
if (!RESET_CURSOR_IN_PROGRESS_UPDATER.compareAndSet(this, FALSE,
TRUE)) {
diff --git
a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
index 4991080d38c..0f65a1a089c 100644
---
a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
+++
b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedLedgerImpl.java
@@ -529,7 +529,8 @@ public class ManagedLedgerImpl implements ManagedLedger,
CreateCallback {
return;
}
- log.info("[{}] Created ledger {}", name, lh.getId());
+ log.info("[{}] Created ledger {} after closed {}", name,
lh.getId(),
+ currentLedger == null ? "null" :
currentLedger.getId());
STATE_UPDATER.set(this, State.LedgerOpened);
updateLastLedgerCreatedTimeAndScheduleRolloverTask();
currentLedger = lh;
@@ -1770,7 +1771,8 @@ public class ManagedLedgerImpl implements ManagedLedger,
CreateCallback {
synchronized void createLedgerAfterClosed() {
if (isNeededCreateNewLedgerAfterCloseLedger()) {
- log.info("[{}] Creating a new ledger after closed", name);
+ log.info("[{}] Creating a new ledger after closed {}", name,
+ currentLedger == null ? "null" : currentLedger.getId());
STATE_UPDATER.set(this, State.CreatingLedger);
this.lastLedgerCreationInitiationTimestamp =
System.currentTimeMillis();
mbean.startDataLedgerCreateOp();
diff --git
a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ClientCnx.java
b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ClientCnx.java
index 115c71307c4..f3e8b2354b3 100644
--- a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ClientCnx.java
+++ b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ClientCnx.java
@@ -30,6 +30,7 @@ import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.EventLoopGroup;
import io.netty.channel.unix.Errors.NativeIoException;
import io.netty.handler.codec.LengthFieldBasedFrameDecoder;
+import io.netty.handler.ssl.SslHandshakeCompletionEvent;
import io.netty.util.concurrent.Promise;
import java.net.InetSocketAddress;
import java.net.SocketAddress;
@@ -1311,6 +1312,18 @@ public class ClientCnx extends PulsarHandler {
}
}
+ @Override
+ public void userEventTriggered(ChannelHandlerContext ctx, Object evt)
throws Exception {
+ if (evt instanceof SslHandshakeCompletionEvent) {
+ SslHandshakeCompletionEvent sslHandshakeCompletionEvent =
(SslHandshakeCompletionEvent) evt;
+ if (sslHandshakeCompletionEvent.cause() != null) {
+ log.warn("{} Got ssl handshake exception {}", ctx.channel(),
+ sslHandshakeCompletionEvent);
+ }
+ }
+ ctx.fireUserEventTriggered(evt);
+ }
+
protected void closeWithException(Throwable e) {
if (ctx != null) {
connectionFuture.completeExceptionally(e);