Open leiless opened 3 years ago
When I issued a podman restart
, it seems the 500 error still there:
$ podman restart pulsar-cdc
cae23894973c94a6e33b2be0a38c259dc6aeb2934314ca8d7537d2a85cf0ae35
$ pulsar-admin topics last-message-id persistent://foobar/mysql-cdc/binlog
Warning: Nashorn engine is planned to be removed from a future JDK release
{
"ledgerId" : 4716,
"entryId" : -1,
"partitionIndex" : -1
}
03:18:02.046 [pulsar-web-63-14] INFO org.eclipse.jetty.server.RequestLog - 10.0.2.100 - - [29/Jul/2021:03:18:02 +0000] "GET /admin/v2/persistent/foobar/mysql-cdc/binlog/lastMessageId HTTP/1.1" 200 50 "-" "Pulsar-Java-v2.7.2" 2
$ pulsar-admin topics get-message-by-id persistent://foobar/mysql-cdc/binlog -l 4716 -e -1
Warning: Nashorn engine is planned to be removed from a future JDK release
HTTP 500 Internal Server Error
Reason: HTTP 500 Internal Server Errorjava.io.ByteArrayInputStream@60002142
03:25:23.103 [pulsar-web-63-14] ERROR org.apache.bookkeeper.client.LedgerHandle - IncorrectParameterException on ledgerId:4716 firstEntry:-1 lastEntry:-1
03:25:23.105 [BookKeeperClientWorker-OrderedExecutor-0-0] INFO org.eclipse.jetty.server.RequestLog - 10.0.2.100 - - [29/Jul/2021:03:25:23 +0000] "GET /admin/v2/persistent/foobar/mysql-cdc/binlog/ledger/4716/entry/-1 HTTP/1.1" 500 183 "-" "Pulsar-Java-v2.7.2" 3
I previously wrote some data into the persistent://foobar/mysql-cdc/binlog
and I can confirm that I never delete/flush the messages in-between on my own.
I don't know if it's something related to the message retention policy.
pulsar-admin tenants create foobar
pulsar-admin namespaces create foobar/mysql-cdc
The binlog topic(i.e. persistent://foobar/mysql-cdc/binlog
) was created on-demand
When I call getTopicLastMessage()
again(after Pulsar container restarted) in my App:
Which the error message is similar to the result of pulsar-admin topics get-message-by-id persistent://foobar/mysql-cdc/binlog -l 4716 -e -1
shown above.
The issue had no activity for 30 days, mark with Stale label.
Describe the bug
When I utilize Pulsar Java Admin API to get the topic's last message-id, I got 500 HTTP status code from Java API. As a comparison, I use
pulsar-admin topics get-message-by-id ...
, it seems OK.To Reproduce
I cannot reproduce it, it'll happen occasionally after several hours running.
Behavior stated
Java API side
My
getTopicLastMessage
API snippet:When I call this API with topic
persistent://foobar/mysql-cdc/binlog
, I got the following logs:My App logs...
``` 2021-07-29 10:28:02.612 INFO foobar.mysql.cdc.binlog.CdcClient: Getting topic last GTID from Pulsar ... Topic last msg id: -1:-1:-1 2021-07-29 10:28:03.415 ERROR foobar.mysql.cdc.binlog.CdcClient$EnsureThread$1: Cannot ensure binlog liveness foobar.mysql.cdc.exception.FatalException: Cannot get last message GTID from persistent://foobar/mysql-cdc/binlog at foobar.mysql.cdc.pulsar.PulsarAdminClient.getTopicLastGtidOrPanic(PulsarAdminClient.java:72) ~[classes/:?] at foobar.mysql.cdc.binlog.CdcClient.newBinlogClient(CdcClient.java:188) ~[classes/:?] at foobar.mysql.cdc.binlog.CdcClient.access$900(CdcClient.java:51) ~[classes/:?] at foobar.mysql.cdc.binlog.CdcClient$EnsureThread.ensure(CdcClient.java:364) ~[classes/:?] at foobar.mysql.cdc.binlog.CdcClient$EnsureThread.access$1000(CdcClient.java:342) ~[classes/:?] at foobar.mysql.cdc.binlog.CdcClient$EnsureThread$1.run(CdcClient.java:376) [classes/:?] at java.util.TimerThread.mainLoop(Timer.java:555) [?:1.8.0_292] at java.util.TimerThread.run(Timer.java:505) [?:1.8.0_292] Caused by: org.apache.pulsar.client.admin.PulsarAdminException$ServerSideErrorException: HTTP 500 Internal Server Errorjava.io.ByteArrayInputStream@46f2a7f5 at org.apache.pulsar.client.admin.internal.BaseResource.getApiException(BaseResource.java:208) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.BaseResource.getApiException(BaseResource.java:251) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl.getMessagesFromHttpResponse(TopicsImpl.java:1419) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl.access$100(TopicsImpl.java:90) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl$17.completed(TopicsImpl.java:1143) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl$17.completed(TopicsImpl.java:1139) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.JerseyInvocation$1.completed(JerseyInvocation.java:814) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime.processResponse(ClientRuntime.java:229) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime.access$200(ClientRuntime.java:62) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime$2.lambda$response$0(ClientRuntime.java:173) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors$1.call(Errors.java:248) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors$1.call(Errors.java:244) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors.process(Errors.java:292) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors.process(Errors.java:274) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors.process(Errors.java:244) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:288) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime$2.response(ClientRuntime.java:173) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.http.AsyncHttpConnector.lambda$apply$1(AsyncHttpConnector.java:212) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975) ~[?:1.8.0_292] at org.apache.pulsar.client.admin.internal.http.AsyncHttpConnector.lambda$retryOperation$3(AsyncHttpConnector.java:253) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975) ~[?:1.8.0_292] at org.apache.pulsar.shade.org.asynchttpclient.netty.NettyResponseFuture.loadContent(NettyResponseFuture.java:222) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.NettyResponseFuture.done(NettyResponseFuture.java:257) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.AsyncHttpClientHandler.finishUpdate(AsyncHttpClientHandler.java:241) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.HttpHandler.handleChunk(HttpHandler.java:114) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.HttpHandler.handleRead(HttpHandler.java:143) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.AsyncHttpClientHandler.channelRead(AsyncHttpClientHandler.java:78) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[pulsar-client-2.7.2.jar:2.7.2] at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_292] Caused by: org.apache.pulsar.shade.javax.ws.rs.ServerErrorException: HTTP 500 Internal Server Error at org.apache.pulsar.client.admin.internal.BaseResource.getApiException(BaseResource.java:244) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl.getMessagesFromHttpResponse(TopicsImpl.java:1419) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl.access$100(TopicsImpl.java:90) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl$17.completed(TopicsImpl.java:1143) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.TopicsImpl$17.completed(TopicsImpl.java:1139) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.JerseyInvocation$1.completed(JerseyInvocation.java:814) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime.processResponse(ClientRuntime.java:229) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime.access$200(ClientRuntime.java:62) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime$2.lambda$response$0(ClientRuntime.java:173) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors$1.call(Errors.java:248) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors$1.call(Errors.java:244) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors.process(Errors.java:292) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors.process(Errors.java:274) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.internal.Errors.process(Errors.java:244) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:288) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.glassfish.jersey.client.ClientRuntime$2.response(ClientRuntime.java:173) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at org.apache.pulsar.client.admin.internal.http.AsyncHttpConnector.lambda$apply$1(AsyncHttpConnector.java:212) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975) ~[?:1.8.0_292] at org.apache.pulsar.client.admin.internal.http.AsyncHttpConnector.lambda$retryOperation$3(AsyncHttpConnector.java:253) ~[pulsar-client-admin-2.7.2.jar:2.7.2] at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) ~[?:1.8.0_292] at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975) ~[?:1.8.0_292] at org.apache.pulsar.shade.org.asynchttpclient.netty.NettyResponseFuture.loadContent(NettyResponseFuture.java:222) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.NettyResponseFuture.done(NettyResponseFuture.java:257) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.AsyncHttpClientHandler.finishUpdate(AsyncHttpClientHandler.java:241) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.HttpHandler.handleChunk(HttpHandler.java:114) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.HttpHandler.handleRead(HttpHandler.java:143) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.org.asynchttpclient.netty.handler.AsyncHttpClientHandler.channelRead(AsyncHttpClientHandler.java:78) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[pulsar-client-2.7.2.jar:2.7.2] at org.apache.pulsar.shade.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[pulsar-client-2.7.2.jar:2.7.2] at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_292] ```
Pulsar logs...
``` 02:28:01.603 [pulsar-web-63-24] INFO org.eclipse.jetty.server.RequestLog - 127.0.0.1 - - [29/Jul/2021:02:28:01 +0000] "GET /admin/v2/persistent/public/functions/coordinate/stats?getPreciseBacklog=false&subscriptionBacklogSize=false HTTP/1.1" 200 1950 "-" "Pulsar-Java-v2.8.0" 1 02:28:01.604 [pulsar-web-63-14] INFO org.eclipse.jetty.server.RequestLog - 127.0.0.1 - - [29/Jul/2021:02:28:01 +0000] "GET /admin/v2/persistent/public/functions/coordinate/stats?getPreciseBacklog=false&subscriptionBacklogSize=false HTTP/1.1" 200 1950 "-" "Pulsar-Java-v2.8.0" 1 02:28:03.347 [pulsar-web-63-24] INFO org.eclipse.jetty.server.RequestLog - 10.0.2.100 - - [29/Jul/2021:02:28:03 +0000] "GET /admin/v2/persistent/foobar/mysql-cdc/binlog/lastMessageId HTTP/1.1" 200 48 "-" "Pulsar-Java-v2.7.2" 1 02:28:03.409 [pulsar-web-63-14] ERROR org.apache.bookkeeper.client.impl.OpenBuilderBase - invalid ledgerId -1 < 0 02:28:03.409 [BookKeeperClientWorker-OrderedExecutor-0-0] ERROR org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl - [foobar/mysql-cdc/persistent/binlog] Error opening ledger for reading at position -1:-1 - org.apache.bookkeeper.mledger.ManagedLedgerException$NonRecoverableLedgerException: No such ledger exists on Metadata Server 02:28:03.410 [BookKeeperClientWorker-OrderedExecutor-0-0] INFO org.eclipse.jetty.server.RequestLog - 10.0.2.100 - - [29/Jul/2021:02:28:03 +0000] "GET /admin/v2/persistent/foobar/mysql-cdc/binlog/ledger/-1/entry/-1 HTTP/1.1" 500 243 "-" "Pulsar-Java-v2.7.2" 5 ```
Note the
HTTP/1.1" 500
error log.Pulsar Admin command-line tool side
What is weird to me is that
last-message-id
returned aledgerId
which is negative.Desktop (please complete the following information):
pulsar-client
,pulsar-client-admin
2.7.2Additional context
The Pulsar is running in Podman 3.2.3 with no special config