iOS Crash on NSMapTable { } count underflow

5927
6
05-19-2016 01:06 AM
marius
by
New Contributor III

Hi,

Do you have any suggestions on where to start to look for the following crash:

-[AGSNSURLSessionDemultiplexer URLSession:task:didCompleteWithError:]
 -[NSMapTable NSMapTable { } ] count underflow

The full stack trace is:

Fatal Exception: NSInternalInconsistencyException
0  CoreFoundation                 0x1810e2e38 __exceptionPreprocess
1  libobjc.A.dylib                0x180747f80 objc_exception_throw
2  CoreFoundation                 0x1810e2d80 -[NSException initWithCoder:]
3  Foundation                     0x181a94acc -[NSConcreteMapTable raiseCountUnderflowException]
4  Foundation                     0x1819e9470 -[NSConcreteMapTable rehashAround:]
5  Tablet CMD                     0x1003f80c8 -[AGSNSURLSessionDemultiplexer URLSession:task:didCompleteWithError:]
6  CFNetwork                      0x1817f0924 __51-[NSURLSession delegate_task:didCompleteWithError:]_block_invoke170
7  Foundation                     0x181a9c510 __NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK__
8  Foundation                     0x1819ee900 -[NSBlockOperation main]
9  Foundation                     0x1819deed8 -[__NSOperationInternal _start:]
10 Foundation                     0x181a9e904 __NSOQSchedule_f
11 libdispatch.dylib              0x180b2d47c _dispatch_client_callout
12 libdispatch.dylib              0x180b394c0 _dispatch_queue_drain
13 libdispatch.dylib              0x180b30f80 _dispatch_queue_invoke
14 libdispatch.dylib              0x180b3b390 _dispatch_root_queue_drain
15 libdispatch.dylib              0x180b3b0b0 _dispatch_worker_thread3
16 libsystem_pthread.dylib        0x180d45470 _pthread_wqthread
17 libsystem_pthread.dylib        0x180d45020 start_wqthread

Unfortunately, I don't have any steps to reproduce these, as I got them from Crashlytics.

Thank you,

Marius

Tags (1)
0 Kudos
6 Replies
marius
by
New Contributor III

I did manage to get this crash happening on my system once. It seems that it crashes when the AGSMapView is deallocated (once you leave that view).

It may be possible that I'm clearing up some resources and forget about others. Is there a way to "cancel all operations" for AGSMapView?

0 Kudos
RyanOlson1
Esri Contributor

Marius,

This is a threading bug in some of the ArcGIS for iOS runtime code that makes network requests. This bug will be fixed in our next release.

Thank you

0 Kudos
NikolayYekimov1
New Contributor III

In which version should we expect the fix?

0 Kudos
RyanOlson1
Esri Contributor

It is fixed now in version 100.0.0, which was recently released in November.

0 Kudos
NikolayYekimov1
New Contributor III

What's about 10.2.x branch? We don't want to migrate to 100.x so do you have plans to support 10.2.x?

0 Kudos
DiveshGoyal
Esri Regular Contributor

We don't have any plans to fix this in 10.2.x. We made a number of changes to our networking stack in v100.0 and this was fixed as part of that larger effort. You can contact Esri Support to request a patch for 10.2.x but upgrading to v100 will probably be the fastest way to proceed