SeleniumHQ / selenium

A browser automation framework and ecosystem.
https://selenium.dev
Apache License 2.0
30.22k stars 8.11k forks source link

[🐛 Bug]: Exception in thread "main" org.openqa.selenium.TimeoutException: java.util.concurrent.TimeoutException when calling driver.quit() without devtools.close() on java 4.7.1 bindings #11401

Closed nir-tal-talkspace closed 1 year ago

nir-tal-talkspace commented 1 year ago

What happened?

as of version 4.7.1 selenium bindings throws this error:

/Library/Java/JavaVirtualMachines/adoptopenjdk-15.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=55000:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/nirtal/IdeaProjects/devtoolsbug/target/classes:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-java/4.7.1/selenium-java-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-api/4.7.1/selenium-api-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-chrome-driver/4.7.1/selenium-chrome-driver-4.7.1.jar:/Users/nirtal/.m2/repository/com/google/auto/service/auto-service-annotations/1.0.1/auto-service-annotations-1.0.1.jar:/Users/nirtal/.m2/repository/com/google/auto/service/auto-service/1.0.1/auto-service-1.0.1.jar:/Users/nirtal/.m2/repository/com/google/auto/auto-common/1.2/auto-common-1.2.jar:/Users/nirtal/.m2/repository/com/google/guava/guava/31.1-jre/guava-31.1-jre.jar:/Users/nirtal/.m2/repository/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar:/Users/nirtal/.m2/repository/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:/Users/nirtal/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar:/Users/nirtal/.m2/repository/org/checkerframework/checker-qual/3.12.0/checker-qual-3.12.0.jar:/Users/nirtal/.m2/repository/com/google/errorprone/error_prone_annotations/2.11.0/error_prone_annotations-2.11.0.jar:/Users/nirtal/.m2/repository/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-chromium-driver/4.7.1/selenium-chromium-driver-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-json/4.7.1/selenium-json-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v106/4.7.1/selenium-devtools-v106-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v107/4.7.1/selenium-devtools-v107-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v108/4.7.1/selenium-devtools-v108-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v85/4.7.1/selenium-devtools-v85-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-edge-driver/4.7.1/selenium-edge-driver-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-firefox-driver/4.7.1/selenium-firefox-driver-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-http/4.7.1/selenium-http-4.7.1.jar:/Users/nirtal/.m2/repository/dev/failsafe/failsafe/3.3.0/failsafe-3.3.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-ie-driver/4.7.1/selenium-ie-driver-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-remote-driver/4.7.1/selenium-remote-driver-4.7.1.jar:/Users/nirtal/.m2/repository/com/beust/jcommander/1.82/jcommander-1.82.jar:/Users/nirtal/.m2/repository/io/netty/netty-buffer/4.1.84.Final/netty-buffer-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-codec-http/4.1.84.Final/netty-codec-http-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-codec/4.1.84.Final/netty-codec-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-common/4.1.84.Final/netty-common-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-classes-epoll/4.1.84.Final/netty-transport-classes-epoll-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-classes-kqueue/4.1.84.Final/netty-transport-classes-kqueue-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-epoll/4.1.84.Final/netty-transport-native-epoll-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.84.Final/netty-transport-native-kqueue-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-unix-common/4.1.84.Final/netty-transport-native-unix-common-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport/4.1.84.Final/netty-transport-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-resolver/4.1.84.Final/netty-resolver-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-api/1.19.0/opentelemetry-api-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-context/1.19.0/opentelemetry-context-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-exporter-logging/1.19.0/opentelemetry-exporter-logging-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-metrics/1.19.0/opentelemetry-sdk-metrics-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-logs/1.19.0-alpha/opentelemetry-sdk-logs-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-api-logs/1.19.0-alpha/opentelemetry-api-logs-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-common/1.19.0/opentelemetry-sdk-common-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-extension-autoconfigure-spi/1.19.0/opentelemetry-sdk-extension-autoconfigure-spi-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-extension-autoconfigure/1.19.0-alpha/opentelemetry-sdk-extension-autoconfigure-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-exporter-common/1.19.0/opentelemetry-exporter-common-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-trace/1.19.0/opentelemetry-sdk-trace-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk/1.19.0/opentelemetry-sdk-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-semconv/1.19.0-alpha/opentelemetry-semconv-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/ous/jtoml/2.0.0/jtoml-2.0.0.jar:/Users/nirtal/.m2/repository/net/bytebuddy/byte-buddy/1.12.18/byte-buddy-1.12.18.jar:/Users/nirtal/.m2/repository/org/apache/commons/commons-exec/1.3/commons-exec-1.3.jar:/Users/nirtal/.m2/repository/org/asynchttpclient/async-http-client/2.12.3/async-http-client-2.12.3.jar:/Users/nirtal/.m2/repository/org/asynchttpclient/async-http-client-netty-utils/2.12.3/async-http-client-netty-utils-2.12.3.jar:/Users/nirtal/.m2/repository/io/netty/netty-codec-socks/4.1.60.Final/netty-codec-socks-4.1.60.Final.jar:/Users/nirtal/.m2/repository/org/reactivestreams/reactive-streams/1.0.3/reactive-streams-1.0.3.jar:/Users/nirtal/.m2/repository/com/typesafe/netty/netty-reactive-streams/2.0.4/netty-reactive-streams-2.0.4.jar:/Users/nirtal/.m2/repository/com/sun/activation/jakarta.activation/1.2.2/jakarta.activation-1.2.2.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-manager/4.7.1/selenium-manager-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-safari-driver/4.7.1/selenium-safari-driver-4.7.1.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-support/4.7.1/selenium-support-4.7.1.jar:/Users/nirtal/.m2/repository/io/github/bonigarcia/webdrivermanager/5.3.1/webdrivermanager-5.3.1.jar:/Users/nirtal/.m2/repository/org/slf4j/slf4j-api/2.0.3/slf4j-api-2.0.3.jar:/Users/nirtal/.m2/repository/com/google/code/gson/gson/2.10/gson-2.10.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport-httpclient5/3.2.13/docker-java-transport-httpclient5-3.2.13.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport/3.2.13/docker-java-transport-3.2.13.jar:/Users/nirtal/.m2/repository/net/java/dev/jna/jna/5.8.0/jna-5.8.0.jar:/Users/nirtal/.m2/repository/org/brotli/dec/0.1.2/dec-0.1.2.jar:/Users/nirtal/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/client5/httpclient5/5.1.3/httpclient5-5.1.3.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/core5/httpcore5/5.1.3/httpcore5-5.1.3.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/core5/httpcore5-h2/5.1.3/httpcore5-h2-5.1.3.jar:/Users/nirtal/.m2/repository/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java/3.2.14/docker-java-3.2.14.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-core/3.2.14/docker-java-core-3.2.14.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-api/3.2.14/docker-java-api-3.2.14.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.10.3/jackson-annotations-2.10.3.jar:/Users/nirtal/.m2/repository/commons-io/commons-io/2.6/commons-io-2.6.jar:/Users/nirtal/.m2/repository/org/apache/commons/commons-compress/1.21/commons-compress-1.21.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.10.3/jackson-databind-2.10.3.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.10.3/jackson-core-2.10.3.jar:/Users/nirtal/.m2/repository/org/bouncycastle/bcpkix-jdk15on/1.64/bcpkix-jdk15on-1.64.jar:/Users/nirtal/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.64/bcprov-jdk15on-1.64.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport-jersey/3.2.14/docker-java-transport-jersey-3.2.14.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.10.3/jackson-jaxrs-json-provider-2.10.3.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.10.3/jackson-jaxrs-base-2.10.3.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.10.3/jackson-module-jaxb-annotations-2.10.3.jar:/Users/nirtal/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.2/jakarta.xml.bind-api-2.3.2.jar:/Users/nirtal/.m2/repository/jakarta/activation/jakarta.activation-api/1.2.1/jakarta.activation-api-1.2.1.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/connectors/jersey-apache-connector/2.30.1/jersey-apache-connector-2.30.1.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/core/jersey-common/2.30.1/jersey-common-2.30.1.jar:/Users/nirtal/.m2/repository/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/osgi-resource-locator/1.0.3/osgi-resource-locator-1.0.3.jar:/Users/nirtal/.m2/repository/jakarta/ws/rs/jakarta.ws.rs-api/2.1.6/jakarta.ws.rs-api-2.1.6.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/httpcore/4.4.13/httpcore-4.4.13.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/httpclient/4.5.12/httpclient-4.5.12.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/core/jersey-client/2.30.1/jersey-client-2.30.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/external/jakarta.inject/2.6.1/jakarta.inject-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/inject/jersey-hk2/2.30.1/jersey-hk2-2.30.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/hk2-locator/2.6.1/hk2-locator-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/external/aopalliance-repackaged/2.6.1/aopalliance-repackaged-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/hk2-api/2.6.1/hk2-api-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/hk2-utils/2.6.1/hk2-utils-2.6.1.jar:/Users/nirtal/.m2/repository/org/javassist/javassist/3.25.0-GA/javassist-3.25.0-GA.jar:/Users/nirtal/.m2/repository/com/kohlschutter/junixsocket/junixsocket-common/2.3.2/junixsocket-common-2.3.2.jar:/Users/nirtal/.m2/repository/com/kohlschutter/junixsocket/junixsocket-native-common/2.3.2/junixsocket-native-common-2.3.2.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport-netty/3.2.14/docker-java-transport-netty-3.2.14.jar:/Users/nirtal/.m2/repository/io/netty/netty-handler/4.1.46.Final/netty-handler-4.1.46.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-handler-proxy/4.1.46.Final/netty-handler-proxy-4.1.46.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-epoll/4.1.46.Final/netty-transport-native-epoll-4.1.46.Final-linux-x86_64.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.46.Final/netty-transport-native-kqueue-4.1.46.Final-osx-x86_64.jar:/Users/nirtal/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.30/jcl-over-slf4j-1.7.30.jar org.example.Main
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details.
Starting ChromeDriver 108.0.5359.71 (1e0e3868ee06e91ad636a874420e3ca3ae3756ac-refs/branch-heads/5359@{#1016}) on port 44584
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
Exception in thread "main" org.openqa.selenium.TimeoutException: java.util.concurrent.TimeoutException
Build info: version: '4.7.1', revision: 'c6795baf1a3'
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.16', java.version: '15.0.2'
Driver info: driver.version: ChromiumDriver
    at org.openqa.selenium.devtools.Connection.sendAndWait(Connection.java:162)
    at org.openqa.selenium.devtools.DevTools.disconnectSession(DevTools.java:68)
    at org.openqa.selenium.devtools.DevTools.close(DevTools.java:60)
    at java.base/java.util.Optional.ifPresent(Optional.java:176)
    at org.openqa.selenium.remote.RemoteWebDriver.quit(RemoteWebDriver.java:446)
    at org.openqa.selenium.chromium.ChromiumDriver.quit(ChromiumDriver.java:280)
    at org.example.Main.main(Main.java:14)
Caused by: java.util.concurrent.TimeoutException
    at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1950)
    at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2085)
    at org.openqa.selenium.devtools.Connection.sendAndWait(Connection.java:151)
    ... 6 more

Process finished with exit code 1

when calling driver.quit() without devtools.close() after creating a devtools session this has worked for many years, this change is undocumented and i would expect calling driver.quit() without devtools.close() should close the devtools session anyway

see repo to reproduce the issue: https://github.com/nir-tal-talkspace/devtoolsbug

executing the same steps with 4.7.0 bindings the result is:

/Library/Java/JavaVirtualMachines/adoptopenjdk-15.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=55044:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/nirtal/IdeaProjects/devtoolsbug/target/classes:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-java/4.7.0/selenium-java-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-api/4.7.0/selenium-api-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-chrome-driver/4.7.0/selenium-chrome-driver-4.7.0.jar:/Users/nirtal/.m2/repository/com/google/auto/service/auto-service-annotations/1.0.1/auto-service-annotations-1.0.1.jar:/Users/nirtal/.m2/repository/com/google/auto/service/auto-service/1.0.1/auto-service-1.0.1.jar:/Users/nirtal/.m2/repository/com/google/auto/auto-common/1.2/auto-common-1.2.jar:/Users/nirtal/.m2/repository/com/google/guava/guava/31.1-jre/guava-31.1-jre.jar:/Users/nirtal/.m2/repository/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar:/Users/nirtal/.m2/repository/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:/Users/nirtal/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar:/Users/nirtal/.m2/repository/org/checkerframework/checker-qual/3.12.0/checker-qual-3.12.0.jar:/Users/nirtal/.m2/repository/com/google/errorprone/error_prone_annotations/2.11.0/error_prone_annotations-2.11.0.jar:/Users/nirtal/.m2/repository/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-chromium-driver/4.7.0/selenium-chromium-driver-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-json/4.7.0/selenium-json-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v106/4.7.0/selenium-devtools-v106-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v107/4.7.0/selenium-devtools-v107-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v108/4.7.0/selenium-devtools-v108-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-devtools-v85/4.7.0/selenium-devtools-v85-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-edge-driver/4.7.0/selenium-edge-driver-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-firefox-driver/4.7.0/selenium-firefox-driver-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-ie-driver/4.7.0/selenium-ie-driver-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-remote-driver/4.7.0/selenium-remote-driver-4.7.0.jar:/Users/nirtal/.m2/repository/com/beust/jcommander/1.82/jcommander-1.82.jar:/Users/nirtal/.m2/repository/io/netty/netty-buffer/4.1.84.Final/netty-buffer-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-codec-http/4.1.84.Final/netty-codec-http-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-codec/4.1.84.Final/netty-codec-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-common/4.1.84.Final/netty-common-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-classes-epoll/4.1.84.Final/netty-transport-classes-epoll-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-classes-kqueue/4.1.84.Final/netty-transport-classes-kqueue-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-epoll/4.1.84.Final/netty-transport-native-epoll-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.84.Final/netty-transport-native-kqueue-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-unix-common/4.1.84.Final/netty-transport-native-unix-common-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport/4.1.84.Final/netty-transport-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-resolver/4.1.84.Final/netty-resolver-4.1.84.Final.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-api/1.19.0/opentelemetry-api-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-context/1.19.0/opentelemetry-context-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-exporter-logging/1.19.0/opentelemetry-exporter-logging-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-metrics/1.19.0/opentelemetry-sdk-metrics-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-logs/1.19.0-alpha/opentelemetry-sdk-logs-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-api-logs/1.19.0-alpha/opentelemetry-api-logs-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-common/1.19.0/opentelemetry-sdk-common-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-extension-autoconfigure-spi/1.19.0/opentelemetry-sdk-extension-autoconfigure-spi-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-extension-autoconfigure/1.19.0-alpha/opentelemetry-sdk-extension-autoconfigure-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-exporter-common/1.19.0/opentelemetry-exporter-common-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk-trace/1.19.0/opentelemetry-sdk-trace-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-sdk/1.19.0/opentelemetry-sdk-1.19.0.jar:/Users/nirtal/.m2/repository/io/opentelemetry/opentelemetry-semconv/1.19.0-alpha/opentelemetry-semconv-1.19.0-alpha.jar:/Users/nirtal/.m2/repository/io/ous/jtoml/2.0.0/jtoml-2.0.0.jar:/Users/nirtal/.m2/repository/net/bytebuddy/byte-buddy/1.12.18/byte-buddy-1.12.18.jar:/Users/nirtal/.m2/repository/org/apache/commons/commons-exec/1.3/commons-exec-1.3.jar:/Users/nirtal/.m2/repository/org/asynchttpclient/async-http-client/2.12.3/async-http-client-2.12.3.jar:/Users/nirtal/.m2/repository/org/asynchttpclient/async-http-client-netty-utils/2.12.3/async-http-client-netty-utils-2.12.3.jar:/Users/nirtal/.m2/repository/io/netty/netty-codec-socks/4.1.60.Final/netty-codec-socks-4.1.60.Final.jar:/Users/nirtal/.m2/repository/org/reactivestreams/reactive-streams/1.0.3/reactive-streams-1.0.3.jar:/Users/nirtal/.m2/repository/com/typesafe/netty/netty-reactive-streams/2.0.4/netty-reactive-streams-2.0.4.jar:/Users/nirtal/.m2/repository/com/sun/activation/jakarta.activation/1.2.2/jakarta.activation-1.2.2.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-http/4.7.0/selenium-http-4.7.0.jar:/Users/nirtal/.m2/repository/dev/failsafe/failsafe/3.3.0/failsafe-3.3.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-manager/4.7.0/selenium-manager-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-safari-driver/4.7.0/selenium-safari-driver-4.7.0.jar:/Users/nirtal/.m2/repository/org/seleniumhq/selenium/selenium-support/4.7.0/selenium-support-4.7.0.jar:/Users/nirtal/.m2/repository/io/github/bonigarcia/webdrivermanager/5.3.1/webdrivermanager-5.3.1.jar:/Users/nirtal/.m2/repository/org/slf4j/slf4j-api/2.0.3/slf4j-api-2.0.3.jar:/Users/nirtal/.m2/repository/com/google/code/gson/gson/2.10/gson-2.10.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport-httpclient5/3.2.13/docker-java-transport-httpclient5-3.2.13.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport/3.2.13/docker-java-transport-3.2.13.jar:/Users/nirtal/.m2/repository/net/java/dev/jna/jna/5.8.0/jna-5.8.0.jar:/Users/nirtal/.m2/repository/org/brotli/dec/0.1.2/dec-0.1.2.jar:/Users/nirtal/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/client5/httpclient5/5.1.3/httpclient5-5.1.3.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/core5/httpcore5/5.1.3/httpcore5-5.1.3.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/core5/httpcore5-h2/5.1.3/httpcore5-h2-5.1.3.jar:/Users/nirtal/.m2/repository/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java/3.2.14/docker-java-3.2.14.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-core/3.2.14/docker-java-core-3.2.14.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-api/3.2.14/docker-java-api-3.2.14.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.10.3/jackson-annotations-2.10.3.jar:/Users/nirtal/.m2/repository/commons-io/commons-io/2.6/commons-io-2.6.jar:/Users/nirtal/.m2/repository/org/apache/commons/commons-compress/1.21/commons-compress-1.21.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.10.3/jackson-databind-2.10.3.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.10.3/jackson-core-2.10.3.jar:/Users/nirtal/.m2/repository/org/bouncycastle/bcpkix-jdk15on/1.64/bcpkix-jdk15on-1.64.jar:/Users/nirtal/.m2/repository/org/bouncycastle/bcprov-jdk15on/1.64/bcprov-jdk15on-1.64.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport-jersey/3.2.14/docker-java-transport-jersey-3.2.14.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/jaxrs/jackson-jaxrs-json-provider/2.10.3/jackson-jaxrs-json-provider-2.10.3.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/jaxrs/jackson-jaxrs-base/2.10.3/jackson-jaxrs-base-2.10.3.jar:/Users/nirtal/.m2/repository/com/fasterxml/jackson/module/jackson-module-jaxb-annotations/2.10.3/jackson-module-jaxb-annotations-2.10.3.jar:/Users/nirtal/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.2/jakarta.xml.bind-api-2.3.2.jar:/Users/nirtal/.m2/repository/jakarta/activation/jakarta.activation-api/1.2.1/jakarta.activation-api-1.2.1.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/connectors/jersey-apache-connector/2.30.1/jersey-apache-connector-2.30.1.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/core/jersey-common/2.30.1/jersey-common-2.30.1.jar:/Users/nirtal/.m2/repository/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/osgi-resource-locator/1.0.3/osgi-resource-locator-1.0.3.jar:/Users/nirtal/.m2/repository/jakarta/ws/rs/jakarta.ws.rs-api/2.1.6/jakarta.ws.rs-api-2.1.6.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/httpcore/4.4.13/httpcore-4.4.13.jar:/Users/nirtal/.m2/repository/org/apache/httpcomponents/httpclient/4.5.12/httpclient-4.5.12.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/core/jersey-client/2.30.1/jersey-client-2.30.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/external/jakarta.inject/2.6.1/jakarta.inject-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/jersey/inject/jersey-hk2/2.30.1/jersey-hk2-2.30.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/hk2-locator/2.6.1/hk2-locator-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/external/aopalliance-repackaged/2.6.1/aopalliance-repackaged-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/hk2-api/2.6.1/hk2-api-2.6.1.jar:/Users/nirtal/.m2/repository/org/glassfish/hk2/hk2-utils/2.6.1/hk2-utils-2.6.1.jar:/Users/nirtal/.m2/repository/org/javassist/javassist/3.25.0-GA/javassist-3.25.0-GA.jar:/Users/nirtal/.m2/repository/com/kohlschutter/junixsocket/junixsocket-common/2.3.2/junixsocket-common-2.3.2.jar:/Users/nirtal/.m2/repository/com/kohlschutter/junixsocket/junixsocket-native-common/2.3.2/junixsocket-native-common-2.3.2.jar:/Users/nirtal/.m2/repository/com/github/docker-java/docker-java-transport-netty/3.2.14/docker-java-transport-netty-3.2.14.jar:/Users/nirtal/.m2/repository/io/netty/netty-handler/4.1.46.Final/netty-handler-4.1.46.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-handler-proxy/4.1.46.Final/netty-handler-proxy-4.1.46.Final.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-epoll/4.1.46.Final/netty-transport-native-epoll-4.1.46.Final-linux-x86_64.jar:/Users/nirtal/.m2/repository/io/netty/netty-transport-native-kqueue/4.1.46.Final/netty-transport-native-kqueue-4.1.46.Final-osx-x86_64.jar:/Users/nirtal/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.30/jcl-over-slf4j-1.7.30.jar org.example.Main
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details.
Starting ChromeDriver 108.0.5359.71 (1e0e3868ee06e91ad636a874420e3ca3ae3756ac-refs/branch-heads/5359@{#1016}) on port 46329
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.

Process finished with exit code 0

How can we reproduce the issue?

https://github.com/nir-tal-talkspace/devtoolsbug

Relevant log output

added

Operating System

all

Selenium version

4.7.1

What are the browser(s) and version(s) where you see this issue?

chrome

What are the browser driver(s) and version(s) where you see this issue?

Version 108.0.5359.98 (Official Build) (x86_64)

Are you using Selenium Grid?

No response

github-actions[bot] commented 1 year ago

@nir-tal-talkspace, thank you for creating this issue. We will troubleshoot it as soon as we can.


Info for maintainers

Triage this issue by using labels.

If information is missing, add a helpful comment and then I-issue-template label.

If the issue is a question, add the I-question label.

If the issue is valid but there is no time to troubleshoot it, consider adding the help wanted label.

If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C), add the applicable G-* label, and it will provide the correct link and auto-close the issue.

After troubleshooting the issue, please add the R-awaiting answer label.

Thank you!

nir-tal-talkspace commented 1 year ago

@diemol @pujagani this is the issue we talked about on slack. thanks!

nir-tal-talkspace commented 1 year ago

looks like it's related to this commit https://github.com/SeleniumHQ/selenium/commit/c5943bde4c7092f534a73551dad1d3a6d307dee7

pujagani commented 1 year ago

Thank you for sharing the details and helping pinpoint that the error occurs when we request to create an explicit DevTools session. The behavior is strange but I am able to reproduce it. Strangely though the error does not occur when using Augmenter and the Grid. I am triaging it now on priority to identify the root cause.

pujagani commented 1 year ago

Turns out, we were closing the DevTools connection twice and hence it would time out since commands were issued on the same connection after it was closed. Once in the browser implementation on quit and once again in the RemoteWebDriver. Now that the logic sits in the RemoteWebDriver, I have removed browser-specific calls to close the CDP connections and that sorts this issue out. cc: @diemol @nir-tal-talkspace

github-actions[bot] commented 1 year ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.