firebase-ios-sdk: FIRESTORE INTERNAL ASSERTION FAILED: enterCheckedOperation may not be called when an operation is in progress

[READ] Step 1: Are you in the right place?

  • For issues or feature requests related to the code in this repository file a Github issue.
    • If this is a feature request make sure the issue title starts with “FR:”.
  • For general technical questions, post a question on StackOverflow with the firebase tag.
  • For general Firebase discussion, use the firebase-talk google group.
  • For help troubleshooting your application that does not fall under one of the above categories, reach out to the personalized Firebase support channel.

[REQUIRED] Step 2: Describe your environment

  • Xcode version: 9.2
  • Firebase SDK version: 4.11.0
  • Firebase Component: Firestore (Auth, Core, Database, Firestore, Messaging, Storage, etc)
  • Component version: 0.10.4

[REQUIRED] Step 3: Describe the problem

Steps to reproduce:

What happened? How can we make the problem occur?

*** Assertion failure in -[FSTDispatchQueue enterCheckedOperation:], third_party/firebase/ios/Source/Firestore/Source/Util/FSTDispatchQueue.mm:192
2018-03-28 10:03:30.389690+0700 BusinessEngine[16302:12429566] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'FIRESTORE INTERNAL ASSERTION FAILED: enterCheckedOperation may not be called when an operation is in progress'
*** First throw call stack:
(
	0   CoreFoundation                      0x000000010e5f612b __exceptionPreprocess + 171
	1   libobjc.A.dylib                     0x000000010d0daf41 objc_exception_throw + 48
	2   CoreFoundation                      0x000000010e5fb2f2 +[NSException raise:format:arguments:] + 98
	3   Foundation                          0x000000010cb7bd69 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 193
	4   BusinessEngine                      0x0000000103b83460 -[FSTDispatchQueue enterCheckedOperation:] + 270
	5   libdispatch.dylib                   0x000000010f4c32f7 _dispatch_call_block_and_release + 12
	6   libdispatch.dylib                   0x000000010f4c433d _dispatch_client_callout + 8
	7   libdispatch.dylib                   0x000000010f4ca754 _dispatch_continuation_pop + 967
	8   libdispatch.dylib                   0x000000010f4c8b85 _dispatch_async_redirect_invoke + 780
	9   libdispatch.dylib                   0x000000010f4d0102 _dispatch_root_queue_drain + 772
	10  libdispatch.dylib                   0x000000010f4cfda0 _dispatch_worker_thread3 + 132
	11  libsystem_pthread.dylib             0x000000010f98f1ca _pthread_wqthread + 1387
	12  libsystem_pthread.dylib             0x000000010f98ec4d start_wqthread + 13
)
libc++abi.dylib: terminating with uncaught exception of type NSException

Relevant Code:

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 22 (10 by maintainers)

Most upvoted comments

I’ll create a minimal example project if it would help (?) or maybe I could provide my project which is affected by this.

@olejnjak To give a progress update, we’ve been able to identify the issue. It’s triggered by configuring FirestoreSettings to use a concurrent queue, so for a quick workaround, you could change that to use a serial queue (which is the default). I’ll continue working on fixing this and will post an update when I have it.

Based on our current line of investigation, yes that seems to be the case, but we haven’t yet confirmed one way or the other.

By the problem I mean the “FIRESTORE INTERNAL ASSERTION FAILED: enterCheckedOperation may not be called when an operation is in progress” exception 😃