DB Node Bugs

#1

Hi KNIME team & community,

I am enjoying the latest release of KNIME (4.0) with the new DB nodes - thank you for the stable version.

Sometimes, I experience bugs in the new DB nodes, such as:

  1. If I reset and restart a node (e.g. the Table Writer node) an error occurs:
    ERROR DB Connection Table Writer 2:1286:1260:326 Execute failed: Incorrect syntax near ‘.’.
    If I restart the node, it works completely fine. I would also send you a log file, if you would provide me details which log you would need.

  2. If the session to an SQL server “breaks” (e.g. if I kill a process on the server on purpose), I have to manually reset the whole SQL-workflow. It would be more convenient, if a check could be implemented, if the SQL session has to be re-initialised by the KNIME node. With the legacy nodes, I never experienced such issue (I assume, as there was only one connection to the server, it did not “break” as easy).

However: Do you want us to report bugs & errors in the Forum or would you prefer the bug reports in github / somewhere else?

Thanks & best regards
Malte

0 Likes

#2

…in addition, I find the “DB Table Selector” node very picky regarding the Database connection: Very often, it may (1) neither be executed via “F7”, nor (2) is it possible to configure the node (The dialog cannot be opened for the following reason: Database connection is not available) if an unconfigured/unexecuted “DB SQL Executor” or “DB Table Ceator” is connected before the DB Table Selector. If I manually start / execute the precedessor nodes, it works fine.

It might be nice, if the “DB Table Selector” node would be less strict regarding the unexectued predecessors so you can execute it right away.

0 Likes

#3

…and another error:
When selecting “overwrite” in the “DB Connection Table Writer” node, I am receiving following error, randomly (but very often):

ERROR DB Connection Table Writer 2:1286:1422 Execute failed: An invalid parameter or option was specified for procedure ‘sys.sp_rename’

After a restart of the node, everything works fine…

0 Likes

#4

Hello linkm,
thanks for all the valuable feedback. In general we prefer bug reports or general KNIME questions via the KNIME forum. So you have already found the right place :slight_smile:
You can attache log files to your forum posts or also provide example workflow as described in the Bug Reporting Best Practices. However when working with databases you should make sure that they do not contain any sensitive information e.g. connection strings etc. That is why it is better if you only past the part of the log file which contains the error including the stacktrace. If you want to or need to submit sensitive information you can do so via personal messages in the forum. Also it would be great if you could create a separate forum post with good titles for each separate problem. This way it is easier for us to keep track of them and for other users to find existing entries.

Regarding your problems
Can you give me some more information about the DB Connection Table Writer node problems, e.g. which database you are connecting to and which driver you are using. The log file with the SQL statement would be also very helpful. To enable JDBC logging in KNIME open the node dialog of the DB connector node and go to the Advanced tab. In the tab select the JDBC logger option as shown below.

Regarding your connection problem, we didn’t support this in general since it might cause problems for example when working with session base objects e.g. temporary table that will no longer exist if the connection was recreated. Then executing all nodes after the node that creates the session based object will fail and might trigger other questions. However I see your point which might be pretty painful especially if you have a very large workflow with lots of nodes to executed. I will open up a feature request and we will rethink the implementation. Maybe we will automatically create a new connection and output a warning the in the KNIME log that a new connection was created.

I will also open up a feature request for the DB Table Selector node and maybe other nodes that have the same problem. The restriction was introduced with the Input Type Mapping tab which gets its information from the input connection. However we might be able to just leave it empty and still allow the user to open up the node to at least specify the schema and table name manually.

Bye
Tobias

2 Likes