Tobi823 / ffupdater

FFUpdater: Updater for privacy friendly browser
https://f-droid.org/en/packages/de.marmaro.krt.ffupdater
GNU General Public License v3.0
687 stars 33 forks source link

backgound job crash - cant find latest update #421

Closed c33s closed 1 year ago

c33s commented 1 year ago

Stacktrace:

de.marmaro.krt.ffupdater.background.BackgroundException: The background job fails due to an unrecoverable exception.
    at de.marmaro.krt.ffupdater.BackgroundJob.handleDoWorkException(BackgroundJob.kt:97)
    at de.marmaro.krt.ffupdater.BackgroundJob.access$handleDoWorkException(BackgroundJob.kt:52)
    at de.marmaro.krt.ffupdater.BackgroundJob$doWork$2.invokeSuspend(BackgroundJob.kt:86)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: de.marmaro.krt.ffupdater.network.exceptions.NetworkException: Can't find latest update for ICERAVEN
    at de.marmaro.krt.ffupdater.app.impl.AppBase.findAppUpdateStatus(AppBase.kt:109)
    at de.marmaro.krt.ffupdater.app.impl.AppBase$findAppUpdateStatus$1.invokeSuspend(AppBase.kt:0)
    ... 6 more
Device information: Key Value
FFUpdater version 77.7.14 (140) release
Device unknown (unknown, unknown, unknown)
Manufacturer unknown (unknown)
Supported ABIs arm64-v8a, armeabi-v7a, armeabi
Android version 9 (SDK: 28)
OS unknown, unknown, unknown, 0
c33s commented 1 year ago

it happened again, the phones internet/network connections where all disabled. as far as i can remember the connections where also disabled last time, so i assume that the problem could be a network connection attempt of the background updater where no connection is available. looks like it coukd be solved by checking if a connection is possible before.

Stacktrace:

de.marmaro.krt.ffupdater.background.BackgroundException: The background job fails due to an unrecoverable exception.
    at de.marmaro.krt.ffupdater.BackgroundJob.handleDoWorkException(BackgroundJob.kt:97)
    at de.marmaro.krt.ffupdater.BackgroundJob.access$handleDoWorkException(BackgroundJob.kt:52)
    at de.marmaro.krt.ffupdater.BackgroundJob$doWork$2.invokeSuspend(BackgroundJob.kt:86)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: de.marmaro.krt.ffupdater.network.exceptions.NetworkException: Can't find latest update for ICERAVEN
    at de.marmaro.krt.ffupdater.app.impl.AppBase.findAppUpdateStatus(AppBase.kt:109)
    at de.marmaro.krt.ffupdater.app.impl.AppBase$findAppUpdateStatus$1.invokeSuspend(AppBase.kt:0)
    ... 6 more
Device information: Key Value
FFUpdater version 77.7.14 (140) release
Device unknown (unknown, unknown, unknown)
Manufacturer unknown (unknown)
Supported ABIs arm64-v8a, armeabi-v7a, armeabi
Android version 9 (SDK: 28)
OS unknown, unknown, unknown, 0
Tobi823 commented 1 year ago

The stacktrace unfortunately does not contain enough information to fix the error. But I improve the error handling (again) and the background update check. I hope that this error is fixed in 78.0.4

c33s commented 1 year ago

hope this trace does help. i think the problem is that ffupdater tries to make an net connection even when mobile data and wlan are deactivated.

Stacktrace:

de.marmaro.krt.ffupdater.background.BackgroundException: The background job fails due to an unrecoverable exception.
    at de.marmaro.krt.ffupdater.background.BackgroundWork.doWork(BackgroundWork.kt:103)
    at de.marmaro.krt.ffupdater.background.BackgroundWork$doWork$1.invokeSuspend(BackgroundWork.kt:0)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: de.marmaro.krt.ffupdater.network.exceptions.NetworkException: can't find latest update for ICERAVEN.
    at de.marmaro.krt.ffupdater.app.impl.base.InstalledAppStatusFetcher$DefaultImpls.findInstalledAppStatus(InstalledAppStatusFetcher.kt:34)
    at de.marmaro.krt.ffupdater.app.impl.base.InstalledAppStatusFetcher$findInstalledAppStatus$1.invokeSuspend(InstalledAppStatusFetcher.kt:0)
    ... 6 more
Caused by: de.marmaro.krt.ffupdater.network.exceptions.NetworkException: Request of HTTP-API https://api.github.com/repos/fork-maintainers/iceraven-browser/releases/latest failed.
    at de.marmaro.krt.ffupdater.network.file.FileDownloader$downloadWithCache$2.invokeSuspend(FileDownloader.kt:110)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)
    at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)
    ... 4 more
Caused by: java.net.UnknownHostException: Unable to resolve host "api.github.com": No address associated with hostname
    at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:157)
    at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:105)
    at java.net.InetAddress.getAllByName(InetAddress.java:1154)
    at okhttp3.Dns$Companion$DnsSystem.lookup(Dns.kt:49)
    at okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress(RouteSelector.kt:169)
    at okhttp3.internal.connection.RouteSelector.nextProxy(RouteSelector.kt:131)
    at okhttp3.internal.connection.RouteSelector.next(RouteSelector.kt:73)
    at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:205)
    at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
    at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
    at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
    at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
    at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
    at java.lang.Thread.run(Thread.java:764)
Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
    at libcore.io.Linux.android_getaddrinfo(Native Method)
    at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:172)
    at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:137)
    ... 23 more

Logs:

de.marmaro.krt.ffupdater.background.BackgroundException: The background job fails due to an unrecoverable exception.
    at de.marmaro.krt.ffupdater.background.BackgroundWork.doWork(BackgroundWork.kt:103)
    at de.marmaro.krt.ffupdater.background.BackgroundWork$doWork$1.invokeSuspend(BackgroundWork.kt:0)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: de.marmaro.krt.ffupdater.network.exceptions.NetworkException: can't find latest update for ICERAVEN.
    at de.marmaro.krt.ffupdater.app.impl.base.InstalledAppStatusFetcher$DefaultImpls.findInstalledAppStatus(InstalledAppStatusFetcher.kt:34)
    at de.marmaro.krt.ffupdater.app.impl.base.InstalledAppStatusFetcher$findInstalledAppStatus$1.invokeSuspend(InstalledAppStatusFetcher.kt:0)
    ... 6 more
Caused by: de.marmaro.krt.ffupdater.network.exceptions.NetworkException: Request of HTTP-API https://api.github.com/repos/fork-maintainers/iceraven-browser/releases/latest failed.
    at de.marmaro.krt.ffupdater.network.file.FileDownloader$downloadWithCache$2.invokeSuspend(FileDownloader.kt:110)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
    at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)
    at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)
    ... 4 more
Caused by: java.net.UnknownHostException: Unable to resolve host "api.github.com": No address associated with hostname
    at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:157)
    at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:105)
    at java.net.InetAddress.getAllByName(InetAddress.java:1154)
    at okhttp3.Dns$Companion$DnsSystem.lookup(Dns.kt:49)
    at okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress(RouteSelector.kt:169)
    at okhttp3.internal.connection.RouteSelector.nextProxy(RouteSelector.kt:131)
    at okhttp3.internal.connection.RouteSelector.next(RouteSelector.kt:73)
    at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:205)
    at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
    at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
    at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
    at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
    at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
    at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
    at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
    at java.lang.Thread.run(Thread.java:764)
Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
    at libcore.io.Linux.android_getaddrinfo(Native Method)
    at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:172)
    at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:137)
    ... 23 more
Device information: Key Value
FFUpdater version 78.1.1 (150) release F-Droid/other
Device unknown (unknown, unknown, unknown)
Manufacturer unknown (unknown)
Supported ABIs arm64-v8a, armeabi-v7a, armeabi
Android version 9 (SDK: 28)
OS unknown, unknown, unknown, 0