8000 [aggregator] Add a bounded min-max resend buffer by arnikola · Pull Request #3936 · m3db/m3 · GitHub
[go: up one dir, main page]

Skip to content

[aggregator] Add a bounded min-max resend buffer - #3936

Open
arnikola wants to merge 7 commits into
masterfrom
arnikola/resend-buffer-minmax
Open

arnikola wants to merge 7 commits into
masterfrom
arnikola/resend-buffer-minmax

Conversation

@arnikola
Copy link
Copy Markdown
Collaborator

This adds a resend buffer with a bounded size, that will enable aggregator
resends of Min and Max aggregations. This will fill up the top bufferSize
elements, then replace it preferentially with better resend values if available.

What this PR does / why we need it:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing and/or backwards incompatible change?:


Does this PR require updating code package or user-facing documentation?:


@codecov
codecov Bot commented Nov 20, 2021 •
Copy link
Copy Markdown

Codecov Report

Merging #3936 (be9a3b1) into master (be9a3b1) will not change coverage.
The diff coverage is n/a.

❗ Current head be9a3b1 differs from pull request most recent head b31addd. Consider uploading reports for the commit b31addd to get more accurate results

Impacted file tree graph

@@          Coverage Diff           @@
##           master   #3936   +/-   ##
======================================
  Coverage    56.7%   56.7%           
======================================
  Files         557     557           
  Lines       63511   63511           
======================================
  Hits        36058   36058           
  Misses      24264   24264           
  Partials     3189    3189           
Flag Coverage Δ
aggregator 61.3% <0.0%> (ø)
cluster ∅ <0.0%> (∅)
collector 58.4% <0.0%> (ø)
dbnode 60.6% <0.0%> (ø)
m3em 46.4% <0.0%> (ø)
metrics 19.7% <0.0%> (ø)
msg 74.6% <0.0%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.


Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update be9a3b1...b31addd. Read the comment docs.


// Buffer is a fixed-size buffer for servicing resends of min and max
// aggregations.
type Buffer interface {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is there a reason for the interface vs just a plain, public struct? since it has 0 dependencies/unlikely to have alternative interfaces, it would result in less indirection to pass *Buffer around, enable inlining of Buffer calls, and not break any clients if a new method is added.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/alternative interfaces/alternative implementations/

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0