Skip to content

'com.google.firebase.firestore', stop reason = EXC_BAD_ACCESS (code=1, address=0x11a7f8017) #8664

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
miracle101000 opened this issue Sep 16, 2021 · 9 comments
Assignees

Comments

@miracle101000
Copy link

miracle101000 commented Sep 16, 2021

[REQUIRED] Step 1: Describe your environment

  • Xcode version: 12.3 (12C33)
  • Firebase SDK version: 8.5.0
  • Installation method: CocoaPods
  • Firebase Component: Cloud firestore

App crashes when trying to open a page with a list of query snapshots

Error message
*thread#51, queue = 'com.google.firebase.firestore', stop reason = EXC_BAD_ACCESS (code=1, address=0x11a7f8017)
frame #0: 0x0000000107a8f6f0 FirebaseFirestore std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__is_long(this="") const at string:1420:39
1417
1418 _LIBCPP_INLINE_VISIBILITY
1419 bool __is_long() const _NOEXCEPT
-> 1420 {return bool(_r.first().__s._size & __short_mask);}
^
1421
1422 #if _LIBCPP_DEBUG_LEVEL >= 2
1423

Screen Shot 2021-09-17 at 6 53 46 AM

@google-oss-bot
Copy link

I found a few problems with this issue:

  • I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.
  • This issue does not seem to follow the issue template. Make sure you provide all the required information.

@morganchen12
Copy link
Contributor

Hi @miracle101000, the iOS SDK's latest version is 8.7.0, not 9.x. Can you share your Podfile.lock?

@miracle101000
Copy link
Author

@morganchen12 i have changed it.

@dconeybe
Copy link
Contributor

Can you also show the full stack trace?

@miracle101000
Copy link
Author

miracle101000 commented Sep 17, 2021

@dconeybe

* thread#27, queue = 'com.google.firebase.firestore', stop reason = EXC_BAD_ACCESS (code=1, address=0x657269665f657378)
  * frame#0: 0x0000000107987518 FirebaseFirestorestd::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__is_long(this="") const at string:1420:39
    frame#1: 0x0000000107981840 FirebaseFirestorestd::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::size(this="") const at string:947:17
    frame#2: 0x000000010799793c FirebaseFirestorestd::__1::enable_if<__can_be_converted_to_string_view<char, std::__1::char_traits<char>, std::__1::basic_string_view<char, std::__1::char_traits<char> > >::value, int>::type std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::compare<std::__1::basic_string_view<char, std::__1::char_traits<char> > >(this="", __t=0x000000016c7777b0) const at string:3696:23
    frame#3: 0x00000001079d0c14 FirebaseFirestorestd::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::compare(this="", __str="ChatRoom") const at string:3714:12
    frame#4: 0x00000001079d0bc4 FirebaseFirestorefirebase::firestore::util::Comparator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::Compare(this=0x000000016c777863, left="", right="ChatRoom") const at comparison.cc:39:39
    frame#5: 0x000000010795e9a0 FirebaseFirestorefirebase::firestore::util::ComparisonResult firebase::firestore::util::Compare<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, firebase::firestore::util::Comparator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >(left="", right="ChatRoom", comparator=0x000000016c777863) at comparison.h:204:21
    frame#6: 0x000000010795e84c FirebaseFirestorefirebase::firestore::util::ComparisonResult firebase::firestore::util::CompareContainer<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> > > > >(lhs=size=0, rhs=size=4) at comparison.h:295:28
    frame#7: 0x0000000107a08bd0 FirebaseFirestorefirebase::firestore::model::impl::BasePath<firebase::firestore::model::ResourcePath>::CompareTo(this=0x0000000281e5c768, rhs=0x0000000281fbada8) const at base_path.h:154:12
    frame#8: 0x0000000107a08b4c FirebaseFirestorefirebase::firestore::model::DocumentKey::CompareTo(this=0x000000015c276dd8, other=0x0000000156076418) const at document_key.cc:79:17
    frame#9: 0x0000000107971f64 FirebaseFirestorefirebase::firestore::util::ComparisonResult firebase::firestore::util::impl::CompareImpl<firebase::firestore::model::DocumentKey, void>(lhs=0x000000015c276dd8, rhs=0x0000000156076418, (null)=CompareChoice<1> @ 0x000000016c77791f) at comparison.h:247:14
    frame#10: 0x0000000107970570 FirebaseFirestorefirebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey>::Compare(this=0x000000016c778590, lhs=0x000000015c276dd8, rhs=0x0000000156076418) const at comparison.h:262:12
    frame#11: 0x0000000107c04bec FirebaseFirestore`firebase::firestore::immutable::impl::ArraySortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> >::find(this=0x000000016c777990, kv=0x0000000156076418) const::'lambda'(std::__1::pair<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument> const&)::operator()(std::__1::pair<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument> const&) const at array_sorted_map.h:243:37
    frame#12: 0x0000000107c04b94 FirebaseFirestorefirebase::firestore::model::DocumentKey std::__1::find_if<std::__1::pair<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument> const*, firebase::firestore::immutable::impl::ArraySortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> >::find(firebase::firestore::model::DocumentKey const&) const::'lambda'(std::__1::pair<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument> const&)>(__first=0x0000000156076418, __last=0x00000001560765a8, __pred=(anonymous class) @ 0x000000016c777990) at algorithm:933:13
    frame#13: 0x0000000107c04b50 FirebaseFirestorefirebase::firestore::immutable::impl::ArraySortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> >::find(this=0x000000016c778580, key=0x000000015c276dd8) const at array_sorted_map.h:242:12
    frame#14: 0x0000000107c04928 FirebaseFirestorefirebase::firestore::immutable::impl::ArraySortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> >::erase(this=0x000000016c778580, key=0x000000015c276dd8) const at array_sorted_map.h:216:26
    frame#15: 0x0000000107bf3f10 FirebaseFirestorefirebase::firestore::immutable::SortedMap<firebase::firestore::model::DocumentKey, firebase::firestore::model::MutableDocument, firebase::firestore::util::Comparator<firebase::firestore::model::DocumentKey> >::erase(this=0x000000016c778578, key=0x000000015c276dd8) const at sorted_map.h:213:33
    frame#16: 0x0000000107bf3c28 FirebaseFirestorefirebase::firestore::local::LevelDbRemoteDocumentCache::GetAllExisting(this=0x00000002811960c0, keys=0x000000016c778120) at leveldb_remote_document_cache.cc:179:19
    frame#17: 0x0000000107bf4468 FirebaseFirestorefirebase::firestore::local::LevelDbRemoteDocumentCache::GetMatching(this=0x00000002811960c0, query=0x000000016c77a070, since_read_time=0x000000016c778970) at leveldb_remote_document_cache.cc:222:40
    frame#18: 0x0000000107c2770c FirebaseFirestorefirebase::firestore::local::LocalDocumentsView::GetDocumentsMatchingCollectionQuery(this=0x00000002811964e0, query=0x000000016c77a070, since_read_time=0x000000016c778970) at local_documents_view.cc:146:31
    frame#19: 0x0000000107c27168 FirebaseFirestorefirebase::firestore::local::LocalDocumentsView::GetDocumentsMatchingQuery(this=0x00000002811964e0, query=0x000000016c77a070, since_read_time=0x000000016c778970) at local_documents_view.cc:102:12
    frame#20: 0x0000000107d44ad4 FirebaseFirestorefirebase::firestore::local::QueryEngine::GetDocumentsMatchingQuery(this=0x000000028132fe00, query=0x000000016c77a070, last_limbo_free_snapshot_version=0x000000016c778970, remote_keys=0x000000016c778ae0) at query_engine.cc:77:30
    frame#21: 0x0000000107c72cd8 FirebaseFirestorefirebase::firestore::local::LocalStore::ExecuteQuery(this=0x000000016c778e58)::$_14::operator()() const at local_store.cc:484:51
    frame#22: 0x0000000107c72ab4 FirebaseFirestorestd::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(this=0x000000016c778e00)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()::operator()() at persistence.h:154:49
    frame #23: 0x0000000107c72a58 FirebaseFirestore`decltype(__f=0x000000016c778e00)::$_14>(fp)(std::__1::forward<std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()&>(fp0)...)) std::__1::__invoke<std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()&>(firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14&&, std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()&...) at type_traits:3545:1
    frame #24: 0x0000000107c72a0c FirebaseFirestore`void std::__1::__invoke_void_return_wrapper<void>::__call<std::__1::enable_if<!(__args=0x000000016c778e00))>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()&>(firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14&&...) at __functional_base:348:9
    frame #25: 0x0000000107c729e4 FirebaseFirestore`std::__1::__function::__alloc_func<std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'(), std::__1::allocator<std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()>, void ()>::operator(this=0x000000016c778e00)() at functional:1546:16
    frame #26: 0x0000000107c71434 FirebaseFirestore`std::__1::__function::__func<std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'(), std::__1::allocator<std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14)::'lambda'()>, void ()>::operator(this=0x000000016c778df8)() at functional:1720:12
    frame #27: 0x00000001079531f8 FirebaseFirestore`std::__1::__function::__value_func<void ()>::operator(this=0x000000016c778df8)() const at functional:1873:16
    frame #28: 0x0000000107950244 FirebaseFirestore`std::__1::function<void ()>::operator(this=0x000000016c778df8)() const at functional:2548:12
    frame #29: 0x0000000107bec850 FirebaseFirestore`firebase::firestore::local::LevelDbPersistence::RunInternal(this=0x00000002823201b0, label=(ptr_ = "ExecuteQuery", length_ = 12), block=function<void ()> @ 0x000000016c778df8)>) at leveldb_persistence.cc:264:3
    frame #30: 0x0000000107c3c7ec FirebaseFirestore`std::__1::enable_if<!(std::is_same<void, decltype(fp0())>::value), decltype(fp0())>::type firebase::firestore::local::Persistence::Run<firebase::firestore::local::LocalStore::ExecuteQuery(this=0x00000002823201b0, label=(ptr_ = "ExecuteQuery", length_ = 12), block=(anonymous class) @ 0x000000016c778e58)::$_14>(absl::lts_2020_02_25::string_view, firebase::firestore::local::LocalStore::ExecuteQuery(firebase::firestore::core::Query const&, bool)::$_14) at persistence.h:154:5
    frame #31: 0x0000000107c3c73c FirebaseFirestore`firebase::firestore::local::LocalStore::ExecuteQuery(this=0x0000000282e09a40, query=0x000000016c77a070, use_previous_results=true) at local_store.cc:473:24
    frame #32: 0x0000000107ddb26c FirebaseFirestore`firebase::firestore::core::SyncEngine::InitializeViewAndComputeSnapshot(this=0x00000001568b94a0, query=0x000000016c77a070, target_id=234) at sync_engine.cc:127:21
    frame #33: 0x0000000107ddb028 FirebaseFirestore`firebase::firestore::core::SyncEngine::Listen(this=0x00000001568b94a0, query=Query @ 0x000000016c77a070) at sync_engine.cc:113:7
    frame #34: 0x0000000107a459d4 FirebaseFirestore`firebase::firestore::core::EventManager::AddQueryListener(this=0x0000000283a3f2c0, listener=std::__1::shared_ptr<firebase::firestore::core::QueryListener>::element_type @ 0x00000001568b1d28 strong=4 weak=1) at event_manager.cc:60:49
    frame #35: 0x0000000107adc904 FirebaseFirestore`firebase::firestore::core::FirestoreClient::ListenToQuery(this=0x00000002811346c8)::$_10::operator()() const at firestore_client.cc:368:21
    frame #36: 0x0000000107adc884 FirebaseFirestore`decltype(__f=0x00000002811346c8)::$_10&>(fp)()) std::__1::__invoke<firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10&>(firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10&) at type_traits:3545:1
    frame #37: 0x0000000107adc838 FirebaseFirestore`void std::__1::__invoke_void_return_wrapper<void>::__call<firebase::firestore::core::FirestoreClient::ListenToQuery(__args=0x00000002811346c8)::$_10&>(firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10&) at __functional_base:348:9
    frame #38: 0x0000000107adc810 FirebaseFirestore`std::__1::__function::__alloc_func<firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10, std::__1::allocator<firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10>, void ()>::operator(this=0x00000002811346c8)() at functional:1546:16
    frame #39: 0x0000000107adb188 FirebaseFirestore`std::__1::__function::__func<firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10, std::__1::allocator<firebase::firestore::core::FirestoreClient::ListenToQuery(firebase::firestore::core::Query, firebase::firestore::core::ListenOptions, std::__1::shared_ptr<firebase::firestore::core::EventListener<firebase::firestore::core::ViewSnapshot> >&&)::$_10>, void ()>::operator(this=0x00000002811346c0)() at functional:1720:12
    frame #40: 0x00000001079531f8 FirebaseFirestore`std::__1::__function::__value_func<void ()>::operator(this=0x0000000281e5ed40)() const at functional:1873:16
    frame #41: 0x0000000107950244 FirebaseFirestore`std::__1::function<void ()>::operator(this=0x0000000281e5ed40)() const at functional:2548:12
    frame #42: 0x0000000107950204 FirebaseFirestore`firebase::firestore::util::AsyncQueue::ExecuteBlocking(this=0x0000000283f31800, operation=0x0000000281e5ed40)> const&) at async_queue.cc:89:3
    frame #43: 0x0000000107955c24 FirebaseFirestore`firebase::firestore::util::AsyncQueue::Wrap(this=0x0000000281e5ed38)> const&)::$_0::operator()() const at async_queue.cc:144:36
    frame #44: 0x0000000107955be4 FirebaseFirestore`decltype(__f=0x0000000281e5ed38)> const&)::$_0&>(fp)()) std::__1::__invoke<firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0&>(firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0&) at type_traits:3545:1
    frame #45: 0x0000000107955b98 FirebaseFirestore`void std::__1::__invoke_void_return_wrapper<void>::__call<firebase::firestore::util::AsyncQueue::Wrap(__args=0x0000000281e5ed38)> const&)::$_0&>(firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0&) at __functional_base:348:9
    frame #46: 0x0000000107955b70 FirebaseFirestore`std::__1::__function::__alloc_func<firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0, std::__1::allocator<firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0>, void ()>::operator(this=0x0000000281e5ed38)() at functional:1546:16
    frame #47: 0x0000000107954548 FirebaseFirestore`std::__1::__function::__func<firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0, std::__1::allocator<firebase::firestore::util::AsyncQueue::Wrap(std::__1::function<void ()> const&)::$_0>, void ()>::operator(this=0x0000000281e5ed30)() at functional:1720:12
    frame #48: 0x00000001079531f8 FirebaseFirestore`std::__1::__function::__value_func<void ()>::operator(this=0x00000002824260e0)() const at functional:1873:16
    frame #49: 0x0000000107950244 FirebaseFirestore`std::__1::function<void ()>::operator(this= Lambda in File async_queue.cc at Line 144)() const at functional:2548:12
    frame #50: 0x0000000107e23424 FirebaseFirestore`firebase::firestore::util::Task::ExecuteAndRelease(this=0x0000000282426040) at task.cc:102:9
    frame #51: 0x0000000107a55160 FirebaseFirestore`firebase::firestore::util::ExecutorLibdispatch::InvokeAsync(raw_task=0x0000000282426040) at executor_libdispatch.mm:237:9
    frame #52: 0x000000010e5d95f0 libdispatch.dylib`_dispatch_client_callout + 20
    frame #53: 0x000000010e5e0fa8 libdispatch.dylib`_dispatch_lane_serial_drain + 736
    frame #54: 0x000000010e5e1cb4 libdispatch.dylib`_dispatch_lane_invoke + 448
    frame #55: 0x000000010e5ede38 libdispatch.dylib`_dispatch_workloop_worker_thread + 1520
    frame #56: 0x00000001d3db8908 libsystem_pthread.dylib`_pthread_wqthread + 276

@miracle101000
Copy link
Author

Screen Shot 2021-09-18 at 3 14 55 AM

@dconeybe
Copy link
Contributor

Good news. This has already been reported (#8607) and fixed (#8610).

@miracle101000
Copy link
Author

@dconeybe Thanks i will check it out

@miracle101000
Copy link
Author

For future purposes,
From #8610 and #8607 I understood that there was some sort of memory corruption and I believe this occurred because of multiple hot restarts that I did repeatedly within little time difference (Flutter ios,).

In summary, I just deleted the app from my ios device, rebuilt it, and reinstalled it then everything worked fine.

@firebase firebase locked and limited conversation to collaborators Oct 18, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

6 participants