Skip to content

Conversation

fnichol
Copy link
Contributor

@fnichol fnichol commented Mar 20, 2025

This change re-enables the stream forwarder in Cyclone and the listener in Veritech, both of which help are used to forward OpenTelemetry data out of a Firecracker VM.

Prior to disabling these tasks, it was unclear whether the spawned tokio tasks would naturally terminate on their own, or whether they would continue to run even as more Firecracker instances were spawing in Pool Noodle's pool. This change attempts to tie the lifetime of these forwarding tasks to the lifetime of the Firecracker instance (that is the termination of the VM should also trigger the shutdown of the forwarding task).

This change re-enables the stream forwarder in Cyclone and the listener
in Veritech, both of which help are used to forward OpenTelemetry data
out of a Firecracker VM.

Prior to disabling these tasks, it was unclear whether the spawned tokio
tasks would naturally terminate on their own, or whether they would
continue to run even as more Firecracker instances were spawing in Pool
Noodle's pool. This change attempts to tie the lifetime of these
forwarding tasks to the lifetime of the Firecracker instance (that is
the termination of the VM should also trigger the shutdown of the
forwarding task).

Signed-off-by: Fletcher Nichol <[email protected]>
Copy link

Dependency Review

✅ No vulnerabilities or OpenSSF Scorecard issues found.

OpenSSF Scorecard

PackageVersionScoreDetails

Scanned Files

@fnichol
Copy link
Contributor Author

fnichol commented Mar 20, 2025

This may need a careful load test as it re-enables listener sockets on Veritech. Should be fine now, but worthy of a confirmation under load.

Note: I'm not 100% convinced that copy_bidirectional will always do the right thing but am hedging this with a cancel-able task now (i.e. that task can be pre-empted and cancelled).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant