I am currently encountering an issue with my workflow that involves the Oracle Connector. When I run the workflow manually, everything works fine without any issues. However, when I schedule the workflow, it fails, and I receive the following error message:
I am unsure why there is a difference in behaviour between running the workflow manually and scheduling it. Could someone please assist me in resolving this issue?
I appreciate any help or insights you can provide.
Hi @kotlapullareddy , when it is running “scheduled”, is that running on KNIME Server/Hub or are you simply running it as a scheduled task?
Is the address you are using a server name or an ip address? If you are currently using the server name, have you tried using the ip address instead to see if that makes a difference?
I am currently running KNIME Server version (4.15.2). at present I’m using Server name. I won’t think its big difference using IP or Server Name. where as its working fine with manual execution!.
Hi @kotlapullareddy , when you execute it manually, are you executing it from KNIME AP on your local machine, or remotely on the server?
The reason I asked about using IP address or Server Name is that using a server name requires domain name resolution (via DNS) to be configured and working, whereas using an ip address does not, so it would be good to rule that out.
I ran the workflow on KNIME Server. which is AWS - Linux based system.
And I have tried with IP address as well. but, no luck. got the error below when I ran with IP address: Oracle Connector 3:2 - ERROR: Execute failed: IO Error: The Network Adapter could not establish the connection.
Hi @kotlapullareddy , so the error message changes when you use IP Address instead of server name.
(Partial success in troubleshooting comes when, as a result of your actions, the error message changes! )
OK, so it doesn’t solve the problem but this tells me that first off the KNIME server is not able to resolve the server name to an IP Address and this suggests that there is a configuration difference between running manually and running as a scheduled task.
Unfortunately I don’t use KNIME Server so I don’t know how the environment is configured for running scheduled tasks, or indeed whether it runs as a different account/user.
Back to your error messages though: IO Error: Unknown host specified normally means that the Oracle connector is unable to locate the server that the database is running on
The Network Adapter could not establish the connection would typically mean that it found the server, but that something is blocking the connection or else the wrong database service name or port number has been specified.
Given that (I assume) the node configuration is not different between when you run it manually and when you run it as a scheduled task, my starting guess here is that some firewall software, or other network configuration differs between the two different executions.
The fact that the IP address, but not the server name finds the host machine would suggest that for starters, DNS is not configured/running when executing on the server as a scheduled task.
It’s as if the manual and scheduled executions are occurring on two different environments/machines where one has access to the database through the network, and the other is being blocked. But if, as you suggest, both executions (manual and scheduled) are taking place on the server, then there must be different network configuration/permissions for the two execution environments.
I think this may need the additional input of somebody with experience of how KNIME server is configured for executing scheduled workflows.
Taking a look at the following discussion on Oracle connectivity: DB Connector Oracle:
In that thread, I noted that the error you are now getting could also result from the database driver configuration using an invalid format. Is it possible that the driver configuration differs between running manually, and running as a scheduled job?
Is there anything in this post that may be able to assist? :