道君- Tao Jiuming
道君- Tao Jiuming
> It seems we don't need `maxReadPosition.compareTo((PositionImpl) getLastPosition()) != 0` judgment condition, since `maxReadPosition` also may not be a valid position for transaction topic event if `maxReadPosition < lastPosition`. I...
@coderzc Oh, I understand you, if the maxReadPosition is also an aborted message, the reader can be stuck too. It makes sense, I'll improve test to cover the case.
@codelipenghui @shibd @coderzc It looks like Shared/key_Shared Consumer also could be stuck from delayed delivery messages, WDYT? Do we need to handle it?
> Regarding [#22572 (comment)](https://github.com/apache/pulsar/pull/22572#discussion_r1582980339), to further reduce code duplication, start `internalAsyncReverseFindPositionOneByOne` method with this part > > ``` > if (!ledger.isValidPosition(previousPosition)) { > future.complete(previousPosition); > return; > } > ```...
> > I have seen those PRs, great stuff, but the problem here is about the serialization happening in some upgredictable place, like this: > > Trying to understand this...
@mattisonchao Please fix the ci check failures
@mattisonchao Why do we closed this PR?
discussed with @mattisonchao , reopen the PR