Timeout in BinderProxy.finalize?

4,739 views
Skip to first unread message

Boyan Vladinov

unread,
Jul 22, 2013, 1:48:48 PM7/22/13
to android-...@googlegroups.com
What are the possible reasons for this timeout in system_server VM:

06-24 00:22:44.837 E/AndroidRuntime( 717): *** FATAL EXCEPTION IN SYSTEM PROCESS: FinalizerWatchdogDaemon
06-24 00:22:44.837 E/AndroidRuntime( 717): java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize() timed out after 10 seconds
06-24 00:22:44.837 E/AndroidRuntime( 717): at android.os.BinderProxy.destroy(Native Method)
06-24 00:22:44.837 E/AndroidRuntime( 717): at android.os.BinderProxy.finalize(Binder.java:422)
06-24 00:22:44.837 E/AndroidRuntime( 717): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:187)
06-24 00:22:44.837 E/AndroidRuntime( 717): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
06-24 00:22:44.837 E/AndroidRuntime( 717): at java.lang.Thread.run(Thread.java:856)

Android version:
[ro.build.version.release]: [4.2.2]
[ro.build.version.sdk]: [17]

Kernel=3.4.34

Daniele Solinas

unread,
Nov 14, 2013, 10:24:49 AM11/14/13
to android-...@googlegroups.com
I don't know the reason for this fatal exception, but I encountered this using the JavaMail library, in particular by conducting multiple consecutive parallel access to my e-mail account.
The exception is the following:

FATAL EXCEPTION : FinalizerWatchdogDaemon
java.util.concurrent.TimeoutException : com.sun.mail.imap.IMAPSSLStore.finalize () timed out after 10 seconds
at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_read ( Native Method )
at
at com.sun.mail.util.TraceInputStream.read ( TraceInputStream.java : 110)
at java.io.InputStream.read ( InputStream.java : 163)
at java.io.BufferedInputStream.fillbuf ( BufferedInputStream.java : 142 )
at java.io.BufferedInputStream.read ( BufferedInputStream.java : 227 )
at com.sun.mail.iap.ResponseInputStream.readResponse ( ResponseInputStream.java : 98 )
at com.sun.mail.iap.Response . <init> ( Response.java : 96 )
at com.sun.mail.imap.protocol.IMAPResponse . <init> ( IMAPResponse.java : 61)
at com.sun.mail.imap.protocol.IMAPResponse.readResponse ( IMAPResponse.java : 135)
at com.sun.mail.imap.protocol.IMAPProtocol.readResponse ( IMAPProtocol.java : 261 )
at com.sun.mail.iap.Protocol.command ( Protocol.java : 310)
at com.sun.mail.imap.protocol.IMAPProtocol.logout ( IMAPProtocol.java : 311 )
at com.sun.mail.imap.IMAPStore.close ( IMAPStore.java 1217 )
at com.sun.mail.imap.IMAPStore.finalize ( IMAPStore.java : 1229 )
at java.lang.Daemons $ FinalizerDaemon.doFinalize ( Daemons.java : 187 )
java.lang.Daemons at $ FinalizerDaemon.run ( Daemons.java : 170)
at java.lang.Thread.run ( Thread.java : 841 )

Currently I have not found a solution, and on the web is shortly the topic discussed.
I hope someone can help me or can help us.

Android version:
release: 4.3
sdk: 18

Alan W.

unread,
Jun 26, 2014, 1:10:47 PM6/26/14
to android-...@googlegroups.com
We are also seeing this across multiple versions of our app, across OS versions from 4.1.1 to 4.4.3 but 80% on 4.3, across many devices (GT-19300 is the top device but it's unknown if this is Samsung specific), and in most countries.

There are related TimeoutExceptions in other finalize() methods and I think they all make native calls.

java.util.concurrent.TimeoutException: org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImplWrapper.finalize() timed out after 10 seconds
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:401)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:102)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:73)
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
    at java.lang.Thread.run(Thread.java:841)

java.util.concurrent.TimeoutException: java.net.PlainSocketImpl.finalize() timed out after 10 seconds
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:401)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:102)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:73)
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
    at java.lang.Thread.run(Thread.java:841)

java.util.concurrent.TimeoutException: libcore.icu.NativeDecimalFormat.finalize() timed out after 10 seconds
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:401)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:102)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:73)
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
    at java.lang.Thread.run(Thread.java:841)

java.util.concurrent.TimeoutException: java.util.zip.Inflater.finalize() timed out after 10 seconds
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:401)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:102)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:73)
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
    at java.lang.Thread.run(Thread.java:856)


java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize() timed out after 10 seconds
    at android.os.BinderProxy.destroy(Native Method)
    at android.os.BinderProxy.finalize(Binder.java:459)
    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:187)
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
    at java.lang.Thread.run(Thread.java:841)

java.util.concurrent.TimeoutException: com.android.internal.os.BinderInternal$GcWatcher.finalize() timed out after 10 seconds
    at java.lang.ref.Reference.<init>(Reference.java:142)
    at java.lang.ref.FinalizerReference.<init>(FinalizerReference.java:42)
    at java.lang.ref.FinalizerReference.add(FinalizerReference.java:54)
    at com.android.internal.os.BinderInternal$GcWatcher.<init>(BinderInternal.java:42)
    at com.android.internal.os.BinderInternal$GcWatcher.finalize(BinderInternal.java:47)
    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:187)
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
    at java.lang.Thread.run(Thread.java:841)

Related links

* https://plus.google.com/110056285015864219461/posts/Jf2VZXTm5To
* https://bugzilla.mozilla.org/show_bug.cgi?id=886985
* http://www.fasterj.com/articles/finalizer2.shtml
* http://www.slideshare.net/DroidConTLV/android-crash-analysis-and-the-dalvik-garbage-collector-tools-and-tips

As the others have said, any help is appreciated.

Alan

Boyan Vladinov

unread,
Jul 2, 2014, 2:53:51 AM7/2/14
to android-...@googlegroups.com
Please check out all of your finalize() methods:  http://developer.android.com/reference/java/lang/Object.html#finalize%28%29

Don't do expensive calls in your fianlize() methods

Second reason for this is CPU starvation. Check whether your process is scheduled at all

Thanks!

Navruzbek Akhmedov

unread,
Sep 18, 2015, 10:40:05 AM9/18/15
to android-platform
I have faced such kinda exceptions:

1) --------- beginning of crash
E/AndroidRuntime( 9954): FATAL EXCEPTION: FinalizerWatchdogDaemon
E/AndroidRuntime( 9954): Process: com.shazzle.homebridge, PID: 9954
E/AndroidRuntime( 9954): java.util.concurrent.TimeoutException: com.sun.mail.pop3.POP3SSLStore.finalize() timed out after 10 seconds
E/AndroidRuntime( 9954): at com.android.org.conscrypt.NativeCrypto.SSL_read(Native Method)
E/AndroidRuntime( 9954): at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:674)
E/AndroidRuntime( 9954): at java.io.InputStream.read(InputStream.java:162)
E/AndroidRuntime( 9954): at java.io.BufferedInputStream.fillbuf(BufferedInputStream.java:149)
E/AndroidRuntime( 9954): at java.io.BufferedInputStream.read(BufferedInputStream.java:234)
E/AndroidRuntime( 9954): at java.io.PushbackInputStream.read(PushbackInputStream.java:146)
E/AndroidRuntime( 9954): at java.io.DataInputStream.readLine(DataInputStream.java:116)
E/AndroidRuntime( 9954): at com.sun.mail.pop3.Protocol.simpleCommand(Protocol.java:413)
E/AndroidRuntime( 9954): at com.sun.mail.pop3.Protocol.quit(Protocol.java:212)
E/AndroidRuntime( 9954): at com.sun.mail.pop3.POP3Store.close(POP3Store.java:260)
E/AndroidRuntime( 9954): at com.sun.mail.pop3.POP3Store.finalize(POP3Store.java:292)
E/AndroidRuntime( 9954): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:190)
E/AndroidRuntime( 9954): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:173)
E/AndroidRuntime( 9954): at java.lang.Thread.run(Thread.java:818)


------------------------------------------------------------------------------------------------------------------------------------

2) E/AndroidRuntime(32305): FATAL EXCEPTION: FinalizerWatchdogDaemon
E/AndroidRuntime(32305): Process: com.shazzle.homebridge, PID: 32305
E/AndroidRuntime(32305): java.util.concurrent.TimeoutException: com.sun.mail.pop3.Protocol.finalize() timed out after 10 seconds
E/AndroidRuntime(32305): at com.android.org.conscrypt.NativeCrypto.SSL_read(Native Method)
E/AndroidRuntime(32305): at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:746)
E/AndroidRuntime(32305): at java.io.InputStream.read(InputStream.java:162)
E/AndroidRuntime(32305): at java.io.BufferedInputStream.fillbuf(BufferedInputStream.java:142)
E/AndroidRuntime(32305): at java.io.BufferedInputStream.read(BufferedInputStream.java:227)
E/AndroidRuntime(32305): at java.io.PushbackInputStream.read(PushbackInputStream.java:146)
E/AndroidRuntime(32305): at java.io.DataInputStream.readLine(DataInputStream.java:116)
E/AndroidRuntime(32305): at com.sun.mail.pop3.Protocol.simpleCommand(Protocol.java:413)
E/AndroidRuntime(32305): at com.sun.mail.pop3.Protocol.quit(Protocol.java:212)
E/AndroidRuntime(32305): at com.sun.mail.pop3.Protocol.finalize(Protocol.java:133)
E/AndroidRuntime(32305): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:187)
E/AndroidRuntime(32305): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:170)
E/AndroidRuntime(32305): at java.lang.Thread.run(Thread.java:841)
------------------------------------------------------------------------------------------------------------------------------------


------------------------------------------------------------------------------------------------------------------------------------
Reply all
Reply to author
Forward
0 new messages