ground-android icon indicating copy to clipboard operation
ground-android copied to clipboard

App Crash - While Downloading Area

Open anandwana001 opened this issue 1 year ago • 0 comments

Describe the bug Unusual crash, as this is not because of the app, but more of a third party. Need to figure out how we can prevent such cases.

Process: com.google.android.ground, PID: 16770
java.net.SocketTimeoutException: timeout
at com.android.okhttp.okio.Okio$3.newTimeoutException(Okio.java:214)
at com.android.okhttp.okio.AsyncTimeout.exit(AsyncTimeout.java:263)
at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:217)
at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307)
at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301)
at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197)
at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188)
at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129)
at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750)
at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542)
at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106)
at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30)
at com.google.android.ground.ui.map.gms.mog.UrlInputStream.openStream(UrlInputStream.kt:47)
at com.google.android.ground.ui.map.gms.mog.UrlInputStream.<init>(UrlInputStream.kt:36)
at com.google.android.ground.ui.map.gms.mog.MogClient$getTiles$2.invokeSuspend(MogClient.kt:118)
at com.google.android.ground.ui.map.gms.mog.MogClient$getTiles$2.invoke(Unknown Source:8)
at com.google.android.ground.ui.map.gms.mog.MogClient$getTiles$2.invoke(Unknown Source:4)
at kotlinx.coroutines.flow.SafeFlow.collectSafely(Builders.kt:61)
at kotlinx.coroutines.flow.AbstractFlow.collect(Flow.kt:230)
at kotlinx.coroutines.flow.FlowKt__CollectKt.emitAll(Collect.kt:109)
at kotlinx.coroutines.flow.FlowKt.emitAll(Unknown Source:1)
at com.google.android.ground.ui.map.gms.mog.MogClient$getTiles$1.invokeSuspend(MogClient.kt:109)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@c510a87, Dispatchers.IO]
Caused by: java.net.SocketException: socket is closed
at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket$SSLInputStream.read(:com.google.android.gms@[email protected] (190400-661292151):15)
at com.android.okhttp.okio.Okio$2.read(Okio.java:138)
at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213)
... 30 more
2024-08-22 12:57:44.618 16770-17415 JavaUrlRequest          com.google.android.ground            E  Exception when closing OutputChannel (Ask Gemini)
java.net.ProtocolException: unexpected end of stream
at com.android.okhttp.internal.http.Http1xStream$FixedLengthSink.close(Http1xStream.java:302)
at com.android.okhttp.okio.RealBufferedSink.close(RealBufferedSink.java:242)
at com.android.okhttp.okio.RealBufferedSink$1.close(RealBufferedSink.java:210)
at java.nio.channels.Channels$WritableByteChannelImpl.implCloseChannel(Channels.java:481)
at java.nio.channels.spi.AbstractInterruptibleChannel.close(AbstractInterruptibleChannel.java:113)
at org.chromium.net.impl.JavaUrlRequest$OutputStreamDataSink.k(:com.google.android.gms.policy_maps_core_dynamite@[email protected]:17)
at org.chromium.net.impl.JavaUrlRequest$$ExternalSyntheticLambda10.run(:com.google.android.gms.policy_maps_core_dynamite@[email protected]:9)
at org.chromium.net.impl.JavaUrlRequest$SerializingExecutor.a(:com.google.android.gms.policy_maps_core_dynamite@[email protected]:30)
at org.chromium.net.impl.JavaUrlRequest$SerializingExecutor$$ExternalSyntheticLambda0.run(:com.google.android.gms.policy_maps_core_dynamite@[email protected]:3)
at org.chromium.net.impl.JavaUrlRequest$$ExternalSyntheticLambda14.run(:com.google.android.gms.policy_maps_core_dynamite@[email protected]:21)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at org.chromium.net.impl.JavaCronetEngine$1$1.run(:com.google.android.gms.policy_maps_core_dynamite@[email protected]:19)
at java.lang.Thread.run(Thread.java:1012)

To Reproduce Steps to reproduce the behavior:

  1. Go to Offline Imagary
  2. Select a region and Download
  3. See error

Expected behavior App should not crash

Actual behavior App Crash

anandwana001 avatar Aug 22 '24 07:08 anandwana001