Skip to content

[Firestore] Crash at firebase::firestore::remote::GrpcStream::MaybeWrite -> grpc_core::Arena::SetContext #15018

Closed
@nezhyborets

Description

@nezhyborets

Description

Hi guys, we're getting such a crash on a clients build and we're unable to debug it on our own. Any idea what that could be? This is happening somewhere around start of using Firestore, maybe around login, but it's hard to say as the crash happens on another thread, so we are unable to track exactly the call that lead to this

Reproducing the issue

Sorry it only happens on the clients build, we can't reproduce it on our side

Firebase SDK Version

11.4.0

Xcode Version

16.2

Installation Method

Zip

Firebase Product(s)

Firestore

Targeted Platforms

iOS

Relevant Log Output

Thread 22 Crashed:
0   MachineControlLib           	       0x10a6b8548 void grpc_core::Arena::SetContext<grpc_core::ServiceConfigCallData>(grpc_core::ServiceConfigCallData*) + 52
1   MachineControlLib           	       0x10a6b8448 grpc_core::ClientChannelServiceConfigCallData::ClientChannelServiceConfigCallData(grpc_core::Arena*) + 72
2   MachineControlLib           	       0x10a6be904 grpc_core::ClientChannelFilter::CallData::ApplyServiceConfigToCallLocked(absl::lts_20240722::StatusOr<grpc_core::RefCountedPtr<grpc_core::ConfigSelector>> const&) + 112
3   MachineControlLib           	       0x10a6bebe8 grpc_core::ClientChannelFilter::CallData::CheckResolution(bool) + 128
4   MachineControlLib           	       0x10a6bfaf0 grpc_core::ClientChannelFilter::FilterBasedCallData::TryCheckResolution(bool) + 28
5   MachineControlLib           	       0x10a6b88d8 grpc_core::ClientChannelFilter::FilterBasedCallData::StartTransportStreamOpBatch(grpc_call_element*, grpc_transport_stream_op_batch*) + 260
6   MachineControlLib           	       0x10a679a10 grpc_call_next_op(grpc_call_element*, grpc_transport_stream_op_batch*) + 68
7   MachineControlLib           	       0x10a806a70 grpc_core::promise_filter_detail::BaseCallData::Flusher::~Flusher() + 588
8   MachineControlLib           	       0x10a80af30 grpc_core::promise_filter_detail::ClientCallData::StartBatch(grpc_transport_stream_op_batch*) + 1100
9   MachineControlLib           	       0x10a732cc8 grpc_core::FilterStackCall::ExecuteBatch(grpc_transport_stream_op_batch*, grpc_closure*)::$_0::__invoke(void*, absl::lts_20240722::Status) + 80
10  MachineControlLib           	       0x10a7177b0 grpc_core::ExecCtx::Flush() + 152
11  MachineControlLib           	       0x10a623e18 grpc_core::ExecCtx::~ExecCtx() + 48
12  MachineControlLib           	       0x10a63aec4 grpc_call_start_batch + 132
13  MachineControlLib           	       0x10a532020 grpc::internal::CallOpSet<grpc::internal::CallOpSendInitialMetadata, grpc::internal::CallOpSendMessage, grpc::internal::CallOpClientSendClose, grpc::internal::CallNoOp<4>, grpc::internal::CallNoOp<5>, grpc::internal::CallNoOp<6>>::ContinueFillOpsAfterInterception() + 184
14  MachineControlLib           	       0x10a5300dc grpc::ClientAsyncReaderWriter<grpc::ByteBuffer, grpc::ByteBuffer>::Write(grpc::ByteBuffer const&, grpc::WriteOptions, void*) + 136
15  MachineControlLib           	       0x10a536234 firebase::firestore::remote::GrpcStream::MaybeWrite(absl::lts_20240722::optional<firebase::firestore::remote::internal::BufferedWrite>) + 192
16  MachineControlLib           	       0x10a536130 firebase::firestore::remote::GrpcStream::Write(grpc::ByteBuffer&&) + 56
17  MachineControlLib           	       0x10a5f84a4 firebase::firestore::remote::WriteStream::WriteHandshake() + 216
18  MachineControlLib           	       0x10a5cb5a8 firebase::firestore::remote::Stream::OnStreamStart() + 68
19  MachineControlLib           	       0x10a5cb4fc firebase::firestore::remote::Stream::ResumeStartWithCredentials(firebase::firestore::util::StatusOr<firebase::firestore::credentials::AuthToken> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) + 196
20  MachineControlLib           	       0x10a5ccb94 std::__1::__function::__func<firebase::firestore::remote::Stream::RequestCredentials()::$_0::operator()(absl::lts_20240722::optional<firebase::firestore::util::StatusOr<firebase::firestore::credentials::AuthToken>> const&, absl::lts_20240722::optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>> const&) const::'lambda'(), std::__1::allocator<firebase::firestore::remote::Stream::RequestCredentials()::$_0::operator()(absl::lts_20240722::optional<firebase::firestore::util::StatusOr<firebase::firestore::credentials::AuthToken>> const&, absl::lts_20240722::optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>> const&) const::'lambda'()>, void ()>::operator()() + 72
21  MachineControlLib           	       0x10a4a910c firebase::firestore::util::AsyncQueue::ExecuteBlocking(std::__1::function<void ()> const&) + 68
22  MachineControlLib           	       0x10a5dd138 firebase::firestore::util::Task::ExecuteAndRelease() + 188
23  libdispatch.dylib             	       0x19384e584 _dispatch_client_callout + 16
24  libdispatch.dylib             	       0x19383d2d0 _dispatch_lane_serial_drain + 740
25  libdispatch.dylib             	       0x19383ddac _dispatch_lane_invoke + 388
26  libdispatch.dylib             	       0x1938481dc _dispatch_root_queue_drain_deferred_wlh + 292
27  libdispatch.dylib             	       0x193847a60 _dispatch_workloop_worker_thread + 540
28  libsystem_pthread.dylib       	       0x215fb8a0c _pthread_wqthread + 292
29  libsystem_pthread.dylib       	       0x215fb8aac start_wqthread + 8

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions