Cannot connect to a data source in Watson Query
You configure a data source connection to Watson Query, but the connection fails.
Symptoms
You might encounter different error messages when you try to connect to a data source.- Timeout error
- You configure a data source connection to Watson Query. As a result, you get a timeout
error that is similar to the following
example.
[node_name], failed with The exception 'java.lang.Exception: Reached timeout 20000ms when doing early creation of connection for detail: com.ibm.jdbc.postgresql.PostgreSQLDriver'[host_name]6;databaseName=[database_name];EncryptionMethod=SSL;ValidateServerCertificate=false [ibm_cloud_user_ID]<pwd>' was thrown while evaluating an expression.;
- Certificate format error
- You add a built-in data source to Watson Query, and you upload an SSL certificate with
non-PEM format. As a result you get the following
error.
Internal Server Error [node_name], failed with The exception 'java.lang.Exception: Input certificate did not contain any valid certificates, ensure certificate is provide using PEM format.' was thrown while evaluating an expression.;
Causes
This issue can have different causes that depend on the type of issue.- The timeout parameter value is too low.
- For built-in data sources, Watson Query supports SSL certificates with PEM format only.
Resolving the problem
To solve this issue, select one of the following options.- Solve a timeout issue
- Try to connect to the data source again. If the connection still fails, you can increase the
timeout. For example, to increase the timeout to 40 seconds, you can issue the following command.
call DVSYS.SETCONFIGPROPERTY('GAIAN_CONNECTIONS_CHECKER_HEARTBEAT_MS','40000','',?,?);
You can issue this command from the SQL editor that is part of Watson Query or any external SQL client that can connect to Watson Query by using the Admin user role.
If you enabled query processing parallelism on multiple worker nodes and depending on the workload, the number of queries that are run in parallel at a data source might increase. In this case, you can run the following command to increase the size of your connection pool.call DVSYS.SETCONFIGPROPERTY('MAX_POOLSIZES','15','',?,?);
- Solve a certificate format issue
- Ensure that your certificate is in PEM format for upload. To convert your certificate to PEM
format, use the following
command.
openssl x509 -in mycert.crt -out mycert.pem -outform PEM