+1 #9292

Thanks,
Baodi Shi

Yubiao Feng <yubiao.f...@streamnative.io.invalid> 于2024年12月23日周一 11:56写道:
>
> Hi all
>
> ## Background
> PR #9292 improved the serialization for cursor metadata, which reduces
> Young GC and makes Pulsar persist more ack records of the cursor, but it
> also caused two issues below
>
> **Issue-1: Downgrade compatibility issue**
> - It changed the default implementation of cursor serialization.
> - Users can not rollback to `3.0.x` once upgraded to `4.0.x` because
> `release:3.0.x` does not contain the deserialization introduced by it,
>
> **Issue-2: It is in conflict with another config
> unackedRangesOpenCacheSetEnabled**
> - If users disabled `unackedRangesOpenCacheSetEnabled`, the cursor ack
> records will always be lost. see details
> https://github.com/apache/pulsar/pull/23759
>
> ## Goal
>
> - Add an optional config to disable the feature that compresses cursor
> metadata, which was contributed by #9292
>
> ```
> cursorMetadataSerialization=V2
> ```
>
> - Since it reduced Young GC, I want to cherry-pick it into branch-3.0 with
> a disabled default value.

Reply via email to