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.
See: labstack/echo#2413
alright, to summarize this situation:
we are leaking temporary files because when
jaegertracing
replaces original Request object with new one with its span added to the context.Context.echo-contrib/jaegertracing/jaegertracing.go
Line 200 in 5bb0f68
problem with that is when
c.FormValue
orc.FormFile
is used in handler (upload
) that new Request object parses multipartform object. Creates new temporary file and sets form as it field.now these temporary form files are cleaned up at the end of the request by go standard library HERE but http server does not have access to that new Request object - it still works on that old Request object that does not have parsed form, therefore does not know anything about temporary files.
problem must be fixed where it is introduced. -
jaegertracing
middleware must clean multipartform files at the end of its lifecycle.