Opened 17 months ago
Closed 16 months ago
#2595 closed defect (fixed)
ANR: executing service net.i2p.android/.router.service.RouterService
Reported by: | Meeh | Owned by: | zzz |
---|---|---|---|
Priority: | minor | Milestone: | 0.9.43 |
Component: | apps/android | Version: | 0.9.41 |
Keywords: | Cc: | zzz, idk | |
Parent Tickets: | Sensitive: | no |
Description
"main" prio=5 tid=1 Native | group="main" sCount=1 dsCount=0 obj=0x73ba8e40 self=0xb840f290 | sysTid=27002 nice=0 cgrp=default sched=0/0 handle=0xb6efbc00 | state=D schedstat=( 0 0 0 ) utm=91 stm=75 core=3 HZ=100 | stack=0xbe2be000-0xbe2c0000 stackSize=8MB | held mutexes= at libcore.io.Posix.rename (Native method) at libcore.io.BlockGuardOs.rename (BlockGuardOs.java:260) at java.io.File.renameTo (File.java:1029) at android.app.SharedPreferencesImpl.writeToFile (SharedPreferencesImpl.java:580) at android.app.SharedPreferencesImpl.-wrap2 (SharedPreferencesImpl.java) at android.app.SharedPreferencesImpl$2.run (SharedPreferencesImpl.java:515) - locked <0x06ea77b8> (a java.lang.Object) at android.app.SharedPreferencesImpl.enqueueDiskWrite (SharedPreferencesImpl.java:536) at android.app.SharedPreferencesImpl.-wrap0 (SharedPreferencesImpl.java) at android.app.SharedPreferencesImpl$EditorImpl.commit (SharedPreferencesImpl.java:458) at net.i2p.android.router.service.RouterService.saveState (RouterService.java:804) at net.i2p.android.router.service.RouterService.setState (RouterService.java:786) at net.i2p.android.router.service.RouterService.onStartCommand (RouterService.java:160) - locked <0x029f3991> (a java.lang.Object) at android.app.ActivityThread.handleServiceArgs (ActivityThread.java:3011) at android.app.ActivityThread.-wrap17 (ActivityThread.java) at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1443) at android.os.Handler.dispatchMessage (Handler.java:102) at android.os.Looper.loop (Looper.java:148) at android.app.ActivityThread.main (ActivityThread.java:5452) at java.lang.reflect.Method.invoke! (Native method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:781) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:671)
Change History (4)
comment:1 Changed 17 months ago by
comment:2 Changed 16 months ago by
Milestone: | undecided → 0.9.43 |
---|---|
Owner: | changed from Meeh to zzz |
Status: | new → accepted |
comment:3 Changed 16 months ago by
Add a subticket #2632 (ANR: executing service net.i2p.android/.router.service.RouterService?).
comment:4 Changed 16 months ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
In 4aa5b90701b61c9dd91a10fa7d12673e412502d7 to be 0.9.43
Note: See
TracTickets for help on using
tickets.
The fix would be to thread the state saving to get the I/O out of the UI thread. We have a similar dilemma over in i2ptunnel, where we're unsure whether to wait at all, wait for a while, or wait forever… and how to ensure consistency.