Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Converting examples to RxJava2 #5141

Merged
merged 38 commits into from
Sep 12, 2017
Merged

Converting examples to RxJava2 #5141

merged 38 commits into from
Sep 12, 2017

Conversation

dalinaum
Copy link
Contributor

@dalinaum dalinaum commented Aug 23, 2017

Part of #4991

TODO:

  • converting unitTestExample to RxJava2
  • converting newsreaderExample to RxJava2
  • converting rxJavaExample to RxJava2
  • Debugging a native crash in newsreaderExample
  • Apply Lambda instead of anonymous classes.

@dalinaum dalinaum changed the base branch from master to feature/rxjava2 August 23, 2017 10:10
@dalinaum
Copy link
Contributor Author

dalinaum commented Aug 23, 2017

I've encountered the following problem:

* What went wrong:
Execution failed for task ':kotlinExample:transformClassesWithRealmTransformerForDebugAndroidTest'.
> javassist.NotFoundException: io.realm.examples.kotlin.model.Dog

It seems a similar problem with #4662.

Since it is not related to this PR, I will only focus on examples which use RealmJava.

@zaki50
Copy link
Contributor

zaki50 commented Aug 24, 2017

@dalinaum Android Gradle Plugin 3.0.0-beta3 should fix the problem.

@dalinaum
Copy link
Contributor Author

