-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(codecs): Improve deserialization of EncodingConfigAdapter
/ fix overriding framing
#12750
fix(codecs): Improve deserialization of EncodingConfigAdapter
/ fix overriding framing
#12750
Conversation
Signed-off-by: Pablo Sichert <mail@pablosichert.com>
✅ Deploy Preview for vector-project ready!
To edit notification comments on pull requests, go to your Netlify site settings. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's some interesting adapter-fu going on there 👀 😄
It all looks okay to me, but the diff is hard to follow, so I'd wait for one more pair of eyes.
Yeah, it's... involved. Scimming the tests is probably a good start: vector/src/sinks/util/encoding/adapter.rs Lines 500 to 661 in af7514b
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome, thanks @pablosichert . This is much improved.
I was thinking, to save us some support effort if people run into this, it might be a good idea to add this to the docs so that if users search "data did not match any variant of untagged enum EncodingConfig" they find an explanation (also it gives us something to easily link to). Maybe around here: https://master.vector.dev/docs/reference/configuration/sinks/http/#encoding by adding it to https://github.com/vectordotdev/vector/blob/master/website/cue/reference/components/sinks.cue#L177
Soak Test ResultsBaseline: f238e5e ExplanationA soak test is an integrated performance test for vector in a repeatable rig, with varying configuration for vector. What follows is a statistical summary of a brief vector run for each configuration across SHAs given above. The goal of these tests are to determine, quickly, if vector performance is changed and to what degree by a pull request. Where appropriate units are scaled per-core. The table below, if present, lists those experiments that have experienced a statistically significant change in their throughput performance between baseline and comparision SHAs, with 90.0% confidence OR have been detected as newly erratic. Negative values mean that baseline is faster, positive comparison. Results that do not exhibit more than a ±8.87% change in mean throughput are discarded. An experiment is erratic if its coefficient of variation is greater than 0.3. The abbreviated table will be omitted if no interesting changes are observed. Changes in throughput with confidence ≥ 90.00% and absolute Δ mean >= ±8.87%:
Fine details of change detection per experiment.
|
Signed-off-by: Pablo Sichert <mail@pablosichert.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the docs note!
Soak Test ResultsBaseline: f238e5e ExplanationA soak test is an integrated performance test for vector in a repeatable rig, with varying configuration for vector. What follows is a statistical summary of a brief vector run for each configuration across SHAs given above. The goal of these tests are to determine, quickly, if vector performance is changed and to what degree by a pull request. Where appropriate units are scaled per-core. The table below, if present, lists those experiments that have experienced a statistically significant change in their throughput performance between baseline and comparision SHAs, with 90.0% confidence OR have been detected as newly erratic. Negative values mean that baseline is faster, positive comparison. Results that do not exhibit more than a ±8.87% change in mean throughput are discarded. An experiment is erratic if its coefficient of variation is greater than 0.3. The abbreviated table will be omitted if no interesting changes are observed. No interesting changes in throughput with confidence ≥ 90.00% and absolute Δ mean >= ±8.87%: Fine details of change detection per experiment.
|
Closes #12473.
The error messages are improved in so far that sinks will reject unknown fields again and missing
framing
andencoding
fields are mentioned explicitly.Unfortunately, deserializing the
encoding
field itself will still give vague error messages due to serde-rs/serde#1544 (some more details in #12162).Additionally, this PR fixes a bug where the
framing
config could not be overridden when a legacy codec was used.