ObjectServerExample crashed when connecting the 2nd client with:
ROS 2.0.0-alpha.35
09-22 08:02:06.785 219-219/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-22 08:02:06.785 219-219/? A/DEBUG: Build fingerprint: 'Android/vbox86p/vbox86p:6.0/MRA58K/genymotion03201937:userdebug/test-keys'
09-22 08:02:06.786 219-219/? A/DEBUG: Revision: '0'
09-22 08:02:06.786 219-219/? A/DEBUG: ABI: 'x86'
09-22 08:02:06.786 219-219/? A/DEBUG: pid: 16213, tid: 16508, name: Thread-198 >>> io.realm.examples.objectserver <<<
09-22 08:02:06.786 219-219/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x82ca7c38
09-22 08:02:06.790 219-219/? A/DEBUG: eax e8704102 ebx e11e9ccc ecx df379f03 edx e87041c0
09-22 08:02:06.790 219-219/? A/DEBUG: esi 00000002 edi 00000000
09-22 08:02:06.790 219-219/? A/DEBUG: xcs 00000023 xds 0000002b xes 0000002b xfs 000000a7 xss 0000002b
09-22 08:02:06.790 219-219/? A/DEBUG: eip e0e44f4e ebp df379e08 esp df379df0 flags 00010287
09-22 08:02:06.792 219-219/? A/DEBUG: backtrace:
09-22 08:02:06.792 219-219/? A/DEBUG: #00 pc 00206f4e /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #01 pc 0020764f /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #02 pc 0020c688 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #03 pc 0020d96b /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #04 pc 001d6b47 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #05 pc 001e8477 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #06 pc 001e93e1 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #07 pc 001f5a3d /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #08 pc 001ef96f /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #09 pc 001efa0d /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #10 pc 001f2ff8 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #11 pc 001eac31 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #12 pc 001bcf58 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so (_ZNSt6thread5_ImplISt12_Bind_simpleIFZN5realm5_impl10SyncClientC4ESt10unique_ptrINS2_4util6LoggerESt14default_deleteIS7_EENS2_4sync6Client13ReconnectModeEEUlvE_vEEE6_M_runEv+56)
09-22 08:02:06.792 219-219/? A/DEBUG: #13 pc 00421e1e /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so
09-22 08:02:06.792 219-219/? A/DEBUG: #14 pc 00080bc3 /system/lib/libc.so (__pthread_start(void*)+56)
09-22 08:02:06.792 219-219/? A/DEBUG: #15 pc 000219a2 /system/lib/libc.so (__start_thread+25)
09-22 08:02:06.792 219-219/? A/DEBUG: #16 pc 00017106 /system/lib/libc.so (__bionic_clone+70)
Decompiled:
********* Crash dump: **********
Build fingerprint: 'Android/vbox86p/vbox86p:6.0/MRA58K/genymotion03201937:userdebug/test-keys'
pid: 16213, tid: 16508, name: Thread-198 >>> io.realm.examples.objectserver <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x82ca7c38
Stack frame #00 pc 00206f4e /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine (anonymous namespace)::get_instruction_level(realm::sync::Instruction::Type) at transform.cpp:?
Stack frame #01 pc 0020764f /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine (anonymous namespace)::TransformerImpl::MajorSide::init_with_instruction(realm::sync::Changeset::IteratorImpl<false>) at transform.cpp:?
Stack frame #02 pc 0020c688 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine (anonymous namespace)::TransformerImpl::merge_changesets(realm::sync::Changeset*, unsigned int, realm::sync::Changeset**, unsigned int, realm::sync::Transformer::Reporter*) [clone .isra.1765] at transform.cpp:?
Stack frame #03 pc 0020d96b /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine (anonymous namespace)::TransformerImpl::transform_remote_changesets(realm::sync::TransformHistory&, unsigned long long, realm::sync::Changeset*, unsigned int, realm::sync::Transformer::Reporter*) at transform.cpp:?
Stack frame #04 pc 001d6b47 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine (anonymous namespace)::HistoryImpl::integrate_remote_changesets(realm::sync::SyncProgress, realm::sync::Transformer::RemoteChangeset const*, unsigned int, realm::util::Logger*, std::function<void (realm::VersionID, realm::VersionID)>&) at history.cpp:?
Stack frame #05 pc 001e8477 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine void realm::sync::protocol::ClientProtocol::parse_message_received<(anonymous namespace)::Connection>((anonymous namespace)::Connection&, char const*, unsigned int) [clone .isra.695] at client.cpp:?
Stack frame #06 pc 001e93e1 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine (anonymous namespace)::Connection::websocket_binary_message_received(char const*, unsigned int) at client.cpp:?
Stack frame #07 pc 001f5a3d /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine .L420 at websocket.cpp:?
Stack frame #08 pc 001ef96f /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine void realm::util::network::Service::AsyncOper::do_recycle_and_execute<std::function<void (std::error_code, unsigned int)>, std::error_code&, unsigned int&>(bool, std::function<void (std::error_code, unsigned int)>&, std::error_code&, unsigned int&) at unwind-dw2-fde-dip.c:?
Stack frame #09 pc 001efa0d /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine realm::util::network::Service::BasicStreamOps<realm::util::network::Socket>::BufferedReadOper<std::function<void (std::error_code, unsigned int)> >::recycle_and_execute() at unwind-dw2-fde-dip.c:?
Stack frame #10 pc 001f2ff8 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine realm::util::network::Service::Impl::run() at unwind-dw2-fde-dip.c:?
Stack frame #11 pc 001eac31 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine realm::sync::Client::run() at unwind-dw2-fde-dip.c:?
Stack frame #12 pc 001bcf58 /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so (_ZNSt6thread5_ImplISt12_Bind_simpleIFZN5realm5_impl10SyncClientC4ESt10unique_ptrINS2_4util6LoggerESt14default_deleteIS7_EENS2_4sync6Client13ReconnectModeEEUlvE_vEEE6_M_runEv+56): Routine _ZNSt6thread5_ImplISt12_Bind_simpleIFZN5realm5_impl10SyncClientC4ESt10unique_ptrINS2_4util6LoggerESt14default_deleteIS7_EENS2_4sync6Client13ReconnectModeEEUlvE_vEEE6_M_runEv at ??:?
Stack frame #13 pc 00421e1e /data/app/io.realm.examples.objectserver-2/lib/x86/librealm-jni.so: Routine execute_native_thread_routine at /s/ndk-toolchain/src/gcc/gcc-4.9/libstdc++-v3/src/c++11/thread.cc:84
Stack frame #14 pc 00080bc3 /system/lib/libc.so (__pthread_start(void*)+56)
Stack frame #15 pc 000219a2 /system/lib/libc.so (__start_thread+25)
Stack frame #16 pc 00017106 /system/lib/libc.so (__bionic_clone+70)
Fixed by reducing Sync optimization from -O2 to -O1. Compilers 馃槥
First -fsigned_chars now this o-o
Yeah, on the plus side it seems that @beeender managed to get our CMake setup working, so hopefully all of this will be a problem of the past soon.
Most helpful comment
Yeah, on the plus side it seems that @beeender managed to get our CMake setup working, so hopefully all of this will be a problem of the past soon.