Particular / ServiceControl

Backend for ServiceInsight and ServicePulse
https://docs.particular.net/servicecontrol/
Other
51 stars 47 forks source link

ServiceControl MessageFailed events do not contain message bodies #4474

Closed awright18 closed 3 days ago

awright18 commented 3 days ago

Symptoms

Subscribing to MessageFailed events from ServiceControl.Contracts does not include the message body, even though the message is text, less than 85KB (small enough to avoid the Large Object Heap), and Full-Text indexing of message bodies is enabled.

Who's affected

Anyone subscribing to ServiceControl.Contracts MessageFailed event and trying to access the message body when using ServiceControl 5.0 or later.

Root cause

The transition to RavenDB 5 required changes in how the message body is stored in ServiceControl which were not reflected by matching changes to the code publishing external integration events.

Original report

Describe the bug

Description

When subscribing to ServiceControl events the MessageFailed events do not contain message bodies.

Expected behavior

MessageFailed events contain message bodies.

Actual behavior

MessageFailed events do not contain message bodies.

Versions

Please list the version of the relevant packages or applications in which the bug exists.

It was identified in 5.9 but is likely a problem in all 5.x versions.

Steps to reproduce

Follow the steps in subscribing to ServiceControl events in order to received failed messages

Throw an exception when handling a message in a message handler that is connected to ServiceControl

Relevant log output

No response

Additional Information

Workarounds

Possible solutions

Additional information

DavidBoike commented 3 days ago

Will be fixed by https://github.com/Particular/ServiceControl/pull/4475 and released as part of ServiceControl 5.10.0.