vector icon indicating copy to clipboard operation
vector copied to clipboard

fix(vector source protobuf codec disk buffering) Build prost with no-recursion-limit feature

Open sbalmos opened this issue 2 years ago • 0 comments

Related to issue #19315. The prost protobuf crate used by tokio and serde has a default decoding recursion limit of 100. When used by the Vector-native source, protobuf codec, and/or any sink with disk buffering, this leads to an effective field nesting depth limit for event payloads of 32. Payloads with fields nested deeper than 32-deep fail to decode, causing the event to fail to be received / read from disk buffer / etc. Depending on the location (the Vector-native source, disk buffering, etc), various unrecoverable failure-to-read errors can occur.

Enabling the no-recursion-limit feature in the prost crate removes this limitation.

sbalmos avatar Dec 18 '23 16:12 sbalmos