Closed Redth closed 6 years ago
@morten-krogh can you take a look at that log - looks like something internal to the sync worker?
Yes, it is internal to the Sync client. It would be very interesting if we could get the Realm on which this happens. That is probably not possible. But we can look more closely at the parts of the code around which this happens to see what the possible causes could be.
But without the Realm, it will be hard to know.
Thanks for reporting this issue.
@Redth do you have any insights into when that is happening and if it has any long-lasting effect - e.g. corruption/sync stops working for that user/something else? Morten and the sync team will investigate it, but any info you can provide will greatly help and most likely speed up the resolution of the problem.
I don't have the Realm available as my crash report does not include which user it belongs to. In the future i'm hoping to log user identifiers with crashes so maybe i have a hope of grabbing their realm from the server (although perhaps you are more interested in the client side realm).
Unfortunately I haven't reproduced this crash myself. It does seem to occur on iPhone and iPad devices, and I'm seeing from version 9.3.5 up to 10.3.2.
I've had 28 crashes from this in the last 5 days, so it's by far my biggest cause of crashes on iOS currently...
Sorry I don't have more info!
This is still a fairly significant issue for me. It's my biggest crash causer on iOS right now:
Here's another raw crash log:
Incident Identifier: 4810d880-ff65-490c-8026-9d1d2e9aacd0
CrashReporter Key: c25a4f60-a1dd-4e07-b6a9-2ffeebc5b9dd
Hardware Model: iPad3,4
Process: com.troublefreep [2009]
Path: /var/containers/Bundle/Application/AF9646EB-4088-48E3-A02C-A5780403516B/com.troublefreepool.poolmath.app/com.troublefreepool.poolmath
Identifier: com.troublefreepool.poolmath
Version: 131 (213)
Code Type: armv7s
Parent Process: ??? [1]
Date/Time: 2017-07-18T01:31:59.744Z
Launch Time: 2017-07-18T01:21:01.281Z
OS Version: iPhone OS 10.3.2 (14F89)
Report Version: 104
Exception Type: SIGABRT
Exception Codes: #0 at 0x1b08dacc
Crashed Thread: 9
Thread 9 Crashed:
0 libsystem_kernel.dylib 0x1b08dacc __pthread_kill + 8
1 libsystem_c.dylib 0x1b02295b abort + 106
2 com.troublefreepool.poolmath 0x01613bc9 please_report_this_error_to_help_at_realm_dot_io + 6
3 com.troublefreepool.poolmath 0x01614153 realm::util::terminate_internal(std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 408
4 com.troublefreepool.poolmath 0x0161432f realm::util::terminate(char const*, char const*, long, std::initializer_list<realm::util::Printable>&&) + 412
5 com.troublefreepool.poolmath 0x015eb7a1 (anonymous namespace)::HistoryImpl::do_find_history_entry(unsigned long long, unsigned long long, unsigned long long, bool, realm::sync::HistoryEntry&, realm::util::Optional<std::__1::unique_ptr<char [], std::__1::default_delete<char []> >&>) const + 966
6 com.troublefreepool.poolmath 0x015e63d9 (anonymous namespace)::HistoryImpl::find_history_entry_for_upload(unsigned long long, unsigned long long, realm::sync::HistoryEntry&, std::__1::unique_ptr<char [], std::__1::default_delete<char []> >&) const + 246
7 com.troublefreepool.poolmath 0x015f6779 (anonymous namespace)::SessionImpl::send_upload_message() + 218
8 com.troublefreepool.poolmath 0x015f5769 (anonymous namespace)::Connection::send_next_message() + 658
9 com.troublefreepool.poolmath 0x015f53b1 (anonymous namespace)::Connection::enlist_to_send((anonymous namespace)::SessionImpl*) + 1674
10 com.troublefreepool.poolmath 0x0160a27b realm::util::network::Service::PostOper<(anonymous namespace)::SessionImpl::nonsync_transact_notify(unsigned long long)::$_4>::recycle_and_execute() + 356
11 com.troublefreepool.poolmath 0x015ab36b realm::util::network::Service::Impl::run() + 196
12 com.troublefreepool.poolmath 0x015eedd1 realm::sync::Client::run() + 378
13 com.troublefreepool.poolmath 0x0154e987 std::__1::__thread_proxy<std::__1::tuple<realm::_impl::SyncClient::SyncClient(std::__1::unique_ptr<realm::util::Logger, std::__1::default_delete<realm::util::Logger> >, realm::sync::Client::ReconnectMode)::'lambda'()> >(void*, void*) + 160
14 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
15 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
16 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 0:
0 CoreFoundation 0x1b9174cc -[NSMutableOrderedSet addObjectsFromOrderedSet:range:] + 95572
1 com.troublefreepool.poolmath 0x00b55c10 wrapper_managed_to_native_ObjCRuntime_Messaging_objc_msgSend_intptr_intptr_intptr_intptr_bool (<unknown>:1)
2 com.troublefreepool.poolmath 0x00ba85f4 Xamarin_iOS_Foundation_NSObject_BeginInvokeOnMainThread_System_Action (NSObject2.cs:548)
3 com.troublefreepool.poolmath 0x0055512c Xamarin_Forms_Platform_iOS_Xamarin_Forms_Forms_IOSPlatformServices_BeginInvokeOnMainThread_System_Action (C:\BuildAgent3\work\ca3766cfc22354a1\Xamarin.Forms.Platform.iOS\Forms.cs:134)
4 com.troublefreepool.poolmath 0x0063677c Xamarin_Forms_Core_Xamarin_Forms_Device_BeginInvokeOnMainThread_System_Action + 74
5 com.troublefreepool.poolmath 0x00622504 Xamarin_Forms_Core_Xamarin_Forms_BindingExpression_BindingExpressionPart_PropertyChanged_object_System_ComponentModel_PropertyChangedEventArgs + 306
6 com.troublefreepool.poolmath 0x00622120 Xamarin_Forms_Core_Xamarin_Forms_BindingExpression_WeakPropertyChangedProxy_OnPropertyChanged_object_System_ComponentModel_PropertyChangedEventArgs + 78
7 com.troublefreepool.poolmath 0x0092ac18 System_wrapper_delegate_invoke__Module_invoke_void_object_PropertyChangedEventArgs_object_System_ComponentModel_PropertyChangedEventArgs + 118
8 com.troublefreepool.poolmath 0x000e86e4 com_troublefreepool_poolmath_TroubleFreePool_BaseViewModel_NotifyPropertyChanged_string (<unknown>:96)
9 com.troublefreepool.poolmath 0x000e61c4 com_troublefreepool_poolmath_TroubleFreePool_FreeChlorineAdviceViewModel_NotifyAllProps (<unknown>:162)
10 com.troublefreepool.poolmath 0x000e6b38 com_troublefreepool_poolmath_TroubleFreePool_FreeChlorineAdviceViewModel___ctorb__0_0_object_System_ComponentModel_PropertyChangedEventArgs (<unknown>:19)
11 com.troublefreepool.poolmath 0x0092ac18 System_wrapper_delegate_invoke__Module_invoke_void_object_PropertyChangedEventArgs_object_System_ComponentModel_PropertyChangedEventArgs + 118
12 com.troublefreepool.poolmath 0x00e30a58 Realm_Realms_RealmObject_RaisePropertyChanged_string + 86
13 com.troublefreepool.poolmath 0x00e30d88 Realm_Realms_RealmObject_Realms_NotificationsHelper_INotifiable_NotifyCallbacks_System_Nullable_1_Realms_NotifiableObjectHandleBase_CollectionChangeSet_System_Nullable_1_Realms_NativeException + 586
14 com.troublefreepool.poolmath 0x00e39328 Realm_Realms_NotificationsHelper_NotificationCallbackImpl_intptr_intptr_intptr + 478
15 com.troublefreepool.poolmath 0x00e18ee0 wrapper_native_to_managed_Realms_NotificationsHelper_NotificationCallbackImpl_intptr_intptr_intptr (<unknown>:1)
16 com.troublefreepool.poolmath 0x01578687 realm::ManagedNotificationTokenContext* realm::subscribe_for_notifications<object_add_notification_callback::$_35::operator()() const::'lambda'(realm::CollectionChangeCallback)>(void*, void (*)(void*, realm::MarshallableCollectionChangeSet*, realm::NativeException::Marshallable*), object_add_notification_callback::$_35::operator()() const::'lambda'(realm::CollectionChangeCallback), realm::ObjectSchema*)::'lambda'(realm::CollectionChangeSet, std::exception_ptr)::operator()(realm::CollectionChangeSet, std::exception_ptr) const + 480
17 com.troublefreepool.poolmath 0x01578263 realm::CollectionChangeCallback::Impl<realm::ManagedNotificationTokenContext* realm::subscribe_for_notifications<object_add_notification_callback::$_35::operator()() const::'lambda'(realm::CollectionChangeCallback)>(void*, void (*)(void*, realm::MarshallableCollectionChangeSet*, realm::NativeException::Marshallable*), object_add_notification_callback::$_35::operator()() const::'lambda'(realm::CollectionChangeCallback), realm::ObjectSchema*)::'lambda'(realm::CollectionChangeSet, std::exception_ptr)>::after(realm::CollectionChangeSet const&) + 96
18 com.troublefreepool.poolmath 0x01590129 realm::_impl::CollectionNotifier::after_advance() + 370
19 com.troublefreepool.poolmath 0x01590de5 realm::_impl::NotifierPackage::after_advance() + 22
20 com.troublefreepool.poolmath 0x0155bc97 realm::_impl::transaction::advance(std::__1::unique_ptr<realm::SharedGroup, std::__1::default_delete<realm::SharedGroup> > const&, realm::BindingContext*, realm::_impl::NotifierPackage&) + 624
21 com.troublefreepool.poolmath 0x01555791 realm::_impl::RealmCoordinator::advance_to_latest(realm::Realm&) + 222
22 com.troublefreepool.poolmath 0x01594add realm::Realm::refresh() + 202
23 com.troublefreepool.poolmath 0x0155a42f shared_realm_refresh + 88
24 com.troublefreepool.poolmath 0x00e16af8 wrapper_managed_to_native_Realms_SharedRealmHandle_NativeMethods_refresh_Realms_SharedRealmHandle_Realms_NativeException_ (<unknown>:1)
25 com.troublefreepool.poolmath 0x00e02928 Realms_SharedRealmHandle_Refresh (<unknown>:1)
26 com.troublefreepool.poolmath 0x00e2a790 Realm_Realms_Realm_Refresh + 26
27 com.troublefreepool.poolmath 0x000eaca4 com_troublefreepool_poolmath_TroubleFreePool_ModifyPoolConfigViewModel_UpdateConfig (<unknown>:260)
28 com.troublefreepool.poolmath 0x000eae30 com_troublefreepool_poolmath_TroubleFreePool_ModifyPoolConfigViewModel__get_SaveCommandb__35_1 (<unknown>:96)
29 com.troublefreepool.poolmath 0x00ba5dbc Xamarin_iOS_Foundation_NSAsyncActionDispatcher_Apply (NSAction.cs:163)
30 com.troublefreepool.poolmath 0x0027cb88 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 254
31 com.troublefreepool.poolmath 0x014435b1 mono_jit_runtime_invoke (mini-runtime.c:2509)
32 com.troublefreepool.poolmath 0x0149e9c7 do_runtime_invoke (object.c:2860)
33 com.troublefreepool.poolmath 0x0149e95d mono_runtime_invoke (object.c:3018)
34 com.troublefreepool.poolmath 0x012a0659 native_to_managed_trampoline_3(objc_object*, objc_selector*, _MonoMethod**, unsigned int) (registrar.m:105)
35 com.troublefreepool.poolmath 0x012a0975 -[__MonoMac_NSAsyncActionDispatcher xamarinApplySelector] (registrar.m:8318)
36 Foundation 0x1c205aef __NSThreadPerformPerform + 384
37 CoreFoundation 0x1b87bfdd __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 10
38 CoreFoundation 0x1b87baa5 __CFRunLoopDoSources0 + 326
39 CoreFoundation 0x1b879f51 __CFRunLoopRun + 1158
40 CoreFoundation 0x1b7cd1af CFRunLoopRunSpecific + 468
41 CoreFoundation 0x1b7ccfd1 CFRunLoopRunInMode + 102
42 GraphicsServices 0x1cf77b41 GSEventRunModal + 78
43 UIKit 0x20b48e13 UIApplicationMain + 148
44 com.troublefreepool.poolmath 0x00b5d05c wrapper_managed_to_native_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr (<unknown>:1)
45 com.troublefreepool.poolmath 0x00bb4b80 Xamarin_iOS_UIKit_UIApplication_Main_string___string_string (UIApplication.cs:79)
46 com.troublefreepool.poolmath 0x001c9f60 com_troublefreepool_poolmath_TroubleFreePool_iOS_Application_Main_string__ (<unknown>:18)
47 com.troublefreepool.poolmath 0x0027cb88 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 254
48 com.troublefreepool.poolmath 0x014435b1 mono_jit_runtime_invoke (mini-runtime.c:2509)
49 com.troublefreepool.poolmath 0x0149e9c7 do_runtime_invoke (object.c:2860)
50 com.troublefreepool.poolmath 0x014a0e1b do_exec_main_checked (object.c:3018)
51 com.troublefreepool.poolmath 0x0142bf17 mono_jit_exec (driver.g.c:1037)
52 com.troublefreepool.poolmath 0x01539148 xamarin_main (monotouch-main.m:480)
53 com.troublefreepool.poolmath 0x012c0619 main (main.m:159)
54 libdyld.dylib 0x1afba4eb start + 0
Thread 1:
0 libsystem_kernel.dylib 0x1b08d808 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x1b144fc5 pthread_cond_wait + 36
2 libc++.1.dylib 0x1aadfc57 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 116
3 JavaScriptCore 0x1f7312f9 void std::__1::condition_variable_any::wait<std::__1::unique_lock<bmalloc::Mutex> >(std::__1::unique_lock<bmalloc::Mutex>&) + 86
4 JavaScriptCore 0x1f73127d bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadRunLoop() + 152
5 JavaScriptCore 0x1f731185 bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadEntryPoint(bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*) + 18
6 JavaScriptCore 0x1f7313c7 void* std::__1::__thread_proxy<std::__1::tuple<void (*)(bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*), bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*> >(void*) + 64
7 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
8 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
9 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 2:
0 libsystem_kernel.dylib 0x1b078900 mach_msg_trap + 20
1 CoreFoundation 0x1b87bbe3 __CFRunLoopServiceMachPort + 142
2 CoreFoundation 0x1b87a065 __CFRunLoopRun + 1434
3 CoreFoundation 0x1b7cd1af CFRunLoopRunSpecific + 468
4 CoreFoundation 0x1b7ccfd1 CFRunLoopRunInMode + 102
5 WebCore 0x1f9e8de3 RunWebThread(void*) + 424
6 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
7 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
8 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 3:
0 libsystem_kernel.dylib 0x1b078900 mach_msg_trap + 20
1 CoreFoundation 0x1b87bbe3 __CFRunLoopServiceMachPort + 142
2 CoreFoundation 0x1b87a065 __CFRunLoopRun + 1434
3 CoreFoundation 0x1b7cd1af CFRunLoopRunSpecific + 468
4 CoreFoundation 0x1b7ccfd1 CFRunLoopRunInMode + 102
5 CFNetwork 0x1beaa393 +[NSURLConnection(Loader) _resourceLoadLoop:] + 400
6 Foundation 0x1c2058ab __NSThread__start__ + 1120
7 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
8 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
9 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 4:
0 libsystem_kernel.dylib 0x1b08d808 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x1b144fc5 pthread_cond_wait + 36
2 com.troublefreepool.poolmath 0x015071cd thread_func (mono-os-mutex.h:146)
3 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
4 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
5 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 5:
0 libsystem_kernel.dylib 0x1b078950 semaphore_wait_trap + 8
1 com.troublefreepool.poolmath 0x014c35a9 start_wrapper (threads.c:837)
2 com.troublefreepool.poolmath 0x01517fbb inner_start_thread (mono-threads.c:1170)
3 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
4 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
5 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 6:
0 libsystem_kernel.dylib 0x1b078900 mach_msg_trap + 20
1 CoreFoundation 0x1b87bbe3 __CFRunLoopServiceMachPort + 142
2 CoreFoundation 0x1b87a065 __CFRunLoopRun + 1434
3 CoreFoundation 0x1b7cd1af CFRunLoopRunSpecific + 468
4 CoreFoundation 0x1b7ccfd1 CFRunLoopRunInMode + 102
5 Foundation 0x1c121ab5 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 256
6 Foundation 0x1c13e72d -[NSRunLoop(NSRunLoop) runUntilDate:] + 84
7 UIKit 0x2144a939 -[UIEventFetcher threadMain] + 126
8 Foundation 0x1c2058ab __NSThread__start__ + 1120
9 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
10 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
11 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 7:
0 libsystem_kernel.dylib 0x1b08d808 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x1b144fc5 pthread_cond_wait + 36
2 com.troublefreepool.poolmath 0x014ccf2f mono_os_cond_timedwait (mono-os-mutex.h:146)
3 com.troublefreepool.poolmath 0x014cbfeb mono_w32handle_timedwait_signal_handle (w32handle.c:973)
4 com.troublefreepool.poolmath 0x014cbedd mono_w32handle_wait_one (w32handle.c:1207)
5 com.troublefreepool.poolmath 0x014940f9 ves_icall_System_Threading_Monitor_Monitor_wait (monitor.c:1380)
6 com.troublefreepool.poolmath 0x003fcae0 mscorlib_System_Threading_Monitor_ObjWait_bool_int_object (<unknown>:74)
7 com.troublefreepool.poolmath 0x003f9684 mscorlib_System_Threading_SemaphoreSlim_WaitUntilCountOrTimeout_int_uint_System_Threading_CancellationToken (<unknown>:210)
8 com.troublefreepool.poolmath 0x002238b8 System_Threading_SemaphoreSlim_Wait_int_System_Threading_CancellationToken + 526
9 com.troublefreepool.poolmath 0x00878600 System_Collections_Concurrent_BlockingCollection_1_T_REF_TryTakeWithNoTimeValidation_T_REF__int_System_Threading_CancellationToken_System_Threading_CancellationTokenSource (BlockingCollection.cs:712)
10 com.troublefreepool.poolmath 0x00912880 System_System_Collections_Concurrent_BlockingCollection_1_T_REF_Take (<unknown>:667)
11 com.troublefreepool.poolmath 0x00553160 Xamarin_Forms_Platform_iOS_Xamarin_Forms_Platform_iOS_CADisplayLinkTicker_StartThread (C:\BuildAgent3\work\ca3766cfc22354a1\Xamarin.Forms.Platform.iOS\CADisplayLinkTicker.cs:52)
12 com.troublefreepool.poolmath 0x003fd074 mscorlib_System_Threading_ThreadHelper_ThreadStart_Context_object (<unknown>:68)
13 com.troublefreepool.poolmath 0x003fbb4c mscorlib_System_Threading_ExecutionContext_RunInternal_System_Threading_ExecutionContext_System_Threading_ContextCallback_object_bool (<unknown>:957)
14 com.troublefreepool.poolmath 0x003fb8c4 mscorlib_System_Threading_ExecutionContext_Run_System_Threading_ExecutionContext_System_Threading_ContextCallback_object (<unknown>:904)
15 com.troublefreepool.poolmath 0x003fd19c mscorlib_System_Threading_ThreadHelper_ThreadStart (<unknown>:105)
16 com.troublefreepool.poolmath 0x0027cb88 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 254
17 com.troublefreepool.poolmath 0x014435b1 mono_jit_runtime_invoke (mini-runtime.c:2509)
18 com.troublefreepool.poolmath 0x0149e9c7 do_runtime_invoke (object.c:2860)
19 com.troublefreepool.poolmath 0x0149fc83 mono_runtime_delegate_try_invoke (object.c:2971)
20 com.troublefreepool.poolmath 0x014c3649 start_wrapper (threads.c:845)
21 com.troublefreepool.poolmath 0x01517fbb inner_start_thread (mono-threads.c:1170)
22 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
23 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
24 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 8:
0 libsystem_kernel.dylib 0x1b08d808 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x1b145009 pthread_cond_timedwait + 40
2 com.troublefreepool.poolmath 0x014ccf13 mono_os_cond_timedwait (mono-os-mutex.h:179)
3 com.troublefreepool.poolmath 0x014cbfeb mono_w32handle_timedwait_signal_handle (w32handle.c:973)
4 com.troublefreepool.poolmath 0x014cbedd mono_w32handle_wait_one (w32handle.c:1207)
5 com.troublefreepool.poolmath 0x014cc0dd mono_w32handle_wait_multiple (w32handle.c:1241)
6 com.troublefreepool.poolmath 0x014bf217 mono_wait_uninterrupted (threads.c:1868)
7 com.troublefreepool.poolmath 0x014bf42f ves_icall_System_Threading_WaitHandle_WaitOne_internal (threads.c:1993)
8 com.troublefreepool.poolmath 0x002274fc wrapper_managed_to_native_System_Threading_WaitHandle_WaitOne_internal_intptr_int + 78
9 com.troublefreepool.poolmath 0x003fed94 mscorlib_System_Threading_WaitHandle_WaitOneNative_System_Runtime_InteropServices_SafeHandle_uint_bool_bool (<unknown>:102)
10 com.troublefreepool.poolmath 0x003fec00 mscorlib_System_Threading_WaitHandle_InternalWaitOne_System_Runtime_InteropServices_SafeHandle_long_bool_bool (<unknown>:250)
11 com.troublefreepool.poolmath 0x003feb78 mscorlib_System_Threading_WaitHandle_WaitOne_int (<unknown>:239)
12 com.troublefreepool.poolmath 0x00400510 mscorlib_System_Threading_Timer_Scheduler_SchedulerThread (<unknown>:395)
13 com.troublefreepool.poolmath 0x003fd074 mscorlib_System_Threading_ThreadHelper_ThreadStart_Context_object (<unknown>:68)
14 com.troublefreepool.poolmath 0x003fbb4c mscorlib_System_Threading_ExecutionContext_RunInternal_System_Threading_ExecutionContext_System_Threading_ContextCallback_object_bool (<unknown>:957)
15 com.troublefreepool.poolmath 0x003fb8c4 mscorlib_System_Threading_ExecutionContext_Run_System_Threading_ExecutionContext_System_Threading_ContextCallback_object (<unknown>:904)
16 com.troublefreepool.poolmath 0x003fd19c mscorlib_System_Threading_ThreadHelper_ThreadStart (<unknown>:105)
17 com.troublefreepool.poolmath 0x0027cb88 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 254
18 com.troublefreepool.poolmath 0x014435b1 mono_jit_runtime_invoke (mini-runtime.c:2509)
19 com.troublefreepool.poolmath 0x0149e9c7 do_runtime_invoke (object.c:2860)
20 com.troublefreepool.poolmath 0x0149fc83 mono_runtime_delegate_try_invoke (object.c:2971)
21 com.troublefreepool.poolmath 0x014c3649 start_wrapper (threads.c:845)
22 com.troublefreepool.poolmath 0x01517fbb inner_start_thread (mono-threads.c:1170)
23 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
24 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
25 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 10:
0 libsystem_kernel.dylib 0x1b07bba8 kevent + 24
1 com.troublefreepool.poolmath 0x0157e257 std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0>::operator()() + 80
2 com.troublefreepool.poolmath 0x0157e16f std::__1::__async_assoc_state<void, std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0> >::__execute() + 84
3 com.troublefreepool.poolmath 0x0157e3fd std::__1::__thread_proxy<std::__1::tuple<void (std::__1::__async_assoc_state<void, std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0> >::*)(), std::__1::__async_assoc_state<void, std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0> >*> >(void*, void*) + 142
4 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
5 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
6 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 11:
0 libsystem_kernel.dylib 0x1b08e73c __workq_kernreturn + 8
1 libsystem_pthread.dylib 0x1b14245c start_wqthread + 6
Thread 12:
0 libsystem_kernel.dylib 0x1b08d808 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x1b145009 pthread_cond_timedwait + 40
2 com.troublefreepool.poolmath 0x015182e3 mono_thread_info_sleep (mono-os-mutex.h:179)
3 com.troublefreepool.poolmath 0x014ba189 monitor_thread (threadpool-worker-default.c:804)
4 com.troublefreepool.poolmath 0x014c35a9 start_wrapper (threads.c:837)
5 com.troublefreepool.poolmath 0x01517fbb inner_start_thread (mono-threads.c:1170)
6 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
7 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
8 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 13:
0 libsystem_kernel.dylib 0x1b08d808 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x1b145009 pthread_cond_timedwait + 40
2 com.troublefreepool.poolmath 0x014ba759 worker_thread (mono-os-mutex.h:179)
3 com.troublefreepool.poolmath 0x014c35a9 start_wrapper (threads.c:837)
4 com.troublefreepool.poolmath 0x01517fbb inner_start_thread (mono-threads.c:1170)
5 libsystem_pthread.dylib 0x1b14493b _pthread_body + 214
6 libsystem_pthread.dylib 0x1b14485d _pthread_start + 232
7 libsystem_pthread.dylib 0x1b142468 thread_start + 6
Thread 14:
0 libsystem_kernel.dylib 0x1b08e73c __workq_kernreturn + 8
1 libsystem_pthread.dylib 0x1b14245c start_wqthread + 6
Thread 15:
0 libsystem_kernel.dylib 0x1b08e73c __workq_kernreturn + 8
1 libsystem_pthread.dylib 0x1b14245c start_wqthread + 6
Thread 16:
0 libsystem_kernel.dylib 0x1b08e73c __workq_kernreturn + 8
1 libsystem_pthread.dylib 0x1b14245c start_wqthread + 6
Thread 9 crashed with armv7s Thread State:
r7: 0x19368294 r12: 0x00000148 r3: 0x15f45000 r8: 0x0000001b
sp: 0x19368288 r10: 0x00000000 r4: 0x00000006 r9: 0x3895b744
r0: 0x00000000 r5: 0x19369000 lr: 0x1b146087 cpsr: 0x00000010
r1: 0x00000000 r11: 0x00000000 r6: 0x00000000 pc: 0x1b08dacc
r2: 0x00000000
Binary Images:
0x0008f000 - 0x01926fff +com.troublefreepool.poolmath armv7 <61c53a23-6138-3294-aad6-634b81a6a82a> /var/containers/Bundle/Application/AF9646EB-4088-48E3-A02C-A5780403516B/com.troublefreepool.poolmath.app/com.troublefreepool.poolmath
0x1aada000 - 0x1ab25fff libc++.1.dylib armv7s <818c230d-fc88-357a-b249-302107b831f0> /usr/lib/libc++.1.dylib
0x1afb7000 - 0x1afbafff libdyld.dylib armv7s <60e884ce-36b2-37e6-9d9e-ef4552b1f824> /usr/lib/system/libdyld.dylib
0x1afd8000 - 0x1b038fff libsystem_c.dylib armv7s <95ded7c0-7180-3a65-ab5c-a3b6145c728c> /usr/lib/system/libsystem_c.dylib
0x1b078000 - 0x1b093fff libsystem_kernel.dylib armv7s <6b92f311-0b5c-3bc8-85fe-467c2a31abcc> /usr/lib/system/libsystem_kernel.dylib
0x1b141000 - 0x1b149fff libsystem_pthread.dylib armv7s <168117cf-b548-3642-8956-9c1f17089d14> /usr/lib/system/libsystem_pthread.dylib
0x1b7c5000 - 0x1bafdfff CoreFoundation armv7s <acedaa63-1829-3afa-8cc2-49f6e92eb254> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
0x1bded000 - 0x1c0bafff CFNetwork armv7s <2a81c595-c1cc-395a-bdf7-6a3cbec50d08> /System/Library/Frameworks/CFNetwork.framework/CFNetwork
0x1c116000 - 0x1c3a5fff Foundation armv7s <e4a3c3cd-0b24-3d0c-b8ff-73fc36c4b714> /System/Library/Frameworks/Foundation.framework/Foundation
0x1cf6e000 - 0x1cf7ffff GraphicsServices armv7s <406bb820-b2fd-358d-825d-656249f1eded> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
0x1f228000 - 0x1f7a3fff JavaScriptCore armv7s <7cd1f798-958a-375e-96ec-6e4c1f6e81de> /System/Library/Frameworks/JavaScriptCore.framework/JavaScriptCore
0x1f9b5000 - 0x2076cfff WebCore armv7s <51436017-c76c-3c6f-ab47-bb42f917a6db> /System/Library/PrivateFrameworks/WebCore.framework/WebCore
0x20ad7000 - 0x217a1fff UIKit armv7s <cefd3b17-06ba-362d-bb6a-801d07abeb77> /System/Library/Frameworks/UIKit.framework/UIKit
The suspect function is this:
5 com.troublefreepool.poolmath 0x015eb7a1 (anonymous namespace)::HistoryImpl::do_find_history_entry(unsigned long long, unsigned long long, unsigned long long, bool, realm::sync::HistoryEntry&, realm::util::Optional<std::__1::unique_ptr<char [], std::__1::default_delete<char []> >&>) const + 966
This function is making a lookup in the Realm for the next changes to send to the server. Hence, it would be very nice to see the client side Realm.
Haven't been able to repro this on any of my own devices... i will be pushing an update that will include user id's with crash reports soon... it may be possible for me to attach the client side realm file to crash reports... I'll have a look...
@morten-krogh with the offset into that function you should be able to see more precisely where we crash? And perhaps add some asserts around that with more info.
We call terminate() somewhere during the processing of do_find_history_entry(). Yes, I could use the offset to pin it down a bit more.
Getting a Realm would be the best option of course.
First, one question. When we call terminate we print out some text like this:
"IMPORTANT: if you see this error, please send this log to help@realm.io."
and much more information.
This information text goes to a termination_notification_callback function.
Is such a termination_notification_callback turned on? Is this output also available?
@nirinchev @Redth
I'm not aware of the termination_notification_callback
and I'm fairly certain we don't expose it anywhere in the .NET binding.
@Redth we've released 1.6 with a bunch of fixes on the sync side. While we're uncertain whether those will address the crashes you're seeing, I'd advise trying it out. Have you made progress in terms of obtaining the client side Realm for those crashing users?
I'm closing this due to lack of response. If it occurs with 1.6 or later, feel free to reopen.
Goals
Not crashing!
Expected Results
No crashes ;)
Actual Results
SIGABRT
Steps to Reproduce
Happening out in the wild in my app
Version of Realm and Tooling
Logs
Sorry the logs are a bit ugly in formatting, but I'm not sure how to easily get a nicer symbolicated version out of the crash reporter i'm using: