Stress topic workload LeakSanitizer / exit code 100 (release-asan) on the 26.2 line.
Matched by: "LeakSanitizer: memory leaks in NYdb::NTopic read session (TDataDecompressionInfo, StreamReadMessage_ReadResponse parse); see also umbrella issue #45120".
=================================================================
==1420481==ERROR: LeakSanitizer: detected memory leaks
Indirect leak of 1342488 byte(s) in 131 object(s) allocated from:
#0 0x000004e6548d in operator new(unsigned long) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x4e6548d) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#1 0x000004d55682 in std::__y1::basic_string<char, std::__y1::char_traits<char>, std::__y1::allocator<char>>::__append_default_init[abi:fe210000](unsigned long) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x4d55682) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#2 0x000005bc8a8c in google::protobuf::internal::EpsCopyInputStream::ReadString(char const*, int, TBasicString<char, std::__y1::char_traits<char>>*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bc8a8c) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#3 0x000008792a9b in Ydb::Topic::StreamReadMessage_ReadResponse_MessageData::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8792a9b) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#4 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#5 0x000008795da9 in Ydb::Topic::StreamReadMessage_ReadResponse_Batch::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8795da9) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#6 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#7 0x000008798ab8 in Ydb::Topic::StreamReadMessage_ReadResponse_PartitionData::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8798ab8) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#8 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#9 0x000008799bc8 in Ydb::Topic::StreamReadMessage_ReadResponse::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8799bc8) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#10 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#11 0x0000087885cd in Ydb::Topic::StreamReadMessage_FromServer::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x87885cd) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#12 0x000005bf0b9f in google::protobuf::MessageLite::ParseFromZeroCopyStream(google::protobuf::io::ZeroCopyInputStream*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bf0b9f) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#13 0x00000a0b42d4 in grpc::Status grpc::GenericDeserialize<grpc::ProtoBufferReader, Ydb::Topic::StreamReadMessage_FromServer>(grpc::ByteBuffer*, google::protobuf::MessageLite*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0xa0b42d4) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#14 0x00000a0b3b16 in grpc::internal::CallOpRecvMessage<Ydb::Topic::StreamReadMessage_FromServer>::FinishOp(bool*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0xa0b3b16) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#15 0x00000a0b2cdf in grpc::internal::CallOpSet<grpc::internal::CallOpRecvInitialMetadata, grpc::internal::CallOpRecvMessage<Ydb::Topic::StreamReadMessage_FromServer>, grpc::internal::CallNoOp<3>, grpc::internal::CallNoOp<4>, grpc::internal::CallNoOp<5>, grpc::internal::CallNoOp<6>>::FinalizeResult(void**, bool*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0xa0b2cdf) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#16 0x0000094b4799 in grpc::CompletionQueue::AsyncNextInternal(void**, bool*, gpr_timespec) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x94b4799) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#17 0x000008a8f99f (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8a8f99f) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#18 0x000005f774ee (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5f774ee) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#19 0x000005f77a4c (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5f77a4c) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#20 0x00000519bdb4 (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x519bdb4) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#21 0x000004e28fa6 (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x4e28fa6) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
Indirect leak of 204960 byte(s) in 20 object(s) allocated from:
#0 0x000004e6548d in operator new(unsigned long) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x4e6548d) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#1 0x000004ec7f6c in std::__y1::basic_string<char, std::__y1::char_traits<char>, std::__y1::allocator<char>>::reserve(unsigned long) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x4ec7f6c) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#2 0x000005bfdf93 in google::protobuf::internal::EpsCopyInputStream::ReadStringFallback(char const*, int, TBasicString<char, std::__y1::char_traits<char>>*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bfdf93) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#3 0x000008792a9b in Ydb::Topic::StreamReadMessage_ReadResponse_MessageData::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8792a9b) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#4 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#5 0x000008795da9 in Ydb::Topic::StreamReadMessage_ReadResponse_Batch::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8795da9) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#6 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#7 0x000008798ab8 in Ydb::Topic::StreamReadMessage_ReadResponse_PartitionData::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8798ab8) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#8 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#9 0x000008799bc8 in Ydb::Topic::StreamReadMessage_ReadResponse::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8799bc8) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#10 0x000005bff9e7 in google::protobuf::internal::ParseContext::ParseMessage(google::protobuf::MessageLite*, char const*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bff9e7) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#11 0x0000087885cd in Ydb::Topic::StreamReadMessage_FromServer::_InternalParse(char const*, google::protobuf::internal::ParseContext*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x87885cd) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#12 0x000005bf0b9f in google::protobuf::MessageLite::ParseFromZeroCopyStream(google::protobuf::io::ZeroCopyInputStream*) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5bf0b9f) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
... [truncated] ...
#5 0x00000a151248 in std::__y1::__function::__func<NYdb::Dev::NTopic::TSingleClusterReadSessionImpl<false>::ReadFromProcessorImpl(NYdb::Dev::NTopic::TDeferredActions<false>&)::'lambda'(NYdbGrpc::Dev::TGrpcStatus&&), std::__y1::allocator<NYdb::Dev::NTopic::TSingleClusterReadSessionImpl<false>::ReadFromProcessorImpl(NYdb::Dev::NTopic::TDeferredActions<false>&)::'lambda'(NYdbGrpc::Dev::TGrpcStatus&&)>, void (NYdbGrpc::Dev::TGrpcStatus&&)>::operator()(NYdbGrpc::Dev::TGrpcStatus&&) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0xa151248) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#6 0x00000a0a6fea in NYdbGrpc::Dev::TStreamRequestReadWriteProcessor<Ydb::Topic::V1::TopicService::Stub, Ydb::Topic::StreamReadMessage_FromClient, Ydb::Topic::StreamReadMessage_FromServer>::OnReadDone(bool) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0xa0a6fea) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#7 0x00000a0af5ff in NYdbGrpc::Dev::TQueueClientFixedEvent<NYdbGrpc::Dev::TStreamRequestReadWriteProcessor<Ydb::Topic::V1::TopicService::Stub, Ydb::Topic::StreamReadMessage_FromClient, Ydb::Topic::StreamReadMessage_FromServer>>::Execute(bool) (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0xa0af5ff) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#8 0x000008a8f9ea (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x8a8f9ea) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#9 0x000005f774ee (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5f774ee) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#10 0x000005f77a4c (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x5f77a4c) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#11 0x00000519bdb4 (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x519bdb4) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
#12 0x000004e28fa6 (/home/runner/.ya/build/build_root/slqk/000789/ydb/tests/stress/topic/tests/test-results/py3test/tmp004q2ear/topic_ydb_cli/ydb_cli+0x4e28fa6) (BuildId: d0e251c0c0c2710b4ebc5365a4cfd9cae64e6957)
SUMMARY: AddressSanitizer: 1778712 byte(s) leaked in 3771 allocation(s).
Summary
Stress topic workload LeakSanitizer / exit code 100 (release-asan) on the 26.2 line.
Split out from #46517: for 26.2 we track this in a separate issue. The same root cause was fixed on
main/stable-26-3/stable-26-3-1(LOGBROKER-10550, #46748 / backports #46896, #46897); the fix is not yet onstable-26-2-1/26.2.1.7.iamprovider.1.Related: #46517, umbrella #45120. Backport in progress: #47779.
Environment
Reports
Affected tests
ydb/tests/stress/topic/tests/test_workload_topic.py.TestYdbTopicWorkload.test(release-asan, try_1)Matched by: "LeakSanitizer: memory leaks in NYdb::NTopic read session (TDataDecompressionInfo, StreamReadMessage_ReadResponse parse); see also umbrella issue #45120".
Sanitizer output