NetworkOnMainThreadException from ChangeTracker crashing Android app

70 views
Skip to first unread message

Suresh Joshi

unread,
Aug 25, 2014, 3:53:50 PM8/25/14
to mobile-c...@googlegroups.com
Hi all, I wasn't sure whether this goes in the forum or on Github, but I'll try here.

We're using 'com.couchbase.lite:couchbase-lite-android:1.0.1-19', Android Studio 0.8.6, gradle 0.12.2, and I'm testing on a Nexus 7 (version 4.4.3, build KTU84L)

I'm getting a lot of NetworkOnMainThreadExceptions from the CBL ChangeTracker (stack trace below). I don't know if this is an issue with CBL or how we're using it (a few live queries under the hood). I saw buried in a Github issue mention of this from a few months ago, and something about Puller.goOnline and Puller.goOffline,and needing to do a db==null check.

Please advise, thanks!
-SJ

08-25 14:26:22.718  12203-12203/com.pushstrength.android E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: com.pushstrength.android, PID: 12203
    java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.conn.CONNECTIVITY_CHANGE flg=0x4000010 (has extras) } in com.couchbase.lite.android.AndroidNetworkReachabilityManager$ConnectivityBroadcastReceiver@424eb610
            at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:769)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5001)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: android.os.NetworkOnMainThreadException
            at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1145)
            at com.android.org.conscrypt.OpenSSLSocketImpl.close(OpenSSLSocketImpl.java:1009)
            at org.apache.http.impl.SocketHttpClientConnection.shutdown(SocketHttpClientConnection.java:183)
            at org.apache.http.impl.conn.DefaultClientConnection.shutdown(DefaultClientConnection.java:150)
            at org.apache.http.impl.conn.AbstractPooledConnAdapter.shutdown(AbstractPooledConnAdapter.java:169)
            at org.apache.http.impl.conn.AbstractClientConnAdapter.abortConnection(AbstractClientConnAdapter.java:378)
            at org.apache.http.client.methods.HttpRequestBase.abort(HttpRequestBase.java:159)
            at com.couchbase.lite.replicator.ChangeTracker.stop(ChangeTracker.java:423)
            at com.couchbase.lite.replicator.Puller.goOffline(Puller.java:798)
            at com.couchbase.lite.replicator.Replication.networkUnreachable(Replication.java:1609)
            at com.couchbase.lite.NetworkReachabilityManager.notifyListenersNetworkUneachable(NetworkReachabilityManager.java:58)
            at com.couchbase.lite.android.AndroidNetworkReachabilityManager$ConnectivityBroadcastReceiver.onReceive(AndroidNetworkReachabilityManager.java:84)
            at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:759)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5001)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
            at dalvik.system.NativeStart.main(Native Method)



Traun Leyden

unread,
Aug 25, 2014, 4:50:58 PM8/25/14
to mobile-c...@googlegroups.com
This sounds like https://github.com/couchbase/couchbase-lite-java-core/issues/274

Would you mind posting your details mentioned above to the ticket?





--
You received this message because you are subscribed to the Google Groups "Couchbase Mobile" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mobile-couchba...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mobile-couchbase/2573aadd-0e28-4f9c-8ede-282afe559c32%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Suresh Joshi

unread,
Aug 25, 2014, 6:59:33 PM8/25/14
to mobile-c...@googlegroups.com
Thanks, just did.
Reply all
Reply to author
Forward
0 new messages