-
Notifications
You must be signed in to change notification settings - Fork 84
Closed
Description
0 libsystem_kernel.dylib ___pthread_kill
1 libsystem_pthread.dylib _pthread_kill
2 libsystem_c.dylib _abort
3 Lyft Envoy::Runtime::LoaderImpl::snapshot() (Lyft)
4 Lyft Envoy::Upstream::ResourceManagerImpl::ResourceImpl::max() (Lyft)
5 Lyft Envoy::Upstream::ResourceManagerImpl::ResourceImpl::decBy(unsigned long long) (Lyft)
6 Lyft Envoy::Extensions::HttpFilters::DynamicForwardProxy::ProxyFilter::~ProxyFilter() (Lyft)
7 Lyft Envoy::Http::ConnectionManagerImpl::ActiveStreamDecoderFilter::~ActiveStreamDecoderFilter() (Lyft)
8 Lyft Envoy::Http::ConnectionManagerImpl::ActiveStream::~ActiveStream() (Lyft)
9 Lyft Envoy::Http::ConnectionManagerImpl::ActiveStream::~ActiveStream() (Lyft)
10 Lyft Envoy::Http::ConnectionManagerImpl::~ConnectionManagerImpl() (Lyft)
11 Lyft non-virtual thunk to Envoy::Http::ConnectionManagerImpl::~ConnectionManagerImpl() (Lyft)
12 Lyft Envoy::Server::HttpApiListener::~HttpApiListener() (Lyft)
13 Lyft Envoy::Server::ListenerManagerImpl::~ListenerManagerImpl() (Lyft)
14 Lyft Envoy::Server::ListenerManagerImpl::~ListenerManagerImpl() (Lyft)
15 Lyft Envoy::Server::InstanceImpl::~InstanceImpl() (Lyft)
16 Lyft Envoy::Server::InstanceImpl::~InstanceImpl() (Lyft)
17 Lyft Envoy::MainCommonBase::~MainCommonBase() (Lyft)
18 Lyft Envoy::Engine::run(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> >) (Lyft)
19 Lyft void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, envoy_status_t (Envoy::Engine::*)(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> >), Envoy::Engine*, 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> > > >(void*) (Lyft)
20 libsystem_pthread.dylib __pthread_start```
The assertion tripped is https://github.com/envoyproxy/envoy/blob/ea65c4e935e6af4eef75d39c1e03b9a64ac30d70/source/common/runtime/runtime_impl.cc#L634
This is happening because the ApiListener is being destroyed after the tls has been cleaned up for the main thread, and the assertion relies on TLS size being non-zero to define the thread as registered.
Reactions are currently unavailable