Add pprof to lyft/envoy-build for heap leak stack traces and symbols.#432
Merged
mattklein123 merged 2 commits intoenvoyproxy:masterfrom Feb 6, 2017
Merged
Add pprof to lyft/envoy-build for heap leak stack traces and symbols.#432mattklein123 merged 2 commits intoenvoyproxy:masterfrom
mattklein123 merged 2 commits intoenvoyproxy:masterfrom
Conversation
do_ci.sh runs tests with heapcheck enabled. This can discover heap leaks
but requires pprof (in google-perftools) to perform the symbolization
and printing of allocation site stack traces.
With this PR, a failed run will produce output such as:
Have memory regions w/o callers: might report false leaks
Leak check _main_ detected leaks of 16 bytes in 1 objects
The 1 largest leaks:
Using local file /source/build/test/envoy-test.
Leak of 16 bytes in 1 objects allocated from:
@ 15d6b6f Network::DnsImplTest_Cancel_Test::TestBody
@ 1e91e66 testing::internal::HandleSehExceptionsInMethodIfSupported
@ 1e8cba8 testing::internal::HandleExceptionsInMethodIfSupported
@ 1e73af5 testing::Test::Run
@ 1e74381 testing::TestInfo::Run
@ 1e74a12 testing::TestCase::Run
@ 1e7b1bd testing::internal::UnitTestImpl::RunAllTests
@ 1e92f66 testing::internal::HandleSehExceptionsInMethodIfSupported
@ 1e8d86a testing::internal::HandleExceptionsInMethodIfSupported
@ 1e79e47 testing::UnitTest::Run
@ 181925a RUN_ALL_TESTS
@ 181844d main
mattklein123
reviewed
Feb 6, 2017
ci/do_ci.sh
Outdated
| export CC=gcc-4.9 | ||
| export CXX=g++-4.9 | ||
| export HEAPCHECK=normal | ||
| export PPROF_PATH=/usr/bin/google-pprof |
Member
There was a problem hiding this comment.
IIRC pprof is already in the container because we build gperftools. I think it's in /thirdparty_build/bin/pprof. So I think path just needs to be set there (please confirm path). This is better than installing the package since it's guaranteed to match the version of gperftools we are using.
Member
Author
There was a problem hiding this comment.
Yep, that's the path, fixed.
mattklein123
approved these changes
Feb 6, 2017
Member
mattklein123
left a comment
There was a problem hiding this comment.
will merge when our CI situation is un-messed.
rshriram
pushed a commit
to rshriram/envoy
that referenced
this pull request
Oct 30, 2018
* add README and sample materials * use existing backend/echo/echo.go * delete unnecessary codes * fix type of issuers * make audiences configurable for each issuer * update header name * - update header name - add comments for issues
rshriram
pushed a commit
to rshriram/envoy
that referenced
this pull request
Oct 30, 2018
Automatic merge from submit-queue. [DO NOT MERGE] Auto PR to update dependencies of mixerclient This PR will be merged automatically once checks are successful. ```release-note none ```
jplevyak
added a commit
to jplevyak/envoy
that referenced
this pull request
Feb 26, 2020
…nvoyproxy#432) Signed-off-by: John Plevyak <jplevyak@gmail.com>
istio-testing
pushed a commit
to istio/envoy
that referenced
this pull request
Feb 26, 2020
* Delay sendLocalReply till after the call to prevent rentrant calls. (envoyproxy#432) Signed-off-by: John Plevyak <jplevyak@gmail.com> * Add missing deferred operation handlers. Signed-off-by: John Plevyak <jplevyak@gmail.com>
jplevyak
added a commit
to jplevyak/envoy
that referenced
this pull request
Apr 13, 2020
…nvoyproxy#432) Signed-off-by: John Plevyak <jplevyak@gmail.com>
wolfguoliang
pushed a commit
to wolfguoliang/envoy
that referenced
this pull request
Jan 23, 2021
…roxy#432) * jaeger-tracing.rst revise * jaeger-tracing.rst revise1 * jaeger_tracing_revised20201215 Co-authored-by: Mars Zhang <mars-zhangcong@users.noreply.github.com>
jpsim
pushed a commit
that referenced
this pull request
Nov 28, 2022
Adds support for setting the domain used in the base cluster of the Envoy config. This is necessary until `dynamic_forward_proxy` is working (see #433). Android change will come in a follow-up PR. Risk Level: Low Testing: Locally on demos & unit tests Signed-off-by: Michael Rebello <me@michaelrebello.com> Signed-off-by: JP Simard <jp@jpsim.com>
jpsim
pushed a commit
that referenced
this pull request
Nov 29, 2022
Adds support for setting the domain used in the base cluster of the Envoy config. This is necessary until `dynamic_forward_proxy` is working (see #433). Android change will come in a follow-up PR. Risk Level: Low Testing: Locally on demos & unit tests Signed-off-by: Michael Rebello <me@michaelrebello.com> Signed-off-by: JP Simard <jp@jpsim.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
do_ci.sh runs tests with heapcheck enabled. This can discover heap leaks
but requires pprof (in google-perftools) to perform the symbolization
and printing of allocation site stack traces.
With this PR, a failed run will produce output such as:
Have memory regions w/o callers: might report false leaks
Leak check main detected leaks of 16 bytes in 1 objects
The 1 largest leaks:
Using local file /source/build/test/envoy-test.
Leak of 16 bytes in 1 objects allocated from:
@ 15d6b6f Network::DnsImplTest_Cancel_Test::TestBody
@ 1e91e66 testing::internal::HandleSehExceptionsInMethodIfSupported
@ 1e8cba8 testing::internal::HandleExceptionsInMethodIfSupported
@ 1e73af5 testing::Test::Run
@ 1e74381 testing::TestInfo::Run
@ 1e74a12 testing::TestCase::Run
@ 1e7b1bd testing::internal::UnitTestImpl::RunAllTests
@ 1e92f66 testing::internal::HandleSehExceptionsInMethodIfSupported
@ 1e8d86a testing::internal::HandleExceptionsInMethodIfSupported
@ 1e79e47 testing::UnitTest::Run
@ 181925a RUN_ALL_TESTS
@ 181844d main