Sergey Kozlov created IGNITE-9291: ------------------------------------- Summary: IgniteJdbcThinDriver with SSL doesn't work for sqlline on Windows Key: IGNITE-9291 URL: https://issues.apache.org/jira/browse/IGNITE-9291 Project: Ignite Issue Type: Bug Components: jdbc Affects Versions: 2.6 Reporter: Sergey Kozlov Fix For: 2.7
I tried to run AI 2.6 with same configuration under Linux (Ubuntu) and Windows 10 and then connect {sqlline} with activated SSL. It works fine for Linux and doesn't work for Windows. There's no errors on server nodes but sqlline prints out following: {noformat} <included C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/test_modules/test_sqlline/jdbc-thin-data-region-ssl/sqlline_output.1.log> ['C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/gg-pro-fab-nolgpl/bin/sqlline.bat', '-d', 'org.apache.ignite.IgniteJdbcThinDriver', '--verbose=true', '--force=true', '--showWarnings=true', '--showNestedErrs=true', '-u', 'jdbc:ignite:thin://127.0.0.1/?sslMode=require&sslClientCertificateKeyStoreUrl=C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/test_modules/test_sqlline/jdbc-thin-data-region-ssl/client.jks&sslClientCertificateKeyStorePassword=123456&sslTrustCertificateKeyStoreUrl=C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/test_modules/test_sqlline/jdbc-thin-data-region-ssl/trust.jks&sslTrustCertificateKeyStorePassword=123456', '-f', 'C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/test_modules/test_sqlline/jdbc-thin-data-region-ssl/sqlline_output.1.batch.txt'] C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/gg-pro-fab-nolgpl/bin/sqlline.bat, WARN: IGNITE_HOME environment variable may be pointing to wrong folder: C:/BuildAgent/work/dd4d79acf76cc870/i2test/var/suite-client/gg-pro-fab-nolgpl Setting property: [force, true] Setting property: [showWarnings, true] Setting property: [showNestedErrs, true] issuing: !connect jdbc:ignite:thin://127.0.0.1/?sslMode=require '' '' org.apache.ignite.IgniteJdbcThinDriver Connecting to jdbc:ignite:thin://127.0.0.1/?sslMode=require Error: Failed to SSL connect to server [url=jdbc:ignite:thin://127.0.0.1:10800] (state=08001,code=0) java.sql.SQLException: Failed to SSL connect to server [url=jdbc:ignite:thin://127.0.0.1:10800] at org.apache.ignite.internal.jdbc.thin.JdbcThinSSLUtil.createSSLSocket(JdbcThinSSLUtil.java:93) at org.apache.ignite.internal.jdbc.thin.JdbcThinTcpIo.connect(JdbcThinTcpIo.java:217) at org.apache.ignite.internal.jdbc.thin.JdbcThinTcpIo.start(JdbcThinTcpIo.java:159) at org.apache.ignite.internal.jdbc.thin.JdbcThinTcpIo.start(JdbcThinTcpIo.java:134) at org.apache.ignite.internal.jdbc.thin.JdbcThinConnection.ensureConnected(JdbcThinConnection.java:151) at org.apache.ignite.internal.jdbc.thin.JdbcThinConnection.<init>(JdbcThinConnection.java:140) at org.apache.ignite.IgniteJdbcThinDriver.connect(IgniteJdbcThinDriver.java:157) at sqlline.DatabaseConnection.connect(DatabaseConnection.java:156) at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:204) at sqlline.Commands.connect(Commands.java:1095) at sqlline.Commands.connect(Commands.java:1001) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:38) at sqlline.SqlLine.dispatch(SqlLine.java:791) at sqlline.SqlLine.initArgs(SqlLine.java:566) at sqlline.SqlLine.begin(SqlLine.java:643) at sqlline.SqlLine.start(SqlLine.java:373) at sqlline.SqlLine.main(SqlLine.java:265) Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949) at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302) at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509) at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216) at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979) at sun.security.ssl.Handshaker.process_record(Handshaker.java:914) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062) at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) at org.apache.ignite.internal.jdbc.thin.JdbcThinSSLUtil.createSSLSocket(JdbcThinSSLUtil.java:88) ... 20 more Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387) at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292) at sun.security.validator.Validator.validate(Validator.java:260) at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324) at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229) at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491) ... 28 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141) at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126) at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382) {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)