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/>