Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix/workaround for #2100
This PR in local testing prevented file descriptors from leaking as demonstrated by running the
lsof
command and not seeing file descriptors increase.The fix introduces a mechanism to capture all streams created in an array and ensures all are destroyed when
_cleanupStream
is called.The code reads to me like there should only ever be one file stream in scope at any time but for some reason we find multiple are created before they are closed.
This is a workaround really and it would be better to find the source of this issue; streams are being created but not cleaned up, this fix just ensures the resource leak does not occur.