-
Notifications
You must be signed in to change notification settings - Fork 819
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
Connection Refused Error with H2O on WSL after Windows Update #12170
Comments
Logs are required for review from WSL teamIf this a feature request, please reply with '/feature'. If this is a question, reply with '/question'. How to collect WSL logsDownload and execute collect-wsl-logs.ps1 in an administrative powershell prompt:
The script will output the path of the log file once done. If this is a networking issue, please use collect-networking-logs.ps1, following the instructions here Once completed please upload the output files to this Github issue. Click here for more info on logging |
@lvfmc85 how are you launching the In an
is starting a cluster bound to
Start using defaults:
Cluster status:
Some random test:
Logs: h2o_elsaco_started_from_python.out
|
Thank you elsaco. I'm starting h2o with nor arguments "h2o.init()", I already tried forcing the ip to 127.0.0.1 with no results. I tried to connect from windows side like you suggested and this is the result: When I type ctrl+c, this is what I got on python: Connecting to H2O server at http://127.0.0.1:54321 ... successful. Here is the h2o_lvfmc_started_from_python.out content: I did a fresh windows 11 pro this morning. Updated windows. the drivers, installed wsl wsl.exe --install, updated the system (sudo apt update && sudo apt upgrade), installed the last anaconda version, installed jdk 17, installed the last h2o version and I got the same problem. My windows 11 is pro PT-BR. |
Hello everyone, After further investigation, I've identified the root cause of the issue with running H2O in WSL. The problem arises specifically after updating from WSL version 2.1.5 to 2.2.1. What I Found: The H2O execution works perfectly in WSL version 2.1.5. The issue appears immediately after updating to WSL version 2.2.1. Changes in version 2.2.1, such as enabling DNS tunneling by default and other kernel updates, might be contributing factors. Solution: For now, the solution is to revert to WSL version 2.1.5, where H2O runs without any problems. Here are the steps I took to resolve the issue: Uninstall WSL Removed the current WSL version using PowerShell. Obs.: Although I haven't done it, I think it would be a good safety measure to make a backup of the Linux distro before uninstalling WSL. Install WSL Version 2.1.5: This workaround allows me to use H2O effectively until a permanent fix is provided in future updates of WSL. I hope this helps anyone facing similar issues. If the WSL team needs more information or further testing, please let me know. |
@lvfmc85 disable DNS tunneling by adding Also, try running as
WSL info:
|
Thank you so much, @zcobol. |
Windows Version
Microsoft Windows [versão 10.0.22631.4317]
WSL Version
2.3.24.0
Are you using WSL 1 or WSL 2?
Kernel Version
5.15.153.1-2
Distro Version
Ubuntu 24.04
Other Software
Java Version: Java 11.0.24
Python Version: Tested with Python 3.7, 3.9, 3.10, 3.11, and 3.12
Anaconda Version: Anaconda3-2024.06-1-Linux-x86_64
H2O Versions: 3.42.0.2 up to 3.46.0.5
Repro Steps
Start H2O using h2o.init() in Python on WSL.
Attempt to form a cloud with node at 10.255.255.254:54321.
Observe the "Connection refused" error.
Expected Behavior
H2O should start successfully on WSL, forming a cloud and connecting to the node without any connection errors, as it does on a native Ubuntu environment.
Actual Behavior
What happened instead?
When starting H2O on WSL using h2o.init(), it attempts to form a cloud of size 2, including a node at 10.255.255.254:54321, but encounters a "Connection refused" error. This issue does not occur on a dedicated PC with Ubuntu OS.
Diagnostic Logs
h2o .err:
"
2024-10-15 14:22:11.685:INFO::main: Logging initialized @1633ms to org.eclipse.jetty.util.log.StdErrLog
10-15 14:22:15.839 127.0.0.1:54321 1415 .254:54321 ERROR water.default: Got IO error when sending a batch of bytes:
java.net.ConnectException: Connection refused
at sun.nio.ch.Net.connect0(Native Method) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:483) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:472) ~[?:?]
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:692) ~[?:?]
at water.H2ONode.openChan(H2ONode.java:496) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.openChan(H2ONode.java:634) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.sendBuffer(H2ONode.java:608) [h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.run(H2ONode.java:592) [h2o.jar:?]
10-15 14:22:20.846 127.0.0.1:54321 1415 .254:54321 ERROR water.default: Got IO error when sending a batch of bytes:
java.net.ConnectException: Connection refused
at sun.nio.ch.Net.connect0(Native Method) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:483) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:472) ~[?:?]
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:692) ~[?:?]
at water.H2ONode.openChan(H2ONode.java:496) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.openChan(H2ONode.java:634) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.sendBuffer(H2ONode.java:608) [h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.run(H2ONode.java:592) [h2o.jar:?]
"
h2o .out:
"
14:22:11.558 [main] WARN hex.tree.xgboost.util.NativeLibrary - Cannot load library from path lib/linux_64/libxgboost4j_gpu.so
14:22:11.560 [main] WARN hex.tree.xgboost.util.NativeLibrary - Failed to load library from both native path and jar!
14:22:11.560 [main] INFO hex.tree.xgboost.util.NativeLibraryLoaderChain - Cannot load library: xgboost4j_gpu (lib/linux_64/libxgboost4j_gpu.so)
14:22:11.587 [main] INFO hex.tree.xgboost.util.NativeLibrary - Loaded library from lib/linux_64/libxgboost4j_minimal.so (/tmp/libxgboost4j_minimal5291883429882183235.so)
10-15 14:22:11.844 127.0.0.1:54321 1415 main INFO water.default: ----- H2O started -----
10-15 14:22:11.844 127.0.0.1:54321 1415 main INFO water.default: Build git branch: rel-3.46.0
10-15 14:22:11.845 127.0.0.1:54321 1415 main INFO water.default: Build git hash: 62c1c2579b6eb97e8813659a5e7b919af8ae0c5f
10-15 14:22:11.845 127.0.0.1:54321 1415 main INFO water.default: Build git describe: jenkins-3.46.0.4-21-g62c1c2579b6
10-15 14:22:11.845 127.0.0.1:54321 1415 main INFO water.default: Build project version: 3.46.0.5
10-15 14:22:11.846 127.0.0.1:54321 1415 main INFO water.default: Build age: 1 month and 16 days
10-15 14:22:11.846 127.0.0.1:54321 1415 main INFO water.default: Built by: 'jenkins'
10-15 14:22:11.846 127.0.0.1:54321 1415 main INFO water.default: Built on: '2024-08-29 11:51:54'
10-15 14:22:11.846 127.0.0.1:54321 1415 main INFO water.default: Found H2O Core extensions: [XGBoost, KrbStandalone, Infogram]
10-15 14:22:11.847 127.0.0.1:54321 1415 main INFO water.default: Processed H2O arguments: [-ip, 127.0.0.1, -web_ip, 127.0.0.1, -baseport, 54321, -ice_root, /tmp/tmpxioy6s4r, -name, H2O_from_python_lvfmc_tt3594, -log_level, INFO, -allow_unsupported_java]
10-15 14:22:11.847 127.0.0.1:54321 1415 main INFO water.default: Java availableProcessors: 8
10-15 14:22:11.847 127.0.0.1:54321 1415 main INFO water.default: Java heap totalMemory: 664.0 MB
10-15 14:22:11.847 127.0.0.1:54321 1415 main INFO water.default: Java heap maxMemory: 10.29 GB
10-15 14:22:11.848 127.0.0.1:54321 1415 main INFO water.default: Java version: Java 11.0.24 (from Ubuntu)
10-15 14:22:11.848 127.0.0.1:54321 1415 main INFO water.default: JVM launch parameters: [-ea]
10-15 14:22:11.848 127.0.0.1:54321 1415 main INFO water.default: JVM process id: 1415@LAPTOP-TNVR599T
10-15 14:22:11.848 127.0.0.1:54321 1415 main INFO water.default: OS version: Linux 5.15.153.1-microsoft-standard-WSL2 (amd64)
10-15 14:22:11.849 127.0.0.1:54321 1415 main INFO water.default: Machine physical memory: 41.14 GB
10-15 14:22:11.849 127.0.0.1:54321 1415 main INFO water.default: Machine locale: en
10-15 14:22:11.849 127.0.0.1:54321 1415 main INFO water.default: X-h2o-cluster-id: 1729012930227
10-15 14:22:11.849 127.0.0.1:54321 1415 main INFO water.default: User name: 'lvfmc'
10-15 14:22:11.850 127.0.0.1:54321 1415 main INFO water.default: IPv6 stack selected: false
10-15 14:22:11.850 127.0.0.1:54321 1415 main INFO water.default: Possible IP Address: eth0 (eth0), fe80:0:0:0:215:5dff:fe56:4e8e%eth0
10-15 14:22:11.850 127.0.0.1:54321 1415 main INFO water.default: Possible IP Address: eth0 (eth0), 172.18.24.159
10-15 14:22:11.850 127.0.0.1:54321 1415 main INFO water.default: Possible IP Address: lo (lo), 0:0:0:0:0:0:0:1%lo
10-15 14:22:11.850 127.0.0.1:54321 1415 main INFO water.default: Possible IP Address: lo (lo), 10.255.255.254
10-15 14:22:11.851 127.0.0.1:54321 1415 main INFO water.default: Possible IP Address: lo (lo), 127.0.0.1
10-15 14:22:11.851 127.0.0.1:54321 1415 main INFO water.default: Selected H2O.CLOUD_MULTICAST_IF: name:lo (lo) doesn't support multicast
10-15 14:22:11.858 127.0.0.1:54321 1415 main INFO water.default: H2O node running in unencrypted mode.
10-15 14:22:11.859 127.0.0.1:54321 1415 main INFO water.default: Internal communication uses port: 54322
10-15 14:22:11.859 127.0.0.1:54321 1415 main INFO water.default: Listening for HTTP and REST traffic on http://127.0.0.1:54321/
10-15 14:22:11.860 127.0.0.1:54321 1415 main INFO water.default: H2O cloud name: 'H2O_from_python_lvfmc_tt3594' on /127.0.0.1:54321, discovery address /227.248.222.114:58360
10-15 14:22:11.860 127.0.0.1:54321 1415 main INFO water.default: If you have trouble connecting, try SSH tunneling from your local machine (e.g., via port 55555):
10-15 14:22:11.861 127.0.0.1:54321 1415 main INFO water.default: 1. Open a terminal and run 'ssh -L 55555:localhost:54321 lvfmc@127.0.0.1'
10-15 14:22:11.861 127.0.0.1:54321 1415 main INFO water.default: 2. Point your browser to http://localhost:55555
10-15 14:22:12.611 127.0.0.1:54321 1415 main INFO water.default: Kerberos not configured
10-15 14:22:12.611 127.0.0.1:54321 1415 main INFO water.default: Log dir: '/tmp/tmpxioy6s4r/h2ologs'
10-15 14:22:12.611 127.0.0.1:54321 1415 main INFO water.default: Cur dir: '/home/lvfmc'
10-15 14:22:12.619 127.0.0.1:54321 1415 main INFO water.default: Subsystem for distributed import from HTTP/HTTPS successfully initialized
10-15 14:22:12.619 127.0.0.1:54321 1415 main INFO water.default: HDFS subsystem successfully initialized
10-15 14:22:12.622 127.0.0.1:54321 1415 main INFO water.default: S3 subsystem successfully initialized
10-15 14:22:12.630 127.0.0.1:54321 1415 main INFO water.default: GCS subsystem successfully initialized
10-15 14:22:12.631 127.0.0.1:54321 1415 main INFO water.default: Drive subsystem not available
10-15 14:22:12.631 127.0.0.1:54321 1415 main INFO water.default: Flow dir: '/home/lvfmc/h2oflows'
10-15 14:22:12.638 127.0.0.1:54321 1415 main INFO water.default: Cloud of size 1 formed [/127.0.0.1:54321]
10-15 14:22:12.648 127.0.0.1:54321 1415 main INFO water.default: Registered parsers: [GUESS, ARFF, XLS, SVMLight, AVRO, PARQUET, CSV]
10-15 14:22:12.649 127.0.0.1:54321 1415 main INFO water.default: XGBoost extension initialized
10-15 14:22:12.650 127.0.0.1:54321 1415 main INFO water.default: KrbStandalone extension initialized
10-15 14:22:12.650 127.0.0.1:54321 1415 main INFO water.default: Infogram extension initialized
10-15 14:22:12.650 127.0.0.1:54321 1415 main INFO water.default: Registered 3 core extensions in: 1281ms
10-15 14:22:12.651 127.0.0.1:54321 1415 main INFO water.default: Registered H2O core extensions: [XGBoost, KrbStandalone, Infogram]
10-15 14:22:12.654 127.0.0.1:54321 1415 main INFO hex.tree.xgboost.XGBoostExtension: Found XGBoost backend with library: xgboost4j_minimal
10-15 14:22:12.654 127.0.0.1:54321 1415 main WARN hex.tree.xgboost.XGBoostExtension: Your system supports only minimal version of XGBoost (no GPUs, no multithreading)!
10-15 14:22:12.854 127.0.0.1:54321 1415 main INFO water.default: Registered: 288 REST APIs in: 203ms
10-15 14:22:12.854 127.0.0.1:54321 1415 main INFO water.default: Registered REST API extensions: [Mojo 2 pipeline extensions, XGBoost, Amazon S3, Algos, Infogram, AutoML, Core V3, TargetEncoder, Core V4]
10-15 14:22:12.943 127.0.0.1:54321 1415 main INFO water.default: Registered: 332 schemas in 88ms
10-15 14:22:12.944 127.0.0.1:54321 1415 main INFO water.default: H2O started in 2710ms
10-15 14:22:12.944 127.0.0.1:54321 1415 main INFO water.default:
10-15 14:22:12.944 127.0.0.1:54321 1415 main INFO water.default: Open H2O Flow in your web browser: http://127.0.0.1:54321
10-15 14:22:12.944 127.0.0.1:54321 1415 main INFO water.default:
10-15 14:22:13.100 127.0.0.1:54321 1415 6918683-21 INFO water.default: GET /3/Metadata/schemas/CloudV3, parms: {}
10-15 14:22:13.106 127.0.0.1:54321 1415 6918683-21 INFO water.default: Locking cloud to new members, because water.api.schemas3.MetadataV3
10-15 14:22:15.739 127.0.0.1:54321 1415 FJ-126-15 INFO water.default: Cloud of size 2 formed [/127.0.0.1:54321, /10.255.255.254:54321]
10-15 14:22:15.782 127.0.0.1:54321 1415 6918683-17 INFO water.default: GET /3/Metadata/schemas/H2OErrorV3, parms: {}
10-15 14:22:15.787 127.0.0.1:54321 1415 6918683-18 INFO water.default: GET /3/Metadata/schemas/H2OModelBuilderErrorV3, parms: {}
10-15 14:22:15.811 127.0.0.1:54321 1415 6918683-20 INFO water.default: POST /4/sessions, parms: {}
10-15 14:22:15.821 127.0.0.1:54321 1415 6918683-21 INFO water.default: POST /99/Rapids, parms: {ast=(setTimeZone "UTC"), session_id=_sid_af81}
10-15 14:22:15.839 127.0.0.1:54321 1415 .254:54321 ERROR water.default: Got IO error when sending a batch of bytes:
java.net.ConnectException: Connection refused
at sun.nio.ch.Net.connect0(Native Method) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:483) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:472) ~[?:?]
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:692) ~[?:?]
at water.H2ONode.openChan(H2ONode.java:496) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.openChan(H2ONode.java:634) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.sendBuffer(H2ONode.java:608) [h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.run(H2ONode.java:592) [h2o.jar:?]
10-15 14:22:20.846 127.0.0.1:54321 1415 .254:54321 ERROR water.default: Got IO error when sending a batch of bytes:
java.net.ConnectException: Connection refused
at sun.nio.ch.Net.connect0(Native Method) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:483) ~[?:?]
at sun.nio.ch.Net.connect(Net.java:472) ~[?:?]
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:692) ~[?:?]
at water.H2ONode.openChan(H2ONode.java:496) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.openChan(H2ONode.java:634) ~[h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.sendBuffer(H2ONode.java:608) [h2o.jar:?]
at water.H2ONode$SmallMessagesSendThread.run(H2ONode.java:592) [h2o.jar:?]
"
The text was updated successfully, but these errors were encountered: