Skip to content
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

Consider specialized API for forwarding events in the pipeline #5107

Closed
jszwedko opened this issue Nov 18, 2020 · 3 comments
Closed

Consider specialized API for forwarding events in the pipeline #5107

jszwedko opened this issue Nov 18, 2020 · 3 comments
Labels
domain: reliability Anything related to Vector's reliability domain: topology Anything related to Vector's topology code have: must We must have this feature, it is critical to the project's success. It is high priority. type: task Generic non-code related tasks

Comments

@jszwedko
Copy link
Member

@lukesteensen and I briefly talked about this, but I wanted to make sure I got it written down somewhere. He can probably add more detail as I think he had a better vision for what this would be.

We had a recent issue with the splunk_hec source where, if there was an error receiving data, the last good event would not be sent due to futures not flushing the sink (#5058). I covered one more case for the stdin source in #5082.

This issue is a very easy one to crop back up (neglecting to flush the sinks when forwarding streams). Luke mentioned creating a specialized API to use on Pipeline rather than using the futures stream and sink APIs that could handle things like ensuring flushing as well as things like determining what's blocking (the stream or the sink) when forwarding an event.

@jszwedko jszwedko added domain: topology Anything related to Vector's topology code type: task Generic non-code related tasks labels Nov 18, 2020
@jszwedko
Copy link
Member Author

cc/ @binarylogic

@binarylogic binarylogic added domain: reliability Anything related to Vector's reliability have: must We must have this feature, it is critical to the project's success. It is high priority. labels Nov 18, 2020
@tobz
Copy link
Contributor

tobz commented Aug 9, 2022

@lukesteensen I think this is mostly covered by all the work we've previously done to SourceSender/Fanout/etc. Anything else we still could do at a high-level here?

@tobz tobz closed this as completed Aug 9, 2022
@tobz tobz reopened this Aug 9, 2022
@lukesteensen
Copy link
Member

Yeah I think this is done. The initial conversation with @jszwedko had something to do with confusion around what happens when a stream of Result is sent, but I don't think that's an issue anymore since we stopped using Sink.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: reliability Anything related to Vector's reliability domain: topology Anything related to Vector's topology code have: must We must have this feature, it is critical to the project's success. It is high priority. type: task Generic non-code related tasks
Projects
None yet
Development

No branches or pull requests

4 participants