ConcurrencyPractitioner commented on issue #3983: [Issue#3976] [component/client] Adding config for ReaderImpl URL: https://github.com/apache/pulsar/pull/3983#issuecomment-481514423 Alright, so I ran the test on local and here was a segment of the log for the test I added: ``` Seeking to time: 1554862866386 19:21:13.441 [TestNG-method=testReaderAtSelectedTimestamp-1:org.apache.pulsar.client.impl.ReaderBuilderImpl@94] INFO org.apache.pulsar.client.impl.ReaderBuilderImpl - Setting messageId value since timestamp value is 1554862866386 19:21:13.450 [pulsar-web-149-6:org.eclipse.jetty.server.Slf4jRequestLog@60] INFO org.eclipse.jetty.server.RequestLog - 127.0.0.1 - - [09/Apr/2019:19:21:13 -0700] "GET /admin/v2/persistent/my-property/my-ns/testReaderAtSelectedTimestamp/partitions HTTP/1.1" 200 16 "-" "Pulsar-Java-v2.4.0-SNAPSHOT" 6 19:21:13.458 [pulsar-web-149-7:org.eclipse.jetty.server.Slf4jRequestLog@60] INFO org.eclipse.jetty.server.RequestLog - 127.0.0.1 - - [09/Apr/2019:19:21:13 -0700] "GET /lookup/v2/topic/persistent/my-property/my-ns/testReaderAtSelectedTimestamp HTTP/1.1" 200 132 "-" "Pulsar-Java-v2.4.0-SNAPSHOT" 6 19:21:13.459 [pulsar-client-io-155-1:org.apache.pulsar.client.impl.ConsumerImpl@493] INFO org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/testReaderAtSelectedTimestamp][reader-e722c2aff4] Subscribing to topic on cnx [id: 0xf5d3a09a, L:/127.0.0.1:59183 - R:localhost/127.0.0.1:15075] 19:21:13.461 [pulsar-io-142-1:org.apache.pulsar.broker.service.ServerCnx@641] INFO org.apache.pulsar.broker.service.ServerCnx - [/127.0.0.1:59183] Subscribing on topic persistent://my-property/my-ns/testReaderAtSelectedTimestamp / reader-e722c2aff4 19:21:13.461 [pulsar-io-142-1:org.apache.pulsar.broker.service.persistent.PersistentTopic@624] INFO org.apache.pulsar.broker.service.persistent.PersistentTopic - [persistent://my-property/my-ns/testReaderAtSelectedTimestamp][reader-e722c2aff4] Creating non-durable subscription at msg id -1:-1:-1:-1 19:21:13.462 [pulsar-io-142-1:org.apache.bookkeeper.mledger.impl.NonDurableCursorImpl@54] INFO org.apache.bookkeeper.mledger.impl.NonDurableCursorImpl - [my-property/my-ns/persistent/testReaderAtSelectedTimestamp] Created non-durable cursor read-position=3:0 mark-delete-position=3:-1 19:21:13.462 [pulsar-io-142-1:org.apache.pulsar.broker.service.persistent.PersistentTopic@648] INFO org.apache.pulsar.broker.service.persistent.PersistentTopic - Cursor's name is: null 19:21:13.463 [pulsar-io-142-1:org.apache.bookkeeper.mledger.impl.ManagedCursorImpl@1789] INFO org.apache.bookkeeper.mledger.impl.ManagedCursorImpl - [my-property/my-ns/persistent/testReaderAtSelectedTimestamp-null] Rewind from 3:0 to 3:0 19:21:13.463 [pulsar-io-142-1:org.apache.pulsar.broker.service.persistent.PersistentTopic@571] INFO org.apache.pulsar.broker.service.persistent.PersistentTopic - [persistent://my-property/my-ns/testReaderAtSelectedTimestamp][reader-e722c2aff4] Created new subscription for 0 19:21:13.463 [pulsar-io-142-1:org.apache.pulsar.broker.service.ServerCnx@701] INFO org.apache.pulsar.broker.service.ServerCnx - [/127.0.0.1:59183] Created subscription on topic persistent://my-property/my-ns/testReaderAtSelectedTimestamp / reader-e722c2aff4 19:21:13.464 [pulsar-client-io-155-1:org.apache.pulsar.client.impl.ConsumerImpl@588] INFO org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/testReaderAtSelectedTimestamp][reader-e722c2aff4] Subscribed to topic on localhost/127.0.0.1:15075 -- consumer: 0 19:21:13.468 [TestNG-method=testReaderAtSelectedTimestamp-1:org.apache.pulsar.client.impl.ConsumerImpl@1376] INFO org.apache.pulsar.client.impl.ConsumerImpl - [persistent://my-property/my-ns/testReaderAtSelectedTimestamp][reader-e722c2aff4] Seek subscription to publish time 1554862866386 19:21:13.473 [pulsar-io-142-1:org.apache.pulsar.broker.service.ServerCnx@210] WARN org.apache.pulsar.broker.service.ServerCnx - [/127.0.0.1:59183] Got exception NullPointerException : null java.lang.NullPointerException: null at java.net.URLDecoder.decode(URLDecoder.java:136) ~[?:1.8.0_191] at org.apache.pulsar.common.util.Codec.decode(Codec.java:45) ~[pulsar-common-2.4.0-SNAPSHOT.jar:2.4.0-SNAPSHOT] at org.apache.pulsar.broker.service.persistent.PersistentMessageFinder.<init>(PersistentMessageFinder.java:55) ~[classes/:?] at org.apache.pulsar.broker.service.persistent.PersistentSubscription.resetCursor(PersistentSubscription.java:335) ~[classes/:?] at org.apache.pulsar.broker.service.ServerCnx.handleSeek(ServerCnx.java:1153) ~[classes/:?] at org.apache.pulsar.common.api.PulsarDecoder.channelRead(PulsarDecoder.java:228) ~[pulsar-common-2.4.0-SNAPSHOT.jar:2.4.0-SNAPSHOT] ``` What I found curious in the log output was that a NonDurableCursor was created, but its name was null. But later, a decoder used by PersistentMessageFinder attempts to decode the name fails because the name has a null vale So its been bugging me since this shouldn't happen. @sijie Do you have any pointers on why this might be the case?
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