It sometimes encounters the following error:

                                                                            [ 08-24 11:09:11.252  1863: 1863 D/         ]
                                                                            HostConnection::get() New Host Connection established 0xeb1b2dc0, tid 1863
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: JNI GetMethodID called with pending exception java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410] (Throwable with empty stack trace)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]     in call to GetMethodID
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]     from void android.os.MessageQueue.nativePollOnce(long, int)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410] "main" prio=5 tid=1 Runnable
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   | group="main" sCount=0 dsCount=0 obj=0x75295258 self=0xf3e34a00
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   | sysTid=1863 nice=0 cgrp=default sched=0/0 handle=0xf77ddc00
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   | state=R schedstat=( 785742258 39882970 298 ) utm=41 stm=37 core=1 HZ=100
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   | stack=0xff38b000-0xff38d000 stackSize=8MB
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   | held mutexes= "mutator lock"(shared held)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #00 pc 0058b0e2  /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::ArtMethod*, void*)+226)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #01 pc 00550d2e  /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+286)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #02 pc 003a489f  /system/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+1247)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #03 pc 003a5f1c  /system/lib/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, char*)+116)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #04 pc 00163a10  /system/lib/libart.so (art::ScopedCheck::AbortF(char const*, ...)+62)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #05 pc 0016d9d2  /system/lib/libart.so (art::ScopedCheck::CheckThread(_JNIEnv*)+1890)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #06 pc 0016e4e1  /system/lib/libart.so (art::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::JniValueType*) (.constprop.114)+1489)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #07 pc 0017975d  /system/lib/libart.so (art::CheckJNI::GetMethodIDInternal(char const*, _JNIEnv*, _jclass*, char const*, char const*, bool)+637)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #08 pc 001799f4  /system/lib/libart.so (art::CheckJNI::GetMethodID(_JNIEnv*, _jclass*, char const*, char const*)+68)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #09 pc 0010f53d  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #10 pc 00109f73  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #11 pc 0010f3bb  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #12 pc 0010f468  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #13 pc 00109a28  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #14 pc 001357bf  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #15 pc 0016f769  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #16 pc 0016f9f6  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #17 pc 0001ae77  /system/lib/libutils.so (android::Looper::pollInner(int)+439)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #18 pc 0001b1d7  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+53)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #19 pc 000c0eab  /system/lib/libandroid_runtime.so (android::NativeMessageQueue::pollOnce(_JNIEnv*, _jobject*, int)+77)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #20 pc 000c0f1c  /system/lib/libandroid_runtime.so (???)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #21 pc 00000704  /data/dalvik-cache/x86/system@framework@boot.oat (Java_android_os_MessageQueue_nativePollOnce__JI+136)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   native: #22 pc 00004033  ???
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at android.os.MessageQueue.nativePollOnce(Native method)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at android.os.MessageQueue.next(MessageQueue.java:323)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at android.os.Looper.loop(Looper.java:135)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at android.app.ActivityThread.main(ActivityThread.java:5417)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at java.lang.reflect.Method.invoke!(Native method)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
08-24 11:09:11.279 1863-1863/io.realm.examples.newsreader A/art: art/runtime/java_vm_ext.cc:410] 
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] Runtime aborting...
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] Aborting thread:
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "main" prio=5 tid=1 Native
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=0 dsCount=0 obj=0x75295258 self=0xf3e34a00
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1863 nice=0 cgrp=default sched=0/0 handle=0xf77ddc00
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=R schedstat=( 792861090 40155360 306 ) utm=41 stm=37 core=1 HZ=100
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xff38b000-0xff38d000 stackSize=8MB
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes= "abort lock"
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 0058b0e2  /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::ArtMethod*, void*)+226)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00550d2e  /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+286)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 00516abe  /system/lib/libart.so (art::Runtime::Abort()+1164)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 0014d9f3  /system/lib/libart.so (art::LogMessage::~LogMessage()+1343)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 003a52c2  /system/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+3842)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 003a5f1c  /system/lib/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, char*)+116)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 00163a10  /system/lib/libart.so (art::ScopedCheck::AbortF(char const*, ...)+62)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #07 pc 0016d9d2  /system/lib/libart.so (art::ScopedCheck::CheckThread(_JNIEnv*)+1890)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #08 pc 0016e4e1  /system/lib/libart.so (art::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::JniValueType*) (.constprop.114)+1489)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #09 pc 0017975d  /system/lib/libart.so (art::CheckJNI::GetMethodIDInternal(char const*, _JNIEnv*, _jclass*, char const*, char const*, bool)+637)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #10 pc 001799f4  /system/lib/libart.so (art::CheckJNI::GetMethodID(_JNIEnv*, _jclass*, char const*, char const*)+68)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #11 pc 0010f53d  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #12 pc 00109f73  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #13 pc 0010f3bb  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #14 pc 0010f468  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #15 pc 00109a28  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #16 pc 001357bf  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #17 pc 0016f769  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #18 pc 0016f9f6  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #19 pc 0001ae77  /system/lib/libutils.so (android::Looper::pollInner(int)+439)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #20 pc 0001b1d7  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+53)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #21 pc 000c0eab  /system/lib/libandroid_runtime.so (android::NativeMessageQueue::pollOnce(_JNIEnv*, _jobject*, int)+77)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #22 pc 000c0f1c  /system/lib/libandroid_runtime.so (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #23 pc 00000704  /data/dalvik-cache/x86/system@framework@boot.oat (???)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #24 pc 00004033  ???
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.os.MessageQueue.nativePollOnce(Native method)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.os.MessageQueue.next(MessageQueue.java:323)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.os.Looper.loop(Looper.java:135)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread.main(ActivityThread.java:5417)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.reflect.Method.invoke!(Native method)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] Pending exception java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] (Throwable with empty stack trace)Dumping all threads without appropriate locks held: thread list lock mutator lock
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] All threads:
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] DALVIK THREADS (15):
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "main" prio=5 tid=1 Runnable
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=0 dsCount=0 obj=0x75295258 self=0xf3e34a00
08-24 11:09:11.333 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1863 nice=0 cgrp=default sched=0/0 handle=0xf77ddc00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=R schedstat=( 798204809 41065883 313 ) utm=41 stm=38 core=1 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xff38b000-0xff38d000 stackSize=8MB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes= "abort lock" "mutator lock"(shared held)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 0058b0e2  /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::ArtMethod*, void*)+226)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00550d2e  /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+286)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 0055b63b  /system/lib/libart.so (art::DumpCheckpoint::Run(art::Thread*)+923)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 0055e1dd  /system/lib/libart.so (art::ThreadList::RunCheckpoint(art::Closure*)+301)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 0055f4d3  /system/lib/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+243)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00516928  /system/lib/libart.so (art::Runtime::Abort()+758)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 0014d9f3  /system/lib/libart.so (art::LogMessage::~LogMessage()+1343)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #07 pc 003a52c2  /system/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+3842)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #08 pc 003a5f1c  /system/lib/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, char*)+116)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #09 pc 00163a10  /system/lib/libart.so (art::ScopedCheck::AbortF(char const*, ...)+62)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #10 pc 0016d9d2  /system/lib/libart.so (art::ScopedCheck::CheckThread(_JNIEnv*)+1890)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #11 pc 0016e4e1  /system/lib/libart.so (art::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::JniValueType*) (.constprop.114)+1489)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #12 pc 0017975d  /system/lib/libart.so (art::CheckJNI::GetMethodIDInternal(char const*, _JNIEnv*, _jclass*, char const*, char const*, bool)+637)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #13 pc 001799f4  /system/lib/libart.so (art::CheckJNI::GetMethodID(_JNIEnv*, _jclass*, char const*, char const*)+68)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #14 pc 0010f53d  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #15 pc 00109f73  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #16 pc 0010f3bb  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #17 pc 0010f468  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #18 pc 00109a28  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #19 pc 001357bf  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #20 pc 0016f769  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #21 pc 0016f9f6  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #22 pc 0001ae77  /system/lib/libutils.so (android::Looper::pollInner(int)+439)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #23 pc 0001b1d7  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+53)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #24 pc 000c0eab  /system/lib/libandroid_runtime.so (android::NativeMessageQueue::pollOnce(_JNIEnv*, _jobject*, int)+77)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #25 pc 000c0f1c  /system/lib/libandroid_runtime.so (???)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #26 pc 00000704  /data/dalvik-cache/x86/system@framework@boot.oat (Java_android_os_MessageQueue_nativePollOnce__JI+136)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #27 pc 00004033  ???
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.os.MessageQueue.nativePollOnce(Native method)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.os.MessageQueue.next(MessageQueue.java:323)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.os.Looper.loop(Looper.java:135)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread.main(ActivityThread.java:5417)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.reflect.Method.invoke!(Native method)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "Signal Catcher" prio=5 tid=2 WaitingInMainSignalCatcherLoop
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c600a0 self=0xeeac2000
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1868 nice=0 cgrp=default sched=0/0 handle=0xf3233930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 689954 1586947 3 ) utm=0 stm=0 core=0 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xf3137000-0xf3139000 stackSize=1014KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: do_sigtimedwait+0x16f/0x200
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: C_SYSC_rt_sigtimedwait+0x8d/0xf0
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_SyS_rt_sigtimedwait+0xe/0x10
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 0008461b  /system/lib/libc.so (__rt_sigtimedwait+27)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00027fcc  /system/lib/libc.so (sigwait+69)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 00521fb6  /system/lib/libart.so (art::SignalCatcher::WaitForSignal(art::Thread*, art::SignalSet&)+118)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 005257ae  /system/lib/libart.so (art::SignalCatcher::Run(void*)+302)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 000807f3  /system/lib/libc.so (__pthread_start(void*)+56)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00021952  /system/lib/libc.so (__start_thread+25)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 000170b6  /system/lib/libc.so (__bionic_clone+70)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   (no managed stack frames)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "JDWP" prio=5 tid=3 WaitingInMainDebuggerLoop
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c630a0 self=0xec9af200
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1869 nice=0 cgrp=default sched=0/0 handle=0xf3134930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 9321265 2414653 10 ) utm=0 stm=0 core=1 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xf3038000-0xf303a000 stackSize=1014KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: poll_schedule_timeout+0x55/0xb0
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: do_select+0x54f/0x680
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_core_sys_select+0x1de/0x2b0
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_sys_pselect6+0x221/0x240
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 000837f5  /system/lib/libc.so (__pselect6+37)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 000264ec  /system/lib/libc.so (select+173)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 0066be0c  /system/lib/libart.so (art::JDWP::JdwpAdbState::ProcessIncoming()+268)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 003bead2  /system/lib/libart.so (art::JDWP::JdwpState::Run()+386)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 003c0921  /system/lib/libart.so (art::JDWP::StartJdwpThread(void*)+32)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 000807f3  /system/lib/libc.so (__pthread_start(void*)+56)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 00021952  /system/lib/libc.so (__start_thread+25)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #07 pc 000170b6  /system/lib/libc.so (__bionic_clone+70)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   (no managed stack frames)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "ReferenceQueueDaemon" prio=5 tid=4 Waiting
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c5c8e0 self=0xec9b6000
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1870 nice=0 cgrp=default sched=0/0 handle=0xf3035930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 889840 493079 21 ) utm=0 stm=0 core=1 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xf2f33000-0xf2f35000 stackSize=1038KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait_queue_me+0xd2/0x130
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait+0x169/0x250
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: do_futex+0xe5/0xd00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_SyS_futex+0x71/0x140
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 000171e0  /system/lib/libc.so (syscall+32)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00155034  /system/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+772)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 0044f061  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+1777)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 00452ce5  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, art::mirror::Object*, long long, int, bool, art::ThreadState)+197)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 004705f9  /system/lib/libart.so (art::Object_wait(_JNIEnv*, _jobject*)+90)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00000494  /data/dalvik-cache/x86/system@framework@boot.oat (Java_java_lang_Object_wait__+104)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 8b018b33  ???
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Object.wait!(Native method)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - waiting on <0x01f4858d> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Daemons$ReferenceQueueDaemon.run(Daemons.java:147)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - locked <0x01f4858d> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.run(Thread.java:818)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "FinalizerWatchdogDaemon" prio=5 tid=5 Sleeping
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c5c9a0 self=0xec9b6a00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1872 nice=0 cgrp=default sched=0/0 handle=0xf2e23930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 594129 149759 4 ) utm=0 stm=0 core=0 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xf2d21000-0xf2d23000 stackSize=1038KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait_queue_me+0xd2/0x130
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait+0x169/0x250
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: do_futex+0xe5/0xd00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_SyS_futex+0x71/0x140
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 000171e2  /system/lib/libc.so (syscall+34)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00155f21  /system/lib/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long long, int)+849)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 0044ec9d  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+813)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 00452ce5  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, art::mirror::Object*, long long, int, bool, art::ThreadState)+197)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 0047cec3  /system/lib/libart.so (art::Thread_sleep(_JNIEnv*, _jclass*, _jobject*, long long, int)+107)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00024c8e  /data/dalvik-cache/x86/system@framework@boot.oat (Java_java_lang_Thread_sleep__Ljava_lang_Object_2JI+162)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.sleep!(Native method)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - sleeping on <0x0ddc0342> (a java.lang.Object)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.sleep(Thread.java:1031)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - locked <0x0ddc0342> (a java.lang.Object)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.sleep(Thread.java:985)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Daemons$FinalizerWatchdogDaemon.sleepFor(Daemons.java:273)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Daemons$FinalizerWatchdogDaemon.waitForFinalization(Daemons.java:284)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Daemons$FinalizerWatchdogDaemon.run(Daemons.java:232)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.run(Thread.java:818)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "FinalizerDaemon" prio=5 tid=6 Waiting
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c5c940 self=0xec9b6500
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1871 nice=0 cgrp=default sched=0/0 handle=0xf2f30930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 2899170 719857 18 ) utm=0 stm=0 core=2 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xf2e2e000-0xf2e30000 stackSize=1038KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait_queue_me+0xd2/0x130
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait+0x169/0x250
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: do_futex+0xe5/0xd00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_SyS_futex+0x71/0x140
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 000171e0  /system/lib/libc.so (syscall+32)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00155034  /system/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+772)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 0044f061  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+1777)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 00452ce5  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, art::mirror::Object*, long long, int, bool, art::ThreadState)+197)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 0047065c  /system/lib/libart.so (art::Object_waitJI(_JNIEnv*, _jobject*, long long, int)+92)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00000704  /data/dalvik-cache/x86/system@framework@boot.oat (Java_java_lang_Object_wait__JI+136)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 4f3e19d7  ???
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #07 pc 4eead3ff  ???
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #08 pc 81ccd7e2  ???
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Object.wait!(Native method)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - waiting on <0x06b7af53> (a java.lang.ref.ReferenceQueue)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Object.wait(Object.java:423)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:101)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - locked <0x06b7af53> (a java.lang.ref.ReferenceQueue)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:72)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:185)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.run(Thread.java:818)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "HeapTaskDaemon" prio=5 tid=7 Blocked
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c5ca00 self=0xec9b6f00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1873 nice=0 cgrp=default sched=0/0 handle=0xeee1f930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 31412775 10767630 38 ) utm=1 stm=1 core=2 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xeed1d000-0xeed1f000 stackSize=1038KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait_queue_me+0xd2/0x130
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: futex_wait+0x169/0x250
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: do_futex+0xe5/0xd00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_SyS_futex+0x71/0x140
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 000171e2  /system/lib/libc.so (syscall+34)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00155f21  /system/lib/libart.so (art::ConditionVariable::TimedWait(art::Thread*, long long, int)+849)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 002da882  /system/lib/libart.so (art::gc::TaskProcessor::GetTask(art::Thread*)+1170)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 002dafa5  /system/lib/libart.so (art::gc::TaskProcessor::RunAllTasks(art::Thread*)+37)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 0045ee9c  /system/lib/libart.so (art::VMRuntime_runHeapTasks(_JNIEnv*, _jobject*)+53)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00000494  /data/dalvik-cache/x86/system@framework@boot.oat (Java_dalvik_system_VMRuntime_runHeapTasks__+104)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at dalvik.system.VMRuntime.runHeapTasks(Native method)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   - waiting to lock an unknown object
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Daemons$HeapTaskDaemon.run(Daemons.java:355)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   at java.lang.Thread.run(Thread.java:818)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "Binder_1" prio=5 tid=8 Native
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c6b0a0 self=0xeeac3400
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1874 nice=0 cgrp=default sched=0/0 handle=0xeec1c930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 3104055 1951983 29 ) utm=0 stm=0 core=1 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xeeb20000-0xeeb22000 stackSize=1014KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: binder_thread_read+0x91d/0x1070
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: binder_ioctl_write_read.isra.45+0x101/0x280
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: binder_ioctl+0x1cf/0x640
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_sys_ioctl+0xad/0x1210
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 00085244  /system/lib/libc.so (__ioctl+20)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00094cea  /system/lib/libc.so (ioctl+42)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 000267ff  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+239)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 000271d5  /system/lib/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+37)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 00027317  /system/lib/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+151)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00030362  /system/lib/libbinder.so (android::PoolThread::threadLoop()+40)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 00014aac  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+418)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #07 pc 0006bfee  /system/lib/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+98)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #08 pc 000141cf  /system/lib/libutils.so (thread_data_t::trampoline(thread_data_t const*)+122)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #09 pc 000807f3  /system/lib/libc.so (__pthread_start(void*)+56)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #10 pc 00021952  /system/lib/libc.so (__start_thread+25)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #11 pc 000170b6  /system/lib/libc.so (__bionic_clone+70)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   (no managed stack frames)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] 
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366] "Binder_2" prio=5 tid=9 Native
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | group="" sCount=1 dsCount=0 obj=0x12c7a0a0 self=0xec9b7e00
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | sysTid=1875 nice=0 cgrp=default sched=0/0 handle=0xeeabf930
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | state=S schedstat=( 1547570 636548 21 ) utm=0 stm=0 core=1 HZ=100
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | stack=0xee9c3000-0xee9c5000 stackSize=1014KB
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   | held mutexes=
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: binder_thread_read+0x91d/0x1070
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: binder_ioctl_write_read.isra.45+0x101/0x280
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: binder_ioctl+0x1cf/0x640
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: compat_sys_ioctl+0xad/0x1210
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   kernel: ia32_sysret+0x0/0x5
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #00 pc 00085244  /system/lib/libc.so (__ioctl+20)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #01 pc 00094cea  /system/lib/libc.so (ioctl+42)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #02 pc 000267ff  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+239)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #03 pc 000271d5  /system/lib/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+37)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #04 pc 000272d1  /system/lib/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+81)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #05 pc 00030362  /system/lib/libbinder.so (android::PoolThread::threadLoop()+40)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #06 pc 00014aac  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+418)
08-24 11:09:11.334 1863-1863/io.realm.examples.newsreader A/art: art/runtime/runtime.cc:366]   native: #07 pc 0006bfee  /system/lib/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+98)
08-24 11:09:11.335 1863-1863/io.realm.examples.newsreader A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 1863 (ples.newsreader)
08-24 11:09:11.436 102-102/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-24 11:09:11.436 102-102/? A/DEBUG: Build fingerprint: 'Android/vbox86p/vbox86p:6.0/MRA58K/genymotion08241314:userdebug/test-keys'
08-24 11:09:11.436 102-102/? A/DEBUG: Revision: '0'
08-24 11:09:11.436 102-102/? A/DEBUG: ABI: 'x86'
08-24 11:09:11.436 102-102/? A/DEBUG: pid: 1863, tid: 1863, name: ples.newsreader  >>> io.realm.examples.newsreader <<<
08-24 11:09:11.436 102-102/? A/DEBUG: signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
08-24 11:09:11.441 102-102/? A/DEBUG: Abort message: 'art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: JNI GetMethodID called with pending exception java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available'
08-24 11:09:11.441 102-102/? A/DEBUG:     eax 00000000  ebx 00000747  ecx 00000747  edx 00000006
08-24 11:09:11.441 102-102/? A/DEBUG:     esi f77ddc50  edi 0000000b
08-24 11:09:11.442 102-102/? A/DEBUG:     xcs 00000023  xds 0000002b  xes 0000002b  xfs 00000007  xss 0000002b
08-24 11:09:11.442 102-102/? A/DEBUG:     eip f73a7e66  ebp 00000747  esp ffb87d40  flags 00000206
08-24 11:09:11.447 102-102/? A/DEBUG: backtrace:
08-24 11:09:11.447 102-102/? A/DEBUG:     #00 pc 00083e66  /system/lib/libc.so (tgkill+22)
08-24 11:09:11.447 102-102/? A/DEBUG:     #01 pc 00081348  /system/lib/libc.so (pthread_kill+70)
08-24 11:09:11.447 102-102/? A/DEBUG:     #02 pc 00027205  /system/lib/libc.so (raise+36)
08-24 11:09:11.447 102-102/? A/DEBUG:     #03 pc 000209e4  /system/lib/libc.so (abort+80)
08-24 11:09:11.447 102-102/? A/DEBUG:     #04 pc 005167ab  /system/lib/libart.so (art::Runtime::Abort()+377)
08-24 11:09:11.447 102-102/? A/DEBUG:     #05 pc 0014d9f3  /system/lib/libart.so (art::LogMessage::~LogMessage()+1343)
08-24 11:09:11.447 102-102/? A/DEBUG:     #06 pc 003a52c2  /system/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+3842)
08-24 11:09:11.447 102-102/? A/DEBUG:     #07 pc 003a5f1c  /system/lib/libart.so (art::JavaVMExt::JniAbortV(char const*, char const*, char*)+116)
08-24 11:09:11.447 102-102/? A/DEBUG:     #08 pc 00163a10  /system/lib/libart.so (art::ScopedCheck::AbortF(char const*, ...)+62)
08-24 11:09:11.447 102-102/? A/DEBUG:     #09 pc 0016d9d2  /system/lib/libart.so (art::ScopedCheck::CheckThread(_JNIEnv*)+1890)
08-24 11:09:11.447 102-102/? A/DEBUG:     #10 pc 0016e4e1  /system/lib/libart.so (art::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::JniValueType*) (.constprop.114)+1489)
08-24 11:09:11.447 102-102/? A/DEBUG:     #11 pc 0017975d  /system/lib/libart.so (art::CheckJNI::GetMethodIDInternal(char const*, _JNIEnv*, _jclass*, char const*, char const*, bool)+637)
08-24 11:09:11.447 102-102/? A/DEBUG:     #12 pc 001799f4  /system/lib/libart.so (art::CheckJNI::GetMethodID(_JNIEnv*, _jclass*, char const*, char const*)+68)
08-24 11:09:11.447 102-102/? A/DEBUG:     #13 pc 0010f53d  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #14 pc 00109f73  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #15 pc 0010f3bb  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #16 pc 0010f468  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #17 pc 00109a28  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #18 pc 001357bf  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #19 pc 0016f769  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #20 pc 0016f9f6  /data/app/io.realm.examples.newsreader-2/lib/x86/librealm-jni.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #21 pc 0001ae77  /system/lib/libutils.so (android::Looper::pollInner(int)+439)
08-24 11:09:11.447 102-102/? A/DEBUG:     #22 pc 0001b1d7  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+53)
08-24 11:09:11.447 102-102/? A/DEBUG:     #23 pc 000c0eab  /system/lib/libandroid_runtime.so (android::NativeMessageQueue::pollOnce(_JNIEnv*, _jobject*, int)+77)
08-24 11:09:11.447 102-102/? A/DEBUG:     #24 pc 000c0f1c  /system/lib/libandroid_runtime.so
08-24 11:09:11.447 102-102/? A/DEBUG:     #25 pc 73594704  /data/dalvik-cache/x86/system@framework@boot.oat (offset 0x1eb6000)
08-24 11:09:11.447 102-102/? A/DEBUG:     #26 pc 00004033  <unknown>
08-24 11:09:11.518 102-102/? A/DEBUG: Tombstone written to: /data/tombstones/tombstone_02
08-24 11:09:11.518 102-102/? E/DEBUG: AM write failed: Broken pipe

I should dig into this tomorrow.

cmelchior and others added 3 commits August 25, 2017 13:20
Conflicts:
	realm/realm-library/build.gradle
	realm/realm-library/src/main/java/io/realm/BaseRealm.java
	realm/realm-library/src/main/java/io/realm/RealmList.java
	realm/realm-library/src/main/java/io/realm/RealmResults.java
@dalinaum
Copy link
Contributor Author

After merging feature/rxjava2 into this branch again, I don't encounter native crashes yet. So I will focus on converting rxJavaExample first.

implementation 'io.reactivex.rxjava2:rxjava:2.1.0'
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
implementation 'com.jakewharton.rxbinding2:rxbinding:2.0.0'
compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is some compile and other implementation?

return realm.where(Person.class).findAllSorted("name").get(0);
}
});

new Function<Realm, Person>() {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this looks out of place

subscription = realm.where(Person.class).findAllAsync().asObservable()
.flatMap(new Func1<RealmResults<Person>, Observable<Person>>() {
disposable = realm.where(Person.class).findAllAsync().asFlowable()
.flatMap(new Function<RealmResults<Person>, Publisher<Person>>() {
Copy link
Contributor

@Zhuinden Zhuinden Aug 31, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You know, I've actually just realized that with Android build tools 3.0, lambda support is out of the box, even without Retrolambda.

I'll try to give a mention to @cmelchior to see what he thinks about converting these Functions and Predicates to lambda expressions instead? Although you still need to tell Gradle that you're actually Java 8 language compatible.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Converting to Java 8 is fine with me 👍 Would improve the readability quite a lot for this.

@Override
public Observable<RealmResults<Person>> call(TextViewTextChangeEvent event) {
.toFlowable( BackpressureStrategy.BUFFER)
.flatMap(new Function<TextViewTextChangeEvent, Publisher<RealmResults<Person>>>() {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, shouldn't this be switchMap()?

@@ -39,6 +39,7 @@
testPersons.put("Donn", "donnfelker");
testPersons.put("Nabil", "nhachicha");
testPersons.put("Ron", null);
testPersons.put("Leonardo", "dalinaum");
Copy link
Contributor

@Zhuinden Zhuinden Aug 31, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Welcome to test persons 😄

});
// We only want the list once it is loaded.
.filter(people -> people.isLoaded())
.flatMap(people -> Flowable.fromIterable(people))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if this should also be switchMap().

@beeender
Copy link
Contributor

beeender commented Sep 5, 2017

@dalinaum #5205 should solve you native crash

@dalinaum
Copy link
Contributor Author

dalinaum commented Sep 8, 2017

@beeender It seems fixed. I don't encounter the native crash yet. Thanks.

@dalinaum dalinaum changed the base branch from feature/rxjava2 to master September 8, 2017 06:07
@dalinaum
Copy link
Contributor Author

dalinaum commented Sep 8, 2017

Since I merged origin/master into this branch, I changed this PR to target master temporarily. If this branch targets to feature/rxjava2, it is too difficult to read changes set now.

I will change this PR's target to feature/rxjava2 later again.

@dalinaum
Copy link
Contributor Author

dalinaum commented Sep 8, 2017

There is a native crash during connectedObjectServerDebugAndroidTest

io.realm.internal.PrimaryKeyTests > removingPrimaryKeyRemovesConstraint_typeSetters[Google Nexus 5X - 6.0.0 - API 23 - 1080x1920 - 6.0] FAILED
Test failed to run to completion. Reason: 'Instrumentation run failed due to 'Native crash''. Check device logcat for details
Tests on Google Nexus 5X - 6.0.0 - API 23 - 1080x1920 - 6.0 failed: Instrumentation run failed due to 'Native crash'
09-08 02:43:00.949  2094  2108 E REALM   : sync/object.cpp:363: [realm-core-3.0.0-rc5] Assertion failed: !table_has_primary_key(cache, t)
09-08 02:43:00.949  2094  2108 E REALM   : IMPORTANT: if you see this error, please send this log to help@realm.io.
09-08 02:43:00.949  2094  2108 F libc    : Fatal signal 6 (SIGABRT), code -6 in tid 2108 (roidJUnitRunner)
09-08 02:43:01.001   102   102 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-08 02:43:01.001   102   102 F DEBUG   : Build fingerprint: 'Android/vbox86p/vbox86p:6.0/MRA58K/genymotion08241314:userdebug/test-keys'
09-08 02:43:01.001   102   102 F DEBUG   : Revision: '0'
09-08 02:43:01.002   102   102 F DEBUG   : ABI: 'x86'
09-08 02:43:01.002   102   102 F DEBUG   : pid: 2094, tid: 2108, name: roidJUnitRunner  >>> io.realm.test <<<
09-08 02:43:01.002   102   102 F DEBUG   : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
09-08 02:43:01.005   102   102 F DEBUG   :     eax 00000000  ebx 0000082e  ecx 0000083c  edx 00000006
09-08 02:43:01.005   102   102 F DEBUG   :     esi e8bc1980  edi 00000002
09-08 02:43:01.005   102   102 F DEBUG   :     xcs 00000023  xds 0000002b  xes 0000002b  xfs 00000057  xss 0000002b
09-08 02:43:01.005   102   102 F DEBUG   :     eip f735fe66  ebp 0000083c  esp e8bc0bf0  flags 00000206
09-08 02:43:01.016   102   102 F DEBUG   :
09-08 02:43:01.016   102   102 F DEBUG   : backtrace:
09-08 02:43:01.016   102   102 F DEBUG   :     #00 pc 00083e66  /system/lib/libc.so (tgkill+22)
09-08 02:43:01.016   102   102 F DEBUG   :     #01 pc 00081348  /system/lib/libc.so (pthread_kill+70)
09-08 02:43:01.016   102   102 F DEBUG   :     #02 pc 00027205  /system/lib/libc.so (raise+36)
09-08 02:43:01.016   102   102 F DEBUG   :     #03 pc 000209e4  /system/lib/libc.so (abort+80)
09-08 02:43:01.016   102   102 F DEBUG   :     #04 pc 007d634b  /data/app/io.realm.test-1/lib/x86/librealm-jni.so (please_report_this_error_to_help_at_realm_dot_io+23)
09-08 02:43:01.016   102   102 F DEBUG   :     #05 pc 007d6477  /data/app/io.realm.test-1/lib/x86/librealm-jni.so (realm::util::terminate_internal(std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&)+244)
09-08 02:43:01.016   102   102 F DEBUG   :     #06 pc 007d6614  /data/app/io.realm.test-1/lib/x86/librealm-jni.so (realm::util::terminate(char const*, char const*, long, std::initializer_list<realm::util::Printable>&&)+224)
09-08 02:43:01.016   102   102 F DEBUG   :     #07 pc 00342b3f  /data/app/io.realm.test-1/lib/x86/librealm-jni.so (realm::sync::create_object(realm::sync::TableInfoCache const&, realm::Table&)+109)
09-08 02:43:01.016   102   102 F DEBUG   :     #08 pc 0022c60d  /data/app/io.realm.test-1/lib/x86/librealm-jni.so (Java_io_realm_internal_OsObject_nativeCreateRow+76)
09-08 02:43:01.016   102   102 F DEBUG   :     #09 pc 0179d206  /data/app/io.realm.test-1/oat/x86/base.odex (offset 0xd35000) (long io.realm.internal.OsObject.nativeCreateRow(long, long)+138)
09-08 02:43:01.016   102   102 F DEBUG   :     #10 pc 0179b3bc  /data/app/io.realm.test-1/oat/x86/base.odex (offset 0xd35000) (long io.realm.internal.OsObject.createRow(io.realm.internal.Table)+192)
09-08 02:43:01.016   102   102 F DEBUG   :     #11 pc 0107ffa2  /data/app/io.realm.test-1/oat/x86/base.odex (offset 0xd35000) (void io.realm.internal.PrimaryKeyTests.removingPrimaryKeyRemovesConstraint_typeSetters()+598)
09-08 02:43:01.016   102   102 F DEBUG   :     #12 pc 00137a82  /system/lib/libart.so (art_quick_invoke_stub+338)
09-08 02:43:01.016   102   102 F DEBUG   :     #13 pc 001435c4  /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+212)
09-08 02:43:01.016   102   102 F DEBUG   :     #14 pc 0050ec38  /system/lib/libart.so (art::InvokeMethod(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned int)+1736)
09-08 02:43:01.017   102   102 F DEBUG   :     #15 pc 0048b9c3  /system/lib/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobject*)+80)
09-08 02:43:01.017   102   102 F DEBUG   :     #16 pc 738a8ca4  /data/dalvik-cache/x86/system@framework@boot.oat (offset 0x1eb6000)
09-08 02:43:01.166   102   102 F DEBUG   :
09-08 02:43:01.166   102   102 F DEBUG   : Tombstone written to: /data/tombstones/tombstone_08
09-08 02:43:01.166   102   102 E DEBUG   : AM write failed: Broken pipe
09-08 02:43:01.167   658   681 I BootReceiver: Copying /data/tombstones/tombstone_08 to DropBox (SYSTEM_TOMBSTONE)
09-08 02:43:01.171   658  2811 W ActivityManager: Error in app io.realm.test running instrumentation ComponentInfo{io.realm.test/android.support.test.runner.AndroidJUnitRunner}:
09-08 02:43:01.171   658  2811 W ActivityManager:   Native crash
09-08 02:43:01.171   658  2811 W ActivityManager:   Native crash: Aborted

@cmelchior cmelchior changed the base branch from master to feature/rxjava2 September 11, 2017 08:37
@cmelchior cmelchior changed the base branch from feature/rxjava2 to master September 11, 2017 08:38
@cmelchior cmelchior changed the base branch from master to feature/rxjava2 September 11, 2017 08:41
@cmelchior cmelchior changed the base branch from feature/rxjava2 to master September 11, 2017 08:41
Copy link
Contributor

@cmelchior cmelchior left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beside comments 👍
Also ❤️ lamdas

}

@Override
public void onPause() {
subscriptions.unsubscribe();
disposables.dispose();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most people seem to think that disposables.clear() is the better to use: https://blog.kaush.co/2017/06/21/rxjava-1-rxjava-2-disposing-subscriptions/

Same in other places

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you do disposables = null afterwards and re-create it when it is null then dispose() also works well.

clear() means you can re-use it, but you don't have to if you don't want to

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will try to reuse disposables.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dunno, I tend to just use dispose() and be like whatever, it really depends on if you want to re-use them. For example, in Fragments, it might be safer to use clear() unless you do re-create the composite disposable.

})
private Disposable testSubscribeOn() {
Disposable subscribeOn = realm.asFlowable()
.map(realm -> realm.where(Person.class).findAllSorted("name").get(0))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure why this was added?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well it was already there 😄

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll remove that map operator and there are still weird things in example such as a useless button and other subtle things.

Copy link
Contributor Author

@dalinaum dalinaum Sep 12, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The intent of testSubscribeOn seems to show that if Realm was created on the UI thread and accessing it on Schedulers.io() will crash. So I think I would not change this.

@dalinaum
Copy link
Contributor Author

Link to PR #5197

@dalinaum
Copy link
Contributor Author

@cmelchior @Zhuinden Just updated this PR.
Please review this @realm/java

Copy link
Contributor

@cmelchior cmelchior left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You also forgot a uncommented line in the JenkinsFile I think https://github.com/realm/realm-java/blob/master/Jenkinsfile#L54

@Zhuinden
Copy link
Contributor

Looks good to me 👍

@dalinaum dalinaum merged commit 9ac6893 into master Sep 12, 2017
@dalinaum dalinaum deleted the lk/rxjava2-examples branch September 12, 2017 12:55
GulajavaMinistudio added a commit to GulajavaMinistudio/realm-java that referenced this pull request Sep 13, 2017
Converting examples to RxJava2 (realm#5141)
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants