We have seen intermittent crashes in HTTPDataLoader.fetch, while writing a response to the dataLoadersMap dictionary. A cursory inspection of the code in HTTPDataLoader makes it look like this dictionary is not protected by atomic access, but it is being accessed (both read from and written to) from multiple threads. The access is inside an operation added to the session's delegate queue, but this queue is concurrent. We believe this may be why we are seeing intermittent crashes in this area.
Bug Report
Summary
We have seen intermittent crashes in
HTTPDataLoader.fetch
, while writing a response to the dataLoadersMap dictionary. A cursory inspection of the code inHTTPDataLoader
makes it look like this dictionary is not protected by atomic access, but it is being accessed (both read from and written to) from multiple threads. The access is inside an operation added to the session's delegate queue, but this queue is concurrent. We believe this may be why we are seeing intermittent crashes in this area.