-
Notifications
You must be signed in to change notification settings - Fork 39
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
com.optimizely.ab.android.datafile_handler.DatafileService - ANR #294
Comments
@akhilmohan , thank you for reporting this. A ANR is not a crash. The app is not responding. In this case, if there is a problem with your data connection and datafile polling is enabled, it could be that the data file service was waiting to long for the cdn response. Right now, our timeout is 5 seconds. Can you tell us anything else about the issue such as what other threads might be doing at the time or the state of your app at the time? Thank you again. I would also recommend updating to the latest version of the SDK. |
We also have bunch of ANR's reported. Looks all are android 6.0 version. Play console shows me this warning:
|
@pragyagrawal can you update to the latest SDK? We are on 3.1 now and releasing 3.2 soon. |
@thomaszurkan-optimizely I'm having issues with a different looking ANR log for DatafileService. I've run it across Android 8, 9, and 10 with the same result. The app stalls out on an ANR when the app boots up while the phone is in Airplane mode. To reproduce:
|
@thomaszurkan-optimizely we are experiencing these ANRs with SDK 3.2.1 in our app. I noticed that the linked fix #295 for this will only modify the JobService scheduling on Oreo and later devices, not those using AlarmManager (see We have only started seeing these ANRs since we enabled datafile polling recently. It appears that on devices < Oreo our app process will be restarted every datafile polling period, even if the app has been terminated by the OS. There are some rare cases where our app will ANR during the initialisation of the app, and it seems that the frequency of these ANRs has increased because the datafile service is being triggered by AlarmManager, which is starting the app in the background. |
@fingertricks we believe these should be completely cleared up with the latest release 3.5.2. |
Hi,
We found an issue in our production app. There are multiple occurrences of ANR being reported.
SDK version: 2.1.0
Below is the stack trace of the crash,
`
executing service com.myapp.prod/com.optimizely.ab.android.datafile_handler.DatafileService
com.optimizely.ab.android.datafile_handler.DatafileService
group="main" sCount=1 dsCount=0 obj=0x761a2298 self=0xb47a4500
sysTid=19837 nice=0 cgrp=apps sched=0/0 handle=0xb6f4eb4c
state=S schedstat=( 2908414587 1901277872 7208 ) utm=151 stm=139 core=3 HZ=100
stack=0xbe0d6000-0xbe0d8000 stackSize=8MB
held mutexes=at java.lang.Object.wait! (Native method)waiting on <0x070ae6c0> (a java.lang.Object)at java.lang.Thread.parkFor$ (Thread.java:1220)locked <0x070ae6c0> (a java.lang.Object)at sun.misc.Unsafe.park (Unsafe.java:299)at java.util.concurrent.locks.LockSupport.park (LockSupport.java:158)at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt (AbstractQueuedSynchronizer.java:810)at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly (AbstractQueuedSynchronizer.java:970)at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly (AbstractQueuedSynchronizer.java:1278)at java.util.concurrent.CountDownLatch.await (CountDownLatch.java:203)at android.app.SharedPreferencesImpl$EditorImpl$1.run (SharedPreferencesImpl.java:366)at android.app.QueuedWork.waitToFinish (QueuedWork.java:88)at android.app.ActivityThread.handleServiceArgs (ActivityThread.java:4068)at android.app.ActivityThread.access$2400 (ActivityThread.java:221)at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1897)at android.os.Handler.dispatchMessage (Handler.java:102)at android.os.Looper.loop (Looper.java:158)at android.app.ActivityThread.main (ActivityThread.java:7225)at java.lang.reflect.Method.invoke! (Native method)at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)"FinalizerWatchdogDaemon" tid=6 Sleeping "FinalizerWatchdogDaemon" daemon prio=5 tid=6 Sleeping
group="system" sCount=1 dsCount=0 obj=0x32c0d220 self=0xad918800
sysTid=19848 nice=0 cgrp=apps sched=0/0 handle=0xb341d930
state=S schedstat=( 1293228 15132450 9 ) utm=0 stm=0 core=0 HZ=100
stack=0xb331b000-0xb331d000 stackSize=1038KB
held mutexes=at java.lang.Thread.sleep! (Native method)sleeping on <0x0eee4d9f> (a java.lang.Object)at java.lang.Thread.sleep (Thread.java:1031)locked <0x0eee4d9f> (a java.lang.Object)at java.lang.Thread.sleep (Thread.java:985)at java.lang.Daemons$FinalizerWatchdogDaemon.sleepFor (Daemons.java:273)at java.lang.Daemons$FinalizerWatchdogDaemon.waitForFinalization (Daemons.java:284)at java.lang.Daemons$FinalizerWatchdogDaemon.run (Daemons.java:232)at java.lang.Thread.run (Thread.java:818)
`
Can someone shed some light on this ANR log?
The text was updated successfully, but these errors were encountered: