Skip to content

Fix data race in ProtobufSchemas#27822

Merged
vitlibar merged 4 commits intoClickHouse:masterfrom
filimonov:kafka_protobuf_issue26643
Dec 11, 2021
Merged

Fix data race in ProtobufSchemas#27822
vitlibar merged 4 commits intoClickHouse:masterfrom
filimonov:kafka_protobuf_issue26643

Conversation

@filimonov
Copy link
Copy Markdown
Contributor

@filimonov filimonov commented Aug 18, 2021

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Changelog category (leave one):

  • Not for changelog (changelog entry is not required)

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
This PR fixes a data race in ProtobufSchemas::getMessageTypeForFormatSchema().

Detailed description / Documentation draft:
It looks like the exact problem from #26643 (comment) was not reproduced, but we see some data race here related to

if (it == importers.end())
it = importers.emplace(info.schemaDirectory(), std::make_unique<ImporterWithSourceTree>(info.schemaDirectory())).first;

==================
WARNING: ThreadSanitizer: data race (pid=8)
  Write of size 8 at 0x7b0400043620 by thread T195:
    #0 operator delete(void*, unsigned long) <null> (clickhouse+0x98c0c9e)
    #1 void std::__1::__libcpp_operator_delete<void*, unsigned long>(void*, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/new:245:3 (clickhouse+0x15ab47fc)
    #2 void std::__1::__do_deallocate_handle_size<>(void*, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/new:271:10 (clickhouse+0x15ab47fc)
    #3 std::__1::__libcpp_deallocate(void*, unsigned long, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/new:285:14 (clickhouse+0x15ab47fc)
    #4 std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*>::deallocate(std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>**, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:849:13 (clickhouse+0x15ab47fc)
    #5 std::__1::allocator_traits<std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*> >::deallocate(std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*>&, std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>**, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/__memory/allocator_traits.h:476:14 (clickhouse+0x15ab47fc)
    #6 std::__1::__bucket_list_deallocator<std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*> >::operator()(std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>**) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:812:9 (clickhouse+0x15ab47fc)
    #7 std::__1::enable_if<_CheckArrayPointerConversion<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>**>::value, void>::type std::__1::unique_ptr<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>* [], std::__1::__bucket_list_deallocator<std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*> > >::reset<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>**>(std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>**) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:1883:7 (clickhouse+0x15ab47fc)
    #8 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::__rehash(unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:2337:20 (clickhouse+0x15ab47fc)
    #9 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::rehash(unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:2315:9 (clickhouse+0x15ab459a)
    #10 std::__1::pair<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>, bool> std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::__emplace_unique_key_args<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >&&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:2096:13 (clickhouse+0x15ab4371)
    #11 std::__1::enable_if<__can_extract_map_key<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > >::value, std::__1::pair<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>, bool> >::type std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::__emplace_unique<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >&&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:1089:16 (clickhouse+0x15ab31e2)
    #12 std::__1::pair<std::__1::__hash_map_iterator<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*> >, bool> std::__1::unordered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::emplace<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >&&) obj-x86_64-linux-gnu/../contrib/libcxx/include/unordered_map:1158:25 (clickhouse+0x15ab31e2)
    #13 DB::ProtobufSchemas::getMessageTypeForFormatSchema(DB::FormatSchemaInfo const&) obj-x86_64-linux-gnu/../src/Formats/ProtobufSchemas.cpp:78:24 (clickhouse+0x15ab31e2)
    #14 DB::ProtobufRowInputFormat::ProtobufRowInputFormat(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSchemaInfo const&, bool) obj-x86_64-linux-gnu/../src/Processors/Formats/Impl/ProtobufRowInputFormat.cpp:23:40 (clickhouse+0x15aade2d)
    #15 void std::__1::allocator<DB::ProtobufRowInputFormat>::construct<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(DB::ProtobufRowInputFormat*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:886:28 (clickhouse+0x15aae8f5)
    #16 void std::__1::allocator_traits<std::__1::allocator<DB::ProtobufRowInputFormat> >::__construct<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(std::__1::integral_constant<bool, true>, std::__1::allocator<DB::ProtobufRowInputFormat>&, DB::ProtobufRowInputFormat*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__memory/allocator_traits.h:519:21 (clickhouse+0x15aae8f5)
    #17 void std::__1::allocator_traits<std::__1::allocator<DB::ProtobufRowInputFormat> >::construct<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(std::__1::allocator<DB::ProtobufRowInputFormat>&, DB::ProtobufRowInputFormat*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__memory/allocator_traits.h:481:14 (clickhouse+0x15aae8f5)
    #18 std::__1::__shared_ptr_emplace<DB::ProtobufRowInputFormat, std::__1::allocator<DB::ProtobufRowInputFormat> >::__shared_ptr_emplace<DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(std::__1::allocator<DB::ProtobufRowInputFormat>, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:2594:9 (clickhouse+0x15aae8f5)
    #19 std::__1::shared_ptr<DB::ProtobufRowInputFormat> std::__1::allocate_shared<DB::ProtobufRowInputFormat, std::__1::allocator<DB::ProtobufRowInputFormat>, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&, void>(std::__1::allocator<DB::ProtobufRowInputFormat> const&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3360:55 (clickhouse+0x15aae8f5)
    #20 std::__1::shared_ptr<DB::ProtobufRowInputFormat> std::__1::make_shared<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&, void>(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3369:12 (clickhouse+0x15aae8f5)
    #21 DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSettings const&) const obj-x86_64-linux-gnu/../src/Processors/Formats/Impl/ProtobufRowInputFormat.cpp:69:20 (clickhouse+0x15aae8f5)
    #22 decltype(std::__1::forward<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&>(fp)(std::__1::forward<DB::ReadBuffer&>(fp0), std::__1::forward<DB::Block const&>(fp0), std::__1::forward<DB::RowInputFormatParams const&>(fp0), std::__1::forward<DB::FormatSettings const&>(fp0))) std::__1::__invoke<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&>(DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3676:1 (clickhouse+0x15aae8f5)
    #23 std::__1::shared_ptr<DB::IInputFormat> std::__1::__invoke_void_return_wrapper<std::__1::shared_ptr<DB::IInputFormat> >::__call<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&>(DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__functional_base:317:16 (clickhouse+0x15aae8f5)
    #24 std::__1::__function::__default_alloc_func<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0, std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1608:12 (clickhouse+0x15aae8f5)
    #25 std::__1::shared_ptr<DB::IInputFormat> std::__1::__function::__policy_invoker<std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::__call_impl<std::__1::__function::__default_alloc_func<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0, std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)> >(std::__1::__function::__policy_storage const*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2089:16 (clickhouse+0x15aae8f5)
    #26 std::__1::__function::__policy_func<std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2221:16 (clickhouse+0x1595ed36)
    #27 std::__1::function<std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2560:12 (clickhouse+0x1595ed36)
    #28 DB::FormatFactory::getInputFormat(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::ReadBuffer&, DB::Block const&, std::__1::shared_ptr<DB::Context const>, unsigned long, std::__1::optional<DB::FormatSettings> const&) const obj-x86_64-linux-gnu/../src/Formats/FormatFactory.cpp:290:19 (clickhouse+0x1595ed36)
    #29 DB::KafkaBlockInputStream::readImpl() obj-x86_64-linux-gnu/../src/Storages/Kafka/KafkaBlockInputStream.cpp:86:51 (clickhouse+0x15490b8f)
    #30 DB::IBlockInputStream::read() obj-x86_64-linux-gnu/../src/DataStreams/IBlockInputStream.cpp:57:15 (clickhouse+0x14293799)
    #31 DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::loop(unsigned long) obj-x86_64-linux-gnu/../src/DataStreams/ParallelInputsProcessor.h:281:37 (clickhouse+0x154658bd)
    #32 DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::thread(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long) obj-x86_64-linux-gnu/../src/DataStreams/ParallelInputsProcessor.h:207:13 (clickhouse+0x1546446a)
    #33 decltype(*(std::__1::forward<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&>(fp0)).*fp(std::__1::forward<std::__1::shared_ptr<DB::ThreadGroupStatus>&>(fp1), std::__1::forward<unsigned long&>(fp1))) std::__1::__invoke_constexpr<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&, std::__1::shared_ptr<DB::ThreadGroupStatus>&, unsigned long&, void>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&, std::__1::shared_ptr<DB::ThreadGroupStatus>&, unsigned long&) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3624:1 (clickhouse+0x154651d3)
    #34 decltype(auto) std::__1::__apply_tuple_impl<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&, 0ul, 1ul, 2ul>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&, std::__1::__tuple_indices<0ul, 1ul, 2ul>) obj-x86_64-linux-gnu/../contrib/libcxx/include/tuple:1415:1 (clickhouse+0x154651d3)
    #35 decltype(auto) std::__1::apply<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&) obj-x86_64-linux-gnu/../contrib/libcxx/include/tuple:1424:1 (clickhouse+0x154651d3)
    #36 ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'()::operator()() obj-x86_64-linux-gnu/../src/Common/ThreadPool.h:182:13 (clickhouse+0x154651d3)
    #37 decltype(std::__1::forward<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long)>(fp)(std::__1::forward<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*>(fp0), std::__1::forward<std::__1::shared_ptr<DB::ThreadGroupStatus> >(fp0), std::__1::forward<unsigned long&>(fp0))) std::__1::__invoke<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'()&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3676:1 (clickhouse+0x154650a1)
    #38 void std::__1::__invoke_void_return_wrapper<void>::__call<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'()&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long)...) obj-x86_64-linux-gnu/../contrib/libcxx/include/__functional_base:348:9 (clickhouse+0x154650a1)
    #39 std::__1::__function::__default_alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'(), void ()>::operator()() obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1608:12 (clickhouse+0x154650a1)
    #40 void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'(), void ()> >(std::__1::__function::__policy_storage const*) obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2089:16 (clickhouse+0x154650a1)
    #41 std::__1::__function::__policy_func<void ()>::operator()() const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2221:16 (clickhouse+0x9944436)
    #42 std::__1::function<void ()>::operator()() const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2560:12 (clickhouse+0x9944436)
    #43 ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>) obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:269:17 (clickhouse+0x9944436)
    #44 void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()::operator()() const obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:136:73 (clickhouse+0x9947bb8)
    #45 decltype(std::__1::forward<void>(fp)(std::__1::forward<void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>(fp0)...)) std::__1::__invoke<void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>(void&&, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()&&...) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3676:1 (clickhouse+0x9947bb8)
    #46 void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>(std::__1::tuple<void, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>&, std::__1::__tuple_indices<>) obj-x86_64-linux-gnu/../contrib/libcxx/include/thread:280:5 (clickhouse+0x9947bb8)
    #47 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()> >(void*) obj-x86_64-linux-gnu/../contrib/libcxx/include/thread:291:5 (clickhouse+0x9947bb8)

  Previous write of size 8 at 0x7b0400043620 by thread T192:
    #0 operator new(unsigned long) <null> (clickhouse+0x98c02a7)
    #1 void* std::__1::__libcpp_operator_new<unsigned long>(unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/new:235:10 (clickhouse+0x15ab47c6)
    #2 std::__1::__libcpp_allocate(unsigned long, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/new:261:10 (clickhouse+0x15ab47c6)
    #3 std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*>::allocate(unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:840:38 (clickhouse+0x15ab47c6)
    #4 std::__1::allocator_traits<std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*> >::allocate(std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>*>&, unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/__memory/allocator_traits.h:468:21 (clickhouse+0x15ab47c6)
    #5 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::__rehash(unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:2338:23 (clickhouse+0x15ab47c6)
    #6 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::rehash(unsigned long) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:2315:9 (clickhouse+0x15ab459a)
    #7 std::__1::pair<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>, bool> std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::__emplace_unique_key_args<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >&&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:2096:13 (clickhouse+0x15ab4371)
    #8 std::__1::enable_if<__can_extract_map_key<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > >::value, std::__1::pair<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*>, bool> >::type std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::__emplace_unique<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >&&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__hash_table:1089:16 (clickhouse+0x15ab31e2)
    #9 std::__1::pair<std::__1::__hash_map_iterator<std::__1::__hash_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >, void*>*> >, bool> std::__1::unordered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > > > >::emplace<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unique_ptr<DB::ProtobufSchemas::ImporterWithSourceTree, std::__1::default_delete<DB::ProtobufSchemas::ImporterWithSourceTree> >&&) obj-x86_64-linux-gnu/../contrib/libcxx/include/unordered_map:1158:25 (clickhouse+0x15ab31e2)
    #10 DB::ProtobufSchemas::getMessageTypeForFormatSchema(DB::FormatSchemaInfo const&) obj-x86_64-linux-gnu/../src/Formats/ProtobufSchemas.cpp:78:24 (clickhouse+0x15ab31e2)
    #11 DB::ProtobufRowInputFormat::ProtobufRowInputFormat(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSchemaInfo const&, bool) obj-x86_64-linux-gnu/../src/Processors/Formats/Impl/ProtobufRowInputFormat.cpp:23:40 (clickhouse+0x15aade2d)
    #12 void std::__1::allocator<DB::ProtobufRowInputFormat>::construct<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(DB::ProtobufRowInputFormat*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:886:28 (clickhouse+0x15aae8f5)
    #13 void std::__1::allocator_traits<std::__1::allocator<DB::ProtobufRowInputFormat> >::__construct<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(std::__1::integral_constant<bool, true>, std::__1::allocator<DB::ProtobufRowInputFormat>&, DB::ProtobufRowInputFormat*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__memory/allocator_traits.h:519:21 (clickhouse+0x15aae8f5)
    #14 void std::__1::allocator_traits<std::__1::allocator<DB::ProtobufRowInputFormat> >::construct<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(std::__1::allocator<DB::ProtobufRowInputFormat>&, DB::ProtobufRowInputFormat*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__memory/allocator_traits.h:481:14 (clickhouse+0x15aae8f5)
    #15 std::__1::__shared_ptr_emplace<DB::ProtobufRowInputFormat, std::__1::allocator<DB::ProtobufRowInputFormat> >::__shared_ptr_emplace<DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&>(std::__1::allocator<DB::ProtobufRowInputFormat>, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:2594:9 (clickhouse+0x15aae8f5)
    #16 std::__1::shared_ptr<DB::ProtobufRowInputFormat> std::__1::allocate_shared<DB::ProtobufRowInputFormat, std::__1::allocator<DB::ProtobufRowInputFormat>, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&, void>(std::__1::allocator<DB::ProtobufRowInputFormat> const&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3360:55 (clickhouse+0x15aae8f5)
    #17 std::__1::shared_ptr<DB::ProtobufRowInputFormat> std::__1::make_shared<DB::ProtobufRowInputFormat, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSchemaInfo, bool const&, void>(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams&&, DB::FormatSchemaInfo&&, bool const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3369:12 (clickhouse+0x15aae8f5)
    #18 DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams, DB::FormatSettings const&) const obj-x86_64-linux-gnu/../src/Processors/Formats/Impl/ProtobufRowInputFormat.cpp:69:20 (clickhouse+0x15aae8f5)
    #19 decltype(std::__1::forward<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&>(fp)(std::__1::forward<DB::ReadBuffer&>(fp0), std::__1::forward<DB::Block const&>(fp0), std::__1::forward<DB::RowInputFormatParams const&>(fp0), std::__1::forward<DB::FormatSettings const&>(fp0))) std::__1::__invoke<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&>(DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3676:1 (clickhouse+0x15aae8f5)
    #20 std::__1::shared_ptr<DB::IInputFormat> std::__1::__invoke_void_return_wrapper<std::__1::shared_ptr<DB::IInputFormat> >::__call<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&>(DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0&, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__functional_base:317:16 (clickhouse+0x15aae8f5)
    #21 std::__1::__function::__default_alloc_func<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0, std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1608:12 (clickhouse+0x15aae8f5)
    #22 std::__1::shared_ptr<DB::IInputFormat> std::__1::__function::__policy_invoker<std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::__call_impl<std::__1::__function::__default_alloc_func<DB::registerInputFormatProcessorProtobuf(DB::FormatFactory&)::$_0, std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)> >(std::__1::__function::__policy_storage const*, DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2089:16 (clickhouse+0x15aae8f5)
    #23 std::__1::__function::__policy_func<std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2221:16 (clickhouse+0x1595ed36)
    #24 std::__1::function<std::__1::shared_ptr<DB::IInputFormat> (DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&)>::operator()(DB::ReadBuffer&, DB::Block const&, DB::RowInputFormatParams const&, DB::FormatSettings const&) const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2560:12 (clickhouse+0x1595ed36)
    #25 DB::FormatFactory::getInputFormat(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::ReadBuffer&, DB::Block const&, std::__1::shared_ptr<DB::Context const>, unsigned long, std::__1::optional<DB::FormatSettings> const&) const obj-x86_64-linux-gnu/../src/Formats/FormatFactory.cpp:290:19 (clickhouse+0x1595ed36)
    #26 DB::KafkaBlockInputStream::readImpl() obj-x86_64-linux-gnu/../src/Storages/Kafka/KafkaBlockInputStream.cpp:86:51 (clickhouse+0x15490b8f)
    #27 DB::IBlockInputStream::read() obj-x86_64-linux-gnu/../src/DataStreams/IBlockInputStream.cpp:57:15 (clickhouse+0x14293799)
    #28 DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::loop(unsigned long) obj-x86_64-linux-gnu/../src/DataStreams/ParallelInputsProcessor.h:281:37 (clickhouse+0x154658bd)
    #29 DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::thread(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long) obj-x86_64-linux-gnu/../src/DataStreams/ParallelInputsProcessor.h:207:13 (clickhouse+0x1546446a)
    #30 decltype(*(std::__1::forward<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&>(fp0)).*fp(std::__1::forward<std::__1::shared_ptr<DB::ThreadGroupStatus>&>(fp1), std::__1::forward<unsigned long&>(fp1))) std::__1::__invoke_constexpr<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&, std::__1::shared_ptr<DB::ThreadGroupStatus>&, unsigned long&, void>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&, std::__1::shared_ptr<DB::ThreadGroupStatus>&, unsigned long&) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3624:1 (clickhouse+0x154651d3)
    #31 decltype(auto) std::__1::__apply_tuple_impl<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&, 0ul, 1ul, 2ul>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&, std::__1::__tuple_indices<0ul, 1ul, 2ul>) obj-x86_64-linux-gnu/../contrib/libcxx/include/tuple:1415:1 (clickhouse+0x154651d3)
    #32 decltype(auto) std::__1::apply<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), std::__1::tuple<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long>&) obj-x86_64-linux-gnu/../contrib/libcxx/include/tuple:1424:1 (clickhouse+0x154651d3)
    #33 ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'()::operator()() obj-x86_64-linux-gnu/../src/Common/ThreadPool.h:182:13 (clickhouse+0x154651d3)
    #34 decltype(std::__1::forward<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long)>(fp)(std::__1::forward<DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*>(fp0), std::__1::forward<std::__1::shared_ptr<DB::ThreadGroupStatus> >(fp0), std::__1::forward<unsigned long&>(fp0))) std::__1::__invoke<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'()&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3676:1 (clickhouse+0x154650a1)
    #35 void std::__1::__invoke_void_return_wrapper<void>::__call<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'()&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long)...) obj-x86_64-linux-gnu/../contrib/libcxx/include/__functional_base:348:9 (clickhouse+0x154650a1)
    #36 std::__1::__function::__default_alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'(), void ()>::operator()() obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1608:12 (clickhouse+0x154650a1)
    #37 void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*, std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long&>(void (DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>::*&&)(std::__1::shared_ptr<DB::ThreadGroupStatus>, unsigned long), DB::ParallelInputsProcessor<DB::UnionBlockInputStream::Handler>*&&, std::__1::shared_ptr<DB::ThreadGroupStatus>&&, unsigned long&)::'lambda'(), void ()> >(std::__1::__function::__policy_storage const*) obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2089:16 (clickhouse+0x154650a1)
    #38 std::__1::__function::__policy_func<void ()>::operator()() const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2221:16 (clickhouse+0x9944436)
    #39 std::__1::function<void ()>::operator()() const obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2560:12 (clickhouse+0x9944436)
    #40 ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>) obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:269:17 (clickhouse+0x9944436)
    #41 void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()::operator()() const obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:136:73 (clickhouse+0x9947bb8)
    #42 decltype(std::__1::forward<void>(fp)(std::__1::forward<void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>(fp0)...)) std::__1::__invoke<void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>(void&&, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()&&...) obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3676:1 (clickhouse+0x9947bb8)
    #43 void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>(std::__1::tuple<void, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()>&, std::__1::__tuple_indices<>) obj-x86_64-linux-gnu/../contrib/libcxx/include/thread:280:5 (clickhouse+0x9947bb8)
    #44 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()> >(void*) obj-x86_64-linux-gnu/../contrib/libcxx/include/thread:291:5 (clickhouse+0x9947bb8)

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Sep 28, 2021

CLA assistant check
All committers have signed the CLA.

@filimonov filimonov closed this Oct 4, 2021
@alexey-milovidov
Copy link
Copy Markdown
Member

@filimonov Why closed?

@filimonov filimonov reopened this Oct 4, 2021
@filimonov
Copy link
Copy Markdown
Contributor Author

@mergify rebase

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Oct 4, 2021

Command rebase: success

Branch has been successfully rebased

Hey, I reacted but my real name is @Mergifyio

@nikitamikhaylov nikitamikhaylov force-pushed the kafka_protobuf_issue26643 branch from d6faa6d to ea320c9 Compare October 4, 2021 14:38
@robot-clickhouse robot-clickhouse added pr-not-for-changelog This PR should not be mentioned in the changelog and removed pr-feature Pull request with new product feature labels Oct 4, 2021
@filimonov filimonov requested a review from vitlibar October 4, 2021 14:41
@filimonov filimonov marked this pull request as ready for review October 4, 2021 14:42
@filimonov
Copy link
Copy Markdown
Contributor Author

Stress test: https://clickhouse-test-reports.s3.yandex.net/27822/ea320c96d52f83ccbdae0011d6611c6fcf02d43e/stress_test_(thread).html#fail1

==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=497)
  Cycle in lock order graph: M79759689 (0x7b5802d1af08) => M1007534456465327920 (0x000000000000) => M79759689

  Mutex M1007534456465327920 acquired here while holding mutex M79759689 in thread T412:
    #0 pthread_mutex_lock <null> (clickhouse+0x96fb888)
    #1 std::__1::__libcpp_mutex_lock(pthread_mutex_t*) obj-x86_64-linux-gnu/../contrib/libcxx/include/__threading_support:405:10 (clickhouse+0x1c165a19)
    #2 std::__1::mutex::lock() obj-x86_64-linux-gnu/../contrib/libcxx/src/mutex.cpp:33:14 (clickhouse+0x1c165a19)
    #3 std::__1::lock_guard<std::__1::mutex>::lock_guard(std::__1::mutex&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__mutex_base:91:27 (clickhouse+0x149f2f59)
    #4 DB::DatabaseWithOwnTablesBase::tryGetTable(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::shared_ptr<DB::Context const>) const obj-x86_64-linux-gnu/../src/Databases/DatabasesCommon.cpp:37:21 (clickhouse+0x149f2f59)
    #5 DB::DatabaseMemory::tryGetTableUUID(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const obj-x86_64-linux-gnu/../src/Databases/DatabaseMemory.cpp:95:22 (clickhouse+0x149a8a95)
    #6 DB::Context::resolveStorageID(DB::StorageID, DB::Context::StorageNamespace) const obj-x86_64-linux-gnu/../src/Interpreters/Context.cpp:2672:90 (clickhouse+0x14b28a01)
    #7 DB::JoinedTables::getLeftTableStorage() obj-x86_64-linux-gnu/../src/Interpreters/JoinedTables.cpp:200:29 (clickhouse+0x15430622)
    #8 DB::InterpreterSelectQuery::InterpreterSelectQuery(std::__1::shared_ptr<DB::IAST> const&, std::__1::shared_ptr<DB::Context const>, std::__1::shared_ptr<DB::IBlockInputStream> const&, std::__1::optional<DB::Pipe>, std::__1::shared_ptr<DB::IStorage> const&, DB::SelectQueryOptions const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::shared_ptr<DB::StorageInMemoryMetadata const> const&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:321:33 (clickhouse+0x150baa5e)
    #9 DB::InterpreterSelectQuery::InterpreterSelectQuery(std::__1::shared_ptr<DB::IAST> const&, std::__1::shared_ptr<DB::Context const>, DB::SelectQueryOptions const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:160:7 (clickhouse+0x150b9900)
    #10 DB::StorageLiveView::collectMergeableBlocks(std::__1::shared_ptr<DB::Context const>) obj-x86_64-linux-gnu/../src/Storages/LiveView/StorageLiveView.cpp:113:28 (clickhouse+0x15ffec72)
    #11 DB::StorageLiveView::getNewBlocks() obj-x86_64-linux-gnu/../src/Storages/LiveView/StorageLiveView.cpp:384:33 (clickhouse+0x1600441a)
    #12 DB::StorageLiveView::refresh(bool) obj-x86_64-linux-gnu/../src/Storages/LiveView/StorageLiveView.cpp:528:13 (clickhouse+0x16006e75)
    #13 DB::StorageLiveView::read(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::shared_ptr<DB::StorageInMemoryMetadata const> const&, DB::SelectQueryInfo&, std::__1::shared_ptr<DB::Context const>, DB::QueryProcessingStage::Enum, unsigned long, unsigned int) obj-x86_64-linux-gnu/../src/Storages/LiveView/StorageLiveView.cpp:545:9 (clickhouse+0x16006e75)
    #14 DB::IStorage::read(DB::QueryPlan&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::shared_ptr<DB::StorageInMemoryMetadata const> const&, DB::SelectQueryInfo&, std::__1::shared_ptr<DB::Context const>, DB::QueryProcessingStage::Enum, unsigned long, unsigned int) obj-x86_64-linux-gnu/../src/Storages/IStorage.cpp:109:17 (clickhouse+0x15944f21)
    #15 DB::InterpreterSelectQuery::executeFetchColumns(DB::QueryProcessingStage::Enum, DB::QueryPlan&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:1984:18 (clickhouse+0x150ccf92)
    #16 DB::InterpreterSelectQuery::executeImpl(DB::QueryPlan&, std::__1::shared_ptr<DB::IBlockInputStream> const&, std::__1::optional<DB::Pipe>) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:1037:9 (clickhouse+0x150c58cf)
    #17 DB::InterpreterSelectQuery::buildQueryPlan(DB::QueryPlan&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:580:5 (clickhouse+0x150c4f52)
    #18 DB::InterpreterSelectWithUnionQuery::buildQueryPlan(DB::QueryPlan&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectWithUnionQuery.cpp:254:38 (clickhouse+0x153ecf1b)
    #19 DB::InterpreterSelectWithUnionQuery::execute() obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectWithUnionQuery.cpp:321:5 (clickhouse+0x153ede98)
    #20 DB::executeQueryImpl(char const*, char const*, std::__1::shared_ptr<DB::Context>, bool, DB::QueryProcessingStage::Enum, DB::ReadBuffer*) obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:635:32 (clickhouse+0x1564046f)
    #21 DB::executeQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::shared_ptr<DB::Context>, bool, DB::QueryProcessingStage::Enum) obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:950:30 (clickhouse+0x1563e241)
    #22 DB::TCPHandler::runImpl() obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:292:24 (clickhouse+0x161207c6)
    #23 DB::TCPHandler::run() obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:1641:9 (clickhouse+0x161303c7)
    #24 Poco::Net::TCPServerConnection::start() obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerConnection.cpp:43:3 (clickhouse+0x195367c2)
    #25 Poco::Net::TCPServerDispatcher::run() obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerDispatcher.cpp:115:20 (clickhouse+0x19536fd2)
    #26 Poco::PooledThread::run() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:199:14 (clickhouse+0x196b8cf5)
    #27 Poco::(anonymous namespace)::RunnableHolder::run() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread.cpp:55:11 (clickhouse+0x196b6ecf)
    #28 Poco::ThreadImpl::runnableEntry(void*) obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread_POSIX.cpp:345:27 (clickhouse+0x196b55a7)

    Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message

  Mutex M79759689 acquired here while holding mutex M1007534456465327920 in thread T412:
    #0 pthread_mutex_lock <null> (clickhouse+0x96fb888)
    #1 std::__1::__libcpp_mutex_lock(pthread_mutex_t*) obj-x86_64-linux-gnu/../contrib/libcxx/include/__threading_support:405:10 (clickhouse+0x1c165a19)
    #2 std::__1::mutex::lock() obj-x86_64-linux-gnu/../contrib/libcxx/src/mutex.cpp:33:14 (clickhouse+0x1c165a19)
    #3 std::__1::lock_guard<std::__1::mutex>::lock_guard(std::__1::mutex&) obj-x86_64-linux-gnu/../contrib/libcxx/include/__mutex_base:91:27 (clickhouse+0x16006709)
    #4 DB::StorageLiveView::drop() obj-x86_64-linux-gnu/../src/Storages/LiveView/StorageLiveView.cpp:477:21 (clickhouse+0x16006709)
    #5 DB::DatabaseMemory::dropTable(std::__1::shared_ptr<DB::Context const>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) obj-x86_64-linux-gnu/../src/Databases/DatabaseMemory.cpp:44:16 (clickhouse+0x149a7bb6)
    #6 DB::InterpreterDropQuery::executeToTableImpl(DB::ASTDropQuery&, std::__1::shared_ptr<DB::IDatabase>&, StrongTypedef<wide::integer<128ul, unsigned int>, DB::UUIDTag>&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterDropQuery.cpp:228:23 (clickhouse+0x1503c11c)
    #7 DB::InterpreterDropQuery::executeToTable(DB::ASTDropQuery&) obj-x86_64-linux-gnu/../src/Interpreters/InterpreterDropQuery.cpp:85:16 (clickhouse+0x1503a93c)
    #8 DB::InterpreterDropQuery::execute() obj-x86_64-linux-gnu/../src/Interpreters/InterpreterDropQuery.cpp:62:16 (clickhouse+0x1503a3b9)
    #9 DB::executeQueryImpl(char const*, char const*, std::__1::shared_ptr<DB::Context>, bool, DB::QueryProcessingStage::Enum, DB::ReadBuffer*) obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:635:32 (clickhouse+0x1564046f)
    #10 DB::executeQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::shared_ptr<DB::Context>, bool, DB::QueryProcessingStage::Enum) obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:950:30 (clickhouse+0x1563e241)
    #11 DB::TCPHandler::runImpl() obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:292:24 (clickhouse+0x161207c6)
    #12 DB::TCPHandler::run() obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:1641:9 (clickhouse+0x161303c7)
    #13 Poco::Net::TCPServerConnection::start() obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerConnection.cpp:43:3 (clickhouse+0x195367c2)
    #14 Poco::Net::TCPServerDispatcher::run() obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerDispatcher.cpp:115:20 (clickhouse+0x19536fd2)
    #15 Poco::PooledThread::run() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:199:14 (clickhouse+0x196b8cf5)
    #16 Poco::(anonymous namespace)::RunnableHolder::run() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread.cpp:55:11 (clickhouse+0x196b6ecf)
    #17 Poco::ThreadImpl::runnableEntry(void*) obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread_POSIX.cpp:345:27 (clickhouse+0x196b55a7)

  Thread T412 'TCPHandler' (tid=2527, running) created by thread T249 at:
    #0 pthread_create <null> (clickhouse+0x96de5ad)
    #1 Poco::ThreadImpl::startImpl(Poco::SharedPtr<Poco::Runnable, Poco::ReferenceCounter, Poco::ReleasePolicy<Poco::Runnable> >) obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread_POSIX.cpp:202:6 (clickhouse+0x196b5038)
    #2 Poco::Thread::start(Poco::Runnable&) obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread.cpp:128:2 (clickhouse+0x196b680c)
    #3 Poco::PooledThread::start() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:85:10 (clickhouse+0x196baae6)
    #4 Poco::ThreadPool::getThread() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:461:14 (clickhouse+0x196baae6)
    #5 Poco::ThreadPool::startWithPriority(Poco::Thread::Priority, Poco::Runnable&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:365:2 (clickhouse+0x196baec7)
    #6 Poco::Net::TCPServerDispatcher::enqueue(Poco::Net::StreamSocket const&) obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerDispatcher.cpp:152:17 (clickhouse+0x195374ae)
    #7 Poco::Net::TCPServer::run() obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServer.cpp:148:21 (clickhouse+0x19536047)
    #8 Poco::(anonymous namespace)::RunnableHolder::run() obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread.cpp:55:11 (clickhouse+0x196b6ecf)
    #9 Poco::ThreadImpl::runnableEntry(void*) obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread_POSIX.cpp:345:27 (clickhouse+0x196b55a7)

SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) (/usr/bin/clickhouse+0x96fb888) in pthread_mutex_lock
==================

@vitlibar
Copy link
Copy Markdown
Member

@Mergifyio update

@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Dec 11, 2021

update

✅ Branch has been successfully updated

@vitlibar vitlibar changed the title Test for issue #26643 Add synchronization to ProtobufSchemas Dec 13, 2021
@vitlibar vitlibar changed the title Add synchronization to ProtobufSchemas Fix data race in ProtobufSchemas Dec 13, 2021
vitlibar pushed a commit that referenced this pull request Dec 13, 2021
…c00cea7a826b151996d9f5478dc5c

Cherry pick #27822 to 21.8: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 13, 2021
…c00cea7a826b151996d9f5478dc5c

Cherry pick #27822 to 21.9: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 13, 2021
…c00cea7a826b151996d9f5478dc5c

Cherry pick #27822 to 21.3: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 13, 2021
…3c00cea7a826b151996d9f5478dc5c

Cherry pick #27822 to 21.12: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 13, 2021
…3c00cea7a826b151996d9f5478dc5c

Cherry pick #27822 to 21.11: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 13, 2021
…3c00cea7a826b151996d9f5478dc5c

Cherry pick #27822 to 21.10: Fix data race in ProtobufSchemas
alexey-milovidov added a commit that referenced this pull request Dec 15, 2021
Backport #27822 to 21.12: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 16, 2021
Backport #27822 to 21.11: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 16, 2021
Backport #27822 to 21.10: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 16, 2021
Backport #27822 to 21.9: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 16, 2021
Backport #27822 to 21.3: Fix data race in ProtobufSchemas
vitlibar pushed a commit that referenced this pull request Dec 16, 2021
Backport #27822 to 21.8: Fix data race in ProtobufSchemas
@Felixoid Felixoid added the pr-backports-created Backport PRs are successfully created, it won't be processed by CI script anymore label Jul 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-backports-created Backport PRs are successfully created, it won't be processed by CI script anymore pr-must-backport Pull request should be backported intentionally. Use this label with great care! pr-not-for-changelog This PR should not be mentioned in the changelog

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants