0

i am currently developing a app and this app is using action cable for its chat function.

when i try to send a message in ios it freezes 9/10 times this never happens on android or the web version.

i have searched for a solution for my problem.
this is the crash log:

Incident Identifier: B699BD30-807E-43EC-8152-4E91435F48F4
CrashReporter Key:   75b39f33bd7dc7cb96fc0075e524edd53846e22a
Hardware Model:      iPhone7,2
Process:             Business​Building [501]
Path:                /private/var/containers/Bundle/Application/3CD7754A-5B7C-4CCF-83EB-C910EDC644FE/Business​Building.app/Business​Building
Identifier:          nl.zisoo.bb-app
Version:             1.0.0 (1.0.0)
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           nl.zisoo.bb-app [573]


Date/Time:           2017-09-19 10:42:25.1444 +0200
Launch Time:         2017-09-19 10:41:05.1253 +0200
OS Version:          iPhone OS 10.3.2 (14F89)
Report Version:      104

Exception Type:  EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Reason: Namespace SPRINGBOARD, Code 0x8badf00d
Triggered by Thread:  0

Filtered syslog:
None found

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libsystem_kernel.dylib          0x000000018833ce64 __psynch_mutexwait + 8
1   libsystem_pthread.dylib         0x0000000188408b8c _pthread_mutex_lock_wait + 96
2   libsystem_pthread.dylib         0x0000000188408d94 _pthread_mutex_lock_slow + 300
3   WebCore                         0x000000018def2bb0 _WebTryThreadLock(bool) + 52
4   WebCore                         0x000000018def31a0 WebThreadLock + 108
5   UIKit                           0x000000018f4c2b30 -[UIWebDocumentView hasSelection] + 28
6   UIKit                           0x000000018f4c2abc -[UIWebDocumentView webThreadWebViewDidLayout:byScrolling:] + 212
7   WebCore                         0x000000018df0b3a0 WebCore::FrameView::performPostLayoutTasks() + 268
8   WebCore                         0x000000018df073e0 WebCore::FrameView::layout(bool) + 3064
9   WebCore                         0x000000018df51e44 WebCore::Document::updateLayout() + 288
10  WebCore                         0x000000018e232044 WebCore::Document::updateLayoutIgnorePendingStylesheets(WebCore::Document::RunPostLayoutTasks) + 132
11  WebCore                         0x000000018dfdc044 WebCore::Element::scrollTop() + 32
12  WebCore                         0x000000018e68b2c8 WebCore::jsElementScrollTop(JSC::ExecState*, long long, JSC::PropertyName) + 76
13  JavaScriptCore                  0x000000018d249424 llint_slow_path_get_by_id + 1100
14  JavaScriptCore                  0x000000018d9e0e14 llint_entry + 10356
15  JavaScriptCore                  0x000000018d9e4c64 llint_entry + 26308
16  JavaScriptCore                  0x000000018d9e4cc8 llint_entry + 26408
17  JavaScriptCore                  0x000000018d9e4c64 llint_entry + 26308
18  JavaScriptCore                  0x000000018d9e4c64 llint_entry + 26308
19  JavaScriptCore                  0x000000018d9e4c64 llint_entry + 26308
20  JavaScriptCore                  0x000000018d9e4cc8 llint_entry + 26408
21  JavaScriptCore                  0x000000018d9e4cc8 llint_entry + 26408
22  JavaScriptCore                  0x000000018d9de3d8 vmEntryToJavaScript + 264
23  JavaScriptCore                  0x000000018d8c86f8 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 164
24  JavaScriptCore                  0x000000018d255528 JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 416
25  JavaScriptCore                  0x000000018d561b74 JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 164
26  JavaScriptCore                  0x000000018d936bbc JSC::JSJobMicrotask::run(JSC::ExecState*) + 436
27  WebCore                         0x000000018e68529c WebCore::JSDOMWindowMicrotaskCallback::call() + 152
28  WebCore                         0x000000018e031990 WebCore::ActiveDOMCallbackMicrotask::run() + 48
29  WebCore                         0x000000018ea432f4 WebCore::MicrotaskQueue::performMicrotaskCheckpoint() + 100
30  WebCore                         0x000000018dfb2174 WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext*, WebCore::Event*) + 1108
31  WebCore                         0x000000018e2c0b5c WebCore::EventTarget::fireEventListeners(WebCore::Event&, WTF::Vector<WTF::RefPtr<WebCore::RegisteredEventListener>, 1ul, WTF::CrashOnOverflow, 16ul>) + 820
32  WebCore                         0x000000018e2c04d0 WebCore::EventTarget::fireEventListeners(WebCore::Event&) + 236
33  WebCore                         0x000000018e2c03c8 WebCore::EventTarget::dispatchEvent(WebCore::Event&) + 116
34  WebCore                         0x000000018eefb4bc WebCore::WebSocket::didReceiveMessage(WTF::String const&) + 88
35  WebCore                         0x000000018eeff668 WebCore::WebSocketChannel::processFrame() + 4144
36  WebCore                         0x000000018eefdce4 WebCore::WebSocketChannel::processBuffer() + 112
37  WebCore                         0x000000018eefdc5c WebCore::WebSocketChannel::didReceiveSocketStreamData(WebCore::SocketStreamHandle&, char const*, std::optional<unsigned long>) + 448
38  WebCore                         0x000000018ecac130 WebCore::SocketStreamHandleImpl::readStreamCallback(unsigned long) + 512
39  CoreFoundation                  0x000000018928e01c _signalEventSync + 212
40  CoreFoundation                  0x0000000189298d84 _cfstream_solo_signalEventSync + 256
41  CoreFoundation                  0x000000018928db34 _CFStreamSignalEvent + 520
42  CFNetwork                       0x0000000189a60c60 SocketStream::dispatchSignalFromSocketCallbackUnlocked(SocketStreamSignalHolder*) + 64
43  CFNetwork                       0x0000000189a66884 SocketStream::socketCallback(__CFSocket*, unsigned long, __CFData const*, void const*) + 148
44  CFNetwork                       0x0000000189a623c0 SocketStream::_SocketCallBack_stream(__CFSocket*, unsigned long, __CFData const*, void const*, void*) + 88
45  CoreFoundation                  0x00000001892f62e8 __CFSocketPerformV0 + 956
46  CoreFoundation                  0x00000001892f142c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
47  CoreFoundation                  0x00000001892f0d9c __CFRunLoopDoSources0 + 540
48  CoreFoundation                  0x00000001892ee9a8 __CFRunLoopRun + 744
49  CoreFoundation                  0x000000018921eda4 CFRunLoopRunSpecific + 424
50  GraphicsServices                0x000000018ac88074 GSEventRunModal + 100
51  UIKit                           0x000000018f4d9058 UIApplicationMain + 208
52  Business​Building               0x000000010008c4b8 0x100088000 + 17592
53  libdyld.dylib                   0x000000018822d59c start + 4

Thread 1 name:  com.apple.uikit.eventfetch-thread
Thread 1:
0   libsystem_kernel.dylib          0x000000018831f224 mach_msg_trap + 8
1   libsystem_kernel.dylib          0x000000018831f09c mach_msg + 72
2   CoreFoundation                  0x00000001892f0e90 __CFRunLoopServiceMachPort + 192
3   CoreFoundation                  0x00000001892eeae4 __CFRunLoopRun + 1060
4   CoreFoundation                  0x000000018921eda4 CFRunLoopRunSpecific + 424
5   Foundation                      0x0000000189d38d74 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6   Foundation                      0x0000000189d59b44 -[NSRunLoop(NSRunLoop) runUntilDate:] + 96
7   UIKit                           0x000000018fe636a8 -[UIEventFetcher threadMain] + 136
8   Foundation                      0x0000000189e362d8 __NSThread__start__ + 996
9   libsystem_pthread.dylib         0x000000018840568c _pthread_body + 240
10  libsystem_pthread.dylib         0x000000018840559c _pthread_body + 0
11  libsystem_pthread.dylib         0x0000000188402cb4 thread_start + 4

Thread 2 name:  com.apple.NSURLConnectionLoader
Thread 2:
0   libsystem_kernel.dylib          0x000000018831f224 mach_msg_trap + 8
1   libsystem_kernel.dylib          0x000000018831f09c mach_msg + 72
2   CoreFoundation                  0x00000001892f0e90 __CFRunLoopServiceMachPort + 192
3   CoreFoundation                  0x00000001892eeae4 __CFRunLoopRun + 1060
4   CoreFoundation                  0x000000018921eda4 CFRunLoopRunSpecific + 424
5   CFNetwork                       0x0000000189a2adf4 +[NSURLConnection(Loader) _resourceLoadLoop:] + 404
6   Foundation                      0x0000000189e362d8 __NSThread__start__ + 996
7   libsystem_pthread.dylib         0x000000018840568c _pthread_body + 240
8   libsystem_pthread.dylib         0x000000018840559c _pthread_body + 0
9   libsystem_pthread.dylib         0x0000000188402cb4 thread_start + 4

Thread 3:
0   libsystem_kernel.dylib          0x000000018833ce1c __psynch_cvwait + 8
1   libsystem_pthread.dylib         0x0000000188404814 _pthread_cond_wait + 640
2   libc++.1.dylib                  0x0000000187d2dac8 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 56
3   JavaScriptCore                  0x000000018dbd1f94 void std::__1::condition_variable_any::wait<std::__1::unique_lock<bmalloc::Mutex> >(std::__1::unique_lock<bmalloc::Mutex>&) + 112
4   JavaScriptCore                  0x000000018dbd1f08 bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadRunLoop() + 168
5   JavaScriptCore                  0x000000018dbd1de8 std::__1::__shared_ptr_emplace<std::__1::mutex, std::__1::allocator<std::__1::mutex> >::~__shared_ptr_emplace() + 0
6   JavaScriptCore                  0x000000018dbd2098 void* std::__1::__thread_proxy<std::__1::tuple<void (*)(bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*), bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*> >(void*) + 92
7   libsystem_pthread.dylib         0x000000018840568c _pthread_body + 240
8   libsystem_pthread.dylib         0x000000018840559c _pthread_body + 0
9   libsystem_pthread.dylib         0x0000000188402cb4 thread_start + 4

Thread 4 name:  WebThread
Thread 4:
0   libsystem_kernel.dylib          0x000000018833ce1c __psynch_cvwait + 8
1   libsystem_pthread.dylib         0x0000000188404814 _pthread_cond_wait + 640
2   JavaScriptCore                  0x000000018d2258b4 WTF::ThreadCondition::timedWait(WTF::Mutex&, double) + 80
3   JavaScriptCore                  0x000000018dbb8b18 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2256
4   JavaScriptCore                  0x000000018dbb2a90 WTF::LockAlgorithm<unsigned char, (unsigned char)1, (unsigned char)2>::lockSlow(WTF::Atomic<unsigned char>&) + 368
5   JavaScriptCore                  0x000000018d3128ec JSC::JSLockHolder::JSLockHolder(JSC::VM&) + 152
6   WebCore                         0x000000018ec38a98 WebCore::ScheduledAction::executeFunctionInContext(JSC::JSGlobalObject*, JSC::JSValue, WebCore::ScriptExecutionContext&) + 68
7   WebCore                         0x000000018ec388a4 WebCore::ScheduledAction::execute(WebCore::Document&) + 136
8   WebCore                         0x000000018debe998 WebCore::DOMTimer::fired() + 596
9   WebCore                         0x000000018debe5d8 WebCore::ThreadTimers::sharedTimerFiredInternal() + 172
10  WebCore                         0x000000018debe518 WebCore::timerFired(__CFRunLoopTimer*, void*) + 28
11  CoreFoundation                  0x00000001892f1aa4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 28
12  CoreFoundation                  0x00000001892f17a8 __CFRunLoopDoTimer + 856
13  CoreFoundation                  0x00000001892f1068 __CFRunLoopDoTimers + 244
14  CoreFoundation                  0x00000001892eec8c __CFRunLoopRun + 1484
15  CoreFoundation                  0x000000018921eda4 CFRunLoopRunSpecific + 424
16  WebCore                         0x000000018def0608 RunWebThread(void*) + 456
17  libsystem_pthread.dylib         0x000000018840568c _pthread_body + 240
18  libsystem_pthread.dylib         0x000000018840559c _pthread_body + 0
19  libsystem_pthread.dylib         0x0000000188402cb4 thread_start + 4

Thread 5 name:  WebCore: LocalStorage
Thread 5:
0   libsystem_kernel.dylib          0x000000018833ce1c __psynch_cvwait + 8
1   libsystem_pthread.dylib         0x0000000188404814 _pthread_cond_wait + 640
2   JavaScriptCore                  0x000000018d2258b4 WTF::ThreadCondition::timedWait(WTF::Mutex&, double) + 80
3   JavaScriptCore                  0x000000018dbb8b18 WTF::ParkingLot::parkConditionallyImpl(void const*, WTF::ScopedLambda<bool ()> const&, WTF::ScopedLambda<void ()> const&, WTF::TimeWithDynamicClockType const&) + 2256
4   WebKitLegacy                    0x000000018f1601b0 bool WTF::ConditionBase::waitUntil<WTF::Lock>(WTF::Lock&, WTF::TimeWithDynamicClockType const&) + 172
5   WebKitLegacy                    0x000000018f162e48 std::__1::unique_ptr<WTF::Function<void ()>, std::__1::default_delete<WTF::Function<void ()> > > WTF::MessageQueue<WTF::Function<void ()> >::waitForMessageFilteredWithTimeout<WTF::MessageQueue<WTF::Function<void ()> >::waitForMessage()::'lambda'(WTF::Function<void ()> const&)>(WTF::MessageQueueWaitResult&, WTF::MessageQueue<WTF::Function<void ()> >::waitForMessage()::'lambda'(WTF::Function<void ()> const&)&&, WTF::WallTime) + 144
6   WebKitLegacy                    0x000000018f162450 WebCore::StorageThread::threadEntryPoint() + 68
7   JavaScriptCore                  0x000000018d221e88 WTF::threadEntryPoint(void*) + 212
8   JavaScriptCore                  0x000000018d221d98 WTF::wtfThreadEntryPoint(void*) + 24
9   libsystem_pthread.dylib         0x000000018840568c _pthread_body + 240
10  libsystem_pthread.dylib         0x000000018840559c _pthread_body + 0
11  libsystem_pthread.dylib         0x0000000188402cb4 thread_start + 4

Thread 6 name:  com.apple.CFSocket.private
Thread 6:
0   libsystem_kernel.dylib          0x000000018833d23c __select + 8
1   CoreFoundation                  0x00000001892f7cb0 __CFSocketManager + 632
2   libsystem_pthread.dylib         0x000000018840568c _pthread_body + 240
3   libsystem_pthread.dylib         0x000000018840559c _pthread_body + 0
4   libsystem_pthread.dylib         0x0000000188402cb4 thread_start + 4

Thread 7:
0   libsystem_pthread.dylib         0x0000000188402ca8 start_wqthread + 0

Thread 8:
0   libsystem_pthread.dylib         0x0000000188402ca8 start_wqthread + 0

Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000004   x1: 0x0000000000000000   x2: 0x0000000000032f00   x3: 0x0000000000014f7c
    x4: 0x0000000000012068   x5: 0x0000000000000001   x6: 0x0000000174128340   x7: 0x000000016fd744a0
    x8: 0x00000001af70c6ff   x9: 0x0000000000014f58  x10: 0x00000001af70c6f8  x11: 0x0000000000000001
   x12: 0x00032f0000033003  x13: 0x0000000000000002  x14: 0x0000000000000000  x15: 0x0000000000033103
   x16: 0x000000000000012d  x17: 0x000000018922ff58  x18: 0x0000000000000000  x19: 0x00032f0000033103
   x20: 0x00000001af70c6d8  x21: 0x0000000000032f00  x22: 0x0000000000014f7c  x23: 0x00000001af70c6f0
   x24: 0x0000000000014f58  x25: 0x00000001af70c6f8  x26: 0x00000001ae3c374c  x27: 0x0000000000000000
   x28: 0x0000000000000000   fp: 0x000000016fd754c0   lr: 0x0000000188408b8c
    sp: 0x000000016fd75480   pc: 0x000000018833ce64 cpsr: 0x60000000

i have googled the termination reason and it seems that its something about the mainthread but i cant seem to figure out what it is exactly.

the web app runs on ruby on rails and for mobile development i am using vue.js and cordova

Wesley
  • 1
  • At first glance, you've hit the dreaded `0x8badf00d`. This is basically `you put something on the main thread that took too long. Move it to a worker!`. Unfortunately it doesn't produce a log backtrace, so it's difficult for us to say exactly what needs to be moved to it's own worker. – Ohgodwhy Sep 19 '17 at 13:56
  • I built `actioncable` apps, but I never connected them to an `IOS` or `Android` app. I think you should give us more info to solve this problem, given his complexity. What did you figure out in the last 15 hours? Is there some step forward you want to share with us? I believe this is a front end issue. The backend api must be working fine and streaming messages, the question is why is your `frontend` app not appending the messages through the `app/assets/javascripts/channels/messages.js` – Fabrizio Bertoglio Sep 20 '17 at 03:41
  • in the last 15 hours i figured out that it can also crash if it recieves messages. sometimes the 'ios' app does send and recieves messages without any freezes at all thats what makes this so weird. so i think @Ohgodwhy is correct on this matter and should probally look into that. but i would love some more suggestions to try for if that doesnt work out. – Wesley Sep 20 '17 at 06:52

0 Answers0