-
Notifications
You must be signed in to change notification settings - Fork 610
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
Restore the commit fixing a memory leak in AWS SDK #8823
Conversation
…m#6160)" (ydb-platform#8698)" This reverts commit 2091af7.
This reverts commit 3ca7872.
⚪ ⚪
⚪
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
⚪
🟢
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
During the 610th import of YDB GitHub code to arcadia/contrib, it was discovered that RTMR tests use a static (!) wrapper of TKikimrRunner. It breaks the proper order of destruction of objects and:
ydb/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core/source/http/HttpClientFactory.cpp
Line 39 in 0923723
is destroyed before
ydb/ydb/core/driver_lib/run/kikimr_services_initializers.cpp
Line 254 in ff0fd33
is called. It causes
operator->
of thes_HttpClientFactory
in the CleanupHttp() function to read a deleted vtable leading to a segfault.It will take too long to fix RTMR tests, so the proposed solution is to introduce a service mask to control AWS SDK initialization and disable it for RTMR tests.
Note: by default
EnableAwsService
flag will be enabled.Another note: if you ask yourself "Does the new flag need to be added to EnableYQ() setup function?", the answer I got from YQ team is "no".