Hello, community:

### Motivation

Currently, pulsar functions are using `LZ4` as the compression type, and
users cannot change it, yet some users may want to custom this behavior.

### Modifications

Add a `CompressionType` field(which is an enum) to the `ProducerSpec` in
the `Function.proto`; this enum has six values: `NOTSET`, `NONE`, `LZ4`,
`ZLIB`, `ZSTD` and `SNAPPY`, there is a `NOTSET` value besides of 5
supported compression type, so that even users don't set the
`CompressionType`, it will fallback to its "zero" value: `NOTSET` instead
of `NONE`, and in such case, pulsar function instances will use `LZ4` to
keep the same behavior with before.

PTAL when you have time and feel free to leave any comments.

Best Regards,
Pengcheng Jiang

[0] https://github.com/apache/pulsar/pull/19470
-- 

<https://streamnative.io/>

Pengcheng Jiang

Software Engineer

e: pengcheng.ji...@streamnative.io

p: 13540631948

streamnative.io

<http://github.com/streamnative>
<https://www.linkedin.com/company/streamnative/>
<https://twitter.com/streamnativeio/>

Reply via email to