NServiceBus icon indicating copy to clipboard operation
NServiceBus copied to clipboard

Support zero-byte-length messages

Open jpalac opened this issue 5 months ago • 0 comments

Describe the suggested improvement

Is your improvement related to a problem? Please describe.

Currently NServiceBus serialization code does not support serializers that support zero-byte-length messages, as zero-byte-length messages are not deserialized.

Examples of such serializers are Protobuf and Avro.

These serializers use explicit schemas to define message shapes and may gain higher popularity as technologies such as CloudEvents, xRegistry or even AsyncAPI gain more traction.

Describe the suggested solution

A spike has been created to demonstrate how support for zero-byte-length messages can be introduced without introducing breaking changes.

The solution is not limited to the spike.

Describe alternatives you've considered

The default bahaviour of the pipeline could be adjusted to always process zero-length messages and then have that handled in each serializer implementation if it does not support it. This would be a breaking change so would have to be released as part of a major.

Additional Context

No response

jpalac avatar Aug 27 '25 02:08 jpalac