android-emulator-runner icon indicating copy to clipboard operation
android-emulator-runner copied to clipboard

SocketException on downloading Gradle

Open AaronMT opened this issue 4 years ago • 1 comments

Hello,

With v2.21.0, I am occasionally seeing this failure to download Gradle. I don't know why this is happening or if there's anything that can be done here, but I am opening a ticket.

The emulator boots, and then fails on downloading Gradle.

Emulator booted.
203
/Users/runner/Library/Android/sdk/platform-tools/adb shell input keyevent 82
204
INFO    | boot completed
205
INFO    | boot time 139308 ms
206
INFO    | Increasing screen off timeout, logcat buffer size to 2M.
207
INFO    | Revoking microphone permissions for Google App.
208
Disabling animations.
209
/Users/runner/Library/Android/sdk/platform-tools/adb shell settings put global window_animation_scale 0.0
210
/Users/runner/Library/Android/sdk/platform-tools/adb shell settings put global transition_animation_scale 0.0
211
/Users/runner/Library/Android/sdk/platform-tools/adb shell settings put global animator_duration_scale 0.0
212
/bin/sh -c JAVA_HOME=$JAVA_HOME_11_X64 && ./gradlew connectedFocusDebugAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=org.mozilla.focus.activity.ThreeDotMainMenuTest#browserMenuItemsTest
213
WARNING | /etc/localtime does not point to zoneinfo-compatible timezone name
214
Downloading https://services.gradle.org/distributions/gradle-7.0.2-all.zip

In

Downloading https://services.gradle.org/distributions/gradle-7.0.2-all.zip
215

216
Exception in thread "main" java.net.SocketException: Broken pipe (Write failed)
217
	at java.base/java.net.SocketOutputStream.socketWrite0(Native Method)
218
	at java.base/java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:110)
219
	at java.base/java.net.SocketOutputStream.write(SocketOutputStream.java:150)
220
	at java.base/sun.security.ssl.SSLSocketOutputRecord.encodeChangeCipherSpec(SSLSocketOutputRecord.java:221)
221
	at java.base/sun.security.ssl.OutputRecord.changeWriteCiphers(OutputRecord.java:162)
222
	at java.base/sun.security.ssl.ChangeCipherSpec$T10ChangeCipherSpecProducer.produce(ChangeCipherSpec.java:118)
223
	at java.base/sun.security.ssl.Finished$T12FinishedProducer.onProduceFinished(Finished.java:395)
224
	at java.base/sun.security.ssl.Finished$T12FinishedProducer.produce(Finished.java:379)
225
	at java.base/sun.security.ssl.SSLHandshake.produce(SSLHandshake.java:436)
226
	at java.base/sun.security.ssl.ServerHelloDone$ServerHelloDoneConsumer.consume(ServerHelloDone.java:182)
227
	at java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:392)
228
	at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:443)
229
	at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:421)
230
	at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:182)
231
	at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:172)
232
	at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1426)
233
	at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1336)
234
	at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:450)
235
	at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:421)
236
	at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:572)
237
	at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:197)
238
	at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1592)
239
	at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1520)
240
	at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:250)
241
	at org.gradle.wrapper.Download.downloadInternal(Download.java:66)
242
	at org.gradle.wrapper.Download.download(Download.java:51)
243
	at org.gradle.wrapper.Install$1.call(Install.java:62)
244
	at org.gradle.wrapper.Install$1.call(Install.java:48)
245
	at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
246
	at org.gradle.wrapper.Install.createDist(Install.java:48)
247
	at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
248
	at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
249
Error: The process '/bin/sh' failed with exit code 1
250
/Users/runner/Library/Android/sdk/platform-tools/adb -s emulator-5554 emu kill
251
OK: killing emulator, bye bye

https://github.com/mozilla-mobile/focus-android/runs/4431473000?check_suite_focus=true

I am using a Pixel 2, API 28/x86_64 setup in our workflow.

AaronMT avatar Dec 06 '21 16:12 AaronMT

(Un)fortunately, this happens in gradlew and is completely unrelated to android-emulator-runner. Have the same issues doing regular no-emulator builds. Happens in gradlew, happens when downloading through sdkmanager, even saw GitHub checkout failure. Something with GitHub Actions runner networking.

ViliusSutkus89 avatar Feb 02 '22 11:02 ViliusSutkus89

Closing per https://github.com/ReactiveCircus/android-emulator-runner/issues/205#issuecomment-1027861225

Thanks @ViliusSutkus89 !

mrk-han avatar Oct 20 '22 15:10 mrk-han