MacOS 15.4 - AS
KNIME 5.4.3 - AS
Since the upgrade to KNIME 5.4.x, I have been unable to connect to an existing PostgreSQL db running on a remote linux box. The node Monitor pane lists the error as:
PostgreSQL Connector: Execute failed: The connection attempt failed.
Other Windows/Linux clients on our network using KNIME 5.4.x have not had this problem connecting to the remote server.
This Mac OS system CAN connect to the postgresql db using other applications:
pgadmin4 8.x or 9.x - AS
sqldeveloper 24.3.1 - AS
so there is nothing blocking network connections on this mac (“telnet server.address.com 5432” for example provides a live connection).
Downgrading to KNIME 5.3 - AS restores functionality.
I tried installing another copy of KNIME 5.4.3 - AS in another directory, and using a new workspace tried to connect to the remote postgresql db creating a new workflow. But the problem persists.
Today I tried again, but using the KNIME 5.4.3 - Intel installer in a new directory with a new workspace and a newly created workflow.
And the connection works fine.
Importing my existing workflows into this Intel instance restores connection.
When I first executed a PostgreSql Connector node in the Intel instance, a systems permissions dialog was displayed asking for KNIME to have access to the ‘local network’. I approved this even though KNIME is already listed as having ‘Local Network’ access in the ‘Privacy & Security’ pane.
The KNIME 5.4.3 - AS install still won’t connect to the remote db.
The PostgreSql Connector node is configured with the default settings, except the host name, db name, and username & password.
Is this some weird permissions problem?
Here is the last section of my knime.log:
2025-04-01 14:29:27,386 : ERROR : KNIME-Worker-7-PostgreSQL Connector 3:1 : : Node : PostgreSQL Connector : 3:1 : Execute failed: The connection attempt failed.
org.postgresql.util.PSQLException: The connection attempt failed.
at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:358)
at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54)
at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:273)
at org.postgresql.Driver.makeConnection(Driver.java:446)
at org.postgresql.Driver.connect(Driver.java:298)
at org.knime.database.connection.UrlDBConnectionController$ControlledDriver.connect(UrlDBConnectionController.java:103)
at org.knime.database.connection.UrlDBConnectionController.connect(UrlDBConnectionController.java:368)
at org.knime.database.connection.UserDBConnectionController.connect(UserDBConnectionController.java:306)
at org.knime.database.connection.UrlDBConnectionController.createConnection(UrlDBConnectionController.java:348)
at org.knime.database.connection.AbstractConnectionProvider.createConnection(AbstractConnectionProvider.java:103)
at org.knime.database.connection.impl.DBConnectionManager.lambda$4(DBConnectionManager.java:594)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.net.NoRouteToHostException: No route to host
at java.base/sun.nio.ch.Net.connect0(Native Method)
at java.base/sun.nio.ch.Net.connect(Unknown Source)
at java.base/sun.nio.ch.Net.connect(Unknown Source)
at java.base/sun.nio.ch.NioSocketImpl.connect(Unknown Source)
at java.base/java.net.SocksSocketImpl.connect(Unknown Source)
at java.base/java.net.Socket.connect(Unknown Source)
at org.postgresql.core.PGStream.createSocket(PGStream.java:243)
at org.postgresql.core.PGStream.<init>(PGStream.java:98)
at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:136)
at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:262)
... 14 more
(the other)
Simon