Skip to content
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

UNAVAILABLE: Unable to resolve host #8860

Closed
ghost opened this issue Jan 22, 2022 · 4 comments
Closed

UNAVAILABLE: Unable to resolve host #8860

ghost opened this issue Jan 22, 2022 · 4 comments
Assignees
Labels

Comments

@ghost
Copy link

ghost commented Jan 22, 2022

build.gradle:

 implementation 'io.grpc:grpc-okhttp:1.33.1'
 implementation 'io.grpc:grpc-protobuf:1.33.1'
 implementation 'io.grpc:grpc-stub:1.33.1'

I have used ManagedChannel for grpc call in android:

fun provideGrpcChannel( host: String, port:Int) :  ManagedChannel {
        return OkHttpChannelBuilder.forAddress( host, port)
             .usePlaintext()
            .build()
}

I'm getting unable to resolve host in android when I'm opening the app from the background in some time. My network connection is good also HTTP requests are working by retrofit. The only problem is in the grpc call. After reopening the app everything is working fine as expected.

Is there any way to handle the above issue??

@ghost ghost added the question label Jan 22, 2022
@YifeiZhuang YifeiZhuang self-assigned this Jan 25, 2022
@YifeiZhuang
Copy link
Contributor

We might need more logs/strack traces to know the issue. I am suspecting dns resolution problems in your environment, or dns cache. If you can produce it again, could you provide more logs.

@larssn
Copy link

larssn commented Jan 26, 2022

@YifeiZhuang I'm seeing what is probably the same, in the context of https://github.com/firebase/firebase-android-sdk, which use gRPC.

With logging enabled, they seem to be doing the right thing:

  • When the app goes into standby the gRPC layer seems to fairly quickly detect that Android has killed the connection (probably to conserve power)
  • After leaving the device off for 5 minutes and turning on the screen again they log the following: I/Firestore(31596): (24.0.1) [AndroidConnectivityMonitor]: App has entered the foreground.
  • They then immediately attempt to write to the Firestore backend. However this continuously fails for up to several minutes (varies between 30sec and 2+ minutes).
  • Eventually the following is logged:
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Current gRPC connectivity state: CONNECTING
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Setting the connectivityAttemptTimer
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Current gRPC connectivity state: READY

after which they can succesfully send data to the backend again.

Here's the entire log of a session I just did. It took 57.818 seconds for it to realize that it was possible to connect:

The entire log, click to expand
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@69615c6a
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 575548000
I/Firestore(31596):     seconds: 1643223556
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\274\242\201\343\214\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Collect garbage
I/Firestore(31596): (24.0.1) [LruGarbageCollector]: Garbage collection skipped; Cache size 118784 is lower than threshold 104857600
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@13aa2227
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 586429000
I/Firestore(31596):     seconds: 1643223601
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Current gRPC connectivity state: CONNECTING
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Setting the connectivityAttemptTimer
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 475 ms (base delay: 1000 ms, delay with jitter: 507 ms, last attempt: 32 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Current gRPC connectivity state: TRANSIENT_FAILURE
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Clearing the connectivityAttemptTimer
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:124)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 1207 ms (base delay: 1500 ms, delay with jitter: 1563 ms, last attempt: 356 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:124)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 2263 ms (base delay: 2250 ms, delay with jitter: 2293 ms, last attempt: 30 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 3701 ms (base delay: 3375 ms, delay with jitter: 3733 ms, last attempt: 32 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 6400 ms (base delay: 5062 ms, delay with jitter: 6433 ms, last attempt: 33 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 8955 ms (base delay: 7593 ms, delay with jitter: 8983 ms, last attempt: 28 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 15554 ms (base delay: 11389 ms, delay with jitter: 15586 ms, last attempt: 32 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 9656 ms (base delay: 17083 ms, delay with jitter: 9687 ms, last attempt: 31 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 35151 ms (base delay: 25624 ms, delay with jitter: 35182 ms, last attempt: 31 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 33922 ms (base delay: 38436 ms, delay with jitter: 33954 ms, last attempt: 32 ms ago)
I/Firestore(31596): (24.0.1) [AndroidConnectivityMonitor]: App has entered the foreground.
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Locally write mutations
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 871 ms (base delay: 1000 ms, delay with jitter: 876 ms, last attempt: 5 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 1623 ms (base delay: 1500 ms, delay with jitter: 1630 ms, last attempt: 7 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 40887 ms (base delay: 57654 ms, delay with jitter: 40907 ms, last attempt: 20 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 1932 ms (base delay: 2250 ms, delay with jitter: 1954 ms, last attempt: 22 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 2420 ms (base delay: 3375 ms, delay with jitter: 2431 ms, last attempt: 11 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 5341 ms (base delay: 5062 ms, delay with jitter: 5363 ms, last attempt: 22 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 10072 ms (base delay: 7593 ms, delay with jitter: 10095 ms, last attempt: 23 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 12612 ms (base delay: 11389 ms, delay with jitter: 12622 ms, last attempt: 10 ms ago)
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 23690 ms (base delay: 17083 ms, delay with jitter: 23711 ms, last attempt: 21 ms ago)
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [OnlineStateTracker]: Could not reach Cloud Firestore backend. Connection failed 1 times. Most recent error: Status{code=UNAVAILABLE, description=Unable to resolve host firestore.googleapis.com, cause=java.lang.RuntimeException: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:223)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.doResolve(DnsNameResolver.java:282)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$Resolve.run(DnsNameResolver.java:318)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I/Firestore(31596): 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I/Firestore(31596): 	at java.lang.Thread.run(Thread.java:923)
I/Firestore(31596): Caused by: java.net.UnknownHostException: Unable to resolve host "firestore.googleapis.com": No address associated with hostname
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:156)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)
I/Firestore(31596): 	at java.net.InetAddress.getAllByName(InetAddress.java:1152)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver$JdkAddressResolver.resolveAddress(DnsNameResolver.java:631)
I/Firestore(31596): 	at io.grpc.internal.DnsNameResolver.resolveAddresses(DnsNameResolver.java:219)
I/Firestore(31596): 	... 5 more
I/Firestore(31596): Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
I/Firestore(31596): 	at libcore.io.Linux.android_getaddrinfo(Native Method)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at libcore.io.BlockGuardOs.android_getaddrinfo(BlockGuardOs.java:202)
I/Firestore(31596): 	at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:73)
I/Firestore(31596): 	at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:135)
I/Firestore(31596): 	... 9 more
I/Firestore(31596): }
I/Firestore(31596): This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
I/Firestore(31596): (24.0.1) [ExponentialBackoff]: Backing off for 62005 ms (base delay: 60000 ms, delay with jitter: 62021 ms, last attempt: 16 ms ago)
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Current gRPC connectivity state: CONNECTING
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Setting the connectivityAttemptTimer
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Current gRPC connectivity state: READY
I/Firestore(31596): (24.0.1) [GrpcCallProvider]: Clearing the connectivityAttemptTimer
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream is open
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@8c63ad3a
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [FirestoreCallCredentials]: Successfully fetched auth token.
I/Firestore(31596): (24.0.1) [FirestoreCallCredentials]: Firebase AppCheck API not available.
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream received headers: {date=Wed, 26 Jan 2022 19:03:01 GMT}
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream received: # com.google.firestore.v1.WriteResponse@cac5c480
I/Firestore(31596): stream_id: "0"
I/Firestore(31596): stream_token: "\031\020hB\002\201\364\265\265"
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Set stream token
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@c335069e
I/Firestore(31596): stream_token: "\031\020hB\002\201\364\265\265"
I/Firestore(31596): writes {
I/Firestore(31596):   update {
I/Firestore(31596):     fields {
I/Firestore(31596):       key: "local_timestamp"
I/Firestore(31596):       value {
I/Firestore(31596):         integer_value: 0
I/Firestore(31596):         timestamp_value {
I/Firestore(31596):           nanos: 245202000
I/Firestore(31596):           seconds: 1643223724
I/Firestore(31596):         }
I/Firestore(31596):       }
I/Firestore(31596):     }
I/Firestore(31596):     name: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   update_transforms {
I/Firestore(31596):     field_path: "server_timestamp"
I/Firestore(31596):     set_to_server_value: REQUEST_TIME
I/Firestore(31596):     set_to_server_value_value: 1
I/Firestore(31596):   }
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream received: # com.google.firestore.v1.WriteResponse@7c91c5de
I/Firestore(31596): commit_time {
I/Firestore(31596):   nanos: 116856000
I/Firestore(31596):   seconds: 1643223782
I/Firestore(31596): }
I/Firestore(31596): stream_token: "\020\001\031\020hB\002\201\364\265\265"
I/Firestore(31596): write_results {
I/Firestore(31596):   transform_results {
I/Firestore(31596):     integer_value: 0
I/Firestore(31596):     timestamp_value {
I/Firestore(31596):       nanos: 63000000
I/Firestore(31596):       seconds: 1643223782
I/Firestore(31596):     }
I/Firestore(31596):   }
I/Firestore(31596):   update_time {
I/Firestore(31596):     nanos: 116856000
I/Firestore(31596):     seconds: 1643223782
I/Firestore(31596):   }
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Acknowledge batch
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream is open
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream sending: # com.google.firestore.v1.ListenRequest@4eb33bb9
I/Firestore(31596): add_target {
I/Firestore(31596):   documents {
I/Firestore(31596):     documents: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596):   target_id: 2
I/Firestore(31596): }
I/Firestore(31596): database: "projects/tillty-repros/databases/(default)"
I/Firestore(31596): (24.0.1) [FirestoreCallCredentials]: Successfully fetched auth token.
I/Firestore(31596): (24.0.1) [FirestoreCallCredentials]: Firebase AppCheck API not available.
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received headers: {date=Wed, 26 Jan 2022 19:03:47 GMT}
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@72b7dc77
I/Firestore(31596): target_change {
I/Firestore(31596):   target_change_type: ADD
I/Firestore(31596):   target_change_type_value: 1
I/Firestore(31596):   target_ids: 2
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@13aa2227
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 586429000
I/Firestore(31596):     seconds: 1643223601
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\375\301\274\370\214\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@f3c078a8
I/Firestore(31596): document_change {
I/Firestore(31596):   document {
I/Firestore(31596):     create_time {
I/Firestore(31596):       nanos: 145467000
I/Firestore(31596):       seconds: 1642076333
I/Firestore(31596):     }
I/Firestore(31596):     fields {
I/Firestore(31596):       key: "server_timestamp"
I/Firestore(31596):       value {
I/Firestore(31596):         integer_value: 0
I/Firestore(31596):         timestamp_value {
I/Firestore(31596):           nanos: 63000000
I/Firestore(31596):           seconds: 1643223782
I/Firestore(31596):         }
I/Firestore(31596):       }
I/Firestore(31596):     }
I/Firestore(31596):     fields {
I/Firestore(31596):       key: "local_timestamp"
I/Firestore(31596):       value {
I/Firestore(31596):         integer_value: 0
I/Firestore(31596):         timestamp_value {
I/Firestore(31596):           nanos: 245202000
I/Firestore(31596):           seconds: 1643223724
I/Firestore(31596):         }
I/Firestore(31596):       }
I/Firestore(31596):     }
I/Firestore(31596):     name: "projects/tillty-repros/databases/(default)/documents/issues/6749"
I/Firestore(31596):     update_time {
I/Firestore(31596):       nanos: 116856000
I/Firestore(31596):       seconds: 1643223782
I/Firestore(31596):     }
I/Firestore(31596):   }
I/Firestore(31596):   target_ids: 2
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@bc691462
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 727277000
I/Firestore(31596):     seconds: 1643223827
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\255\207\247\344\215\320\365\002"
I/Firestore(31596):   target_change_type: CURRENT
I/Firestore(31596):   target_change_type_value: 3
I/Firestore(31596):   target_ids: 2
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@237820c7
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 727277000
I/Firestore(31596):     seconds: 1643223827
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\255\207\247\344\215\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Performing stream teardown
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Stream sending: # com.google.firestore.v1.WriteRequest@a9bc0ee4
I/Firestore(31596): stream_token: "\020\001\031\020hB\002\201\364\265\265"
I/Firestore(31596): (24.0.1) [WriteStream]: (c928fc5) Closing stream client-side
I/Firestore(31596): (24.0.1) [WriteStream]: stream callback skipped by CloseGuardedRunner.
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@8a1e49c3
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 738002000
I/Firestore(31596):     seconds: 1643223872
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\322\245\342\371\215\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Collect garbage
I/Firestore(31596): (24.0.1) [LruGarbageCollector]: Garbage collection skipped; Cache size 118784 is lower than threshold 104857600
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@c97ee3f4
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 749847000
I/Firestore(31596):     seconds: 1643223917
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\327\314\235\217\216\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@d008072e
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 760671000
I/Firestore(31596):     seconds: 1643223962
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\337\353\330\244\216\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@d433c4ba
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 771348000
I/Firestore(31596):     seconds: 1643224007
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\324\211\224\272\216\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@cee7d882
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 782255000
I/Firestore(31596):     seconds: 1643224052
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\257\251\317\317\216\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@dee93977
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 792783000
I/Firestore(31596):     seconds: 1643224097
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\217\306\212\345\216\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@e467e140
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 803289000
I/Firestore(31596):     seconds: 1643224142
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\331\342\305\372\216\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@24d85294
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 814086000
I/Firestore(31596):     seconds: 1643224187
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\306\201\201\220\217\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Collect garbage
I/Firestore(31596): (24.0.1) [LruGarbageCollector]: Garbage collection skipped; Cache size 118784 is lower than threshold 104857600
I/Firestore(31596): (24.0.1) [WatchStream]: (31f027b) Stream received: # com.google.firestore.v1.ListenResponse@8b7e7b90
I/Firestore(31596): target_change {
I/Firestore(31596):   read_time {
I/Firestore(31596):     nanos: 824811000
I/Firestore(31596):     seconds: 1643224232
I/Firestore(31596):   }
I/Firestore(31596):   resume_token: "\n\t\b\353\237\274\245\217\320\365\002"
I/Firestore(31596): }
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: Apply remote event
I/Firestore(31596): (24.0.1) [Persistence]: Starting transaction: notifyLocalViewChanges

Apologies for posting this here, but I believe this is primarily an issue with gRPC and not their SDK.

Also, I should mention that this behavior is disastrous in the context of a cloud database. It should always be able to connect immediately when coming out of standby. 😅

Ps. Here's the class that's doing the gRPC logging for posterity: https://github.com/firebase/firebase-android-sdk/blob/ac3276ce7d5f5181b1c419731495eb88a98537af/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/GrpcCallProvider.java

Pps. Here's an old but interesting issue that seems very related: #4028

@dapengzhang0
Copy link
Member

dapengzhang0 commented Jan 31, 2022

I'm getting unable to resolve host in android when I'm opening the app from the background in some time.

This might be related to #8850

@ejona86
Copy link
Member

ejona86 commented Feb 15, 2022

Closing since we know #8850 was very similar problem and it likely addressed this. The delay before detecting network is good is because the channel is doing retry attempts with exponential backoff. The exponential backoff maxes out at 2 minutes which seems to agree with the observed behavior. If the other fix turns out not to address this, comment and this can be reopened.

@ejona86 ejona86 closed this as completed Feb 15, 2022
@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 17, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants