I created a node that is inserting data into OracleDB.
It uses package ‘oracledb’ → [
import * as oracledb from 'oracledb';] to create a connection for executing a SQL query [
However, it cannot execute an
insert statement properly with the following error:
There are several conditions that I found:
- When I change to execute a
select statement, it works fine and does not show any error.
- The node can execute an insert statement when I use (
npm run dev) to start n8n
- The node cannot execute an insert statement when I use
docker to start n8n
The issue happens only in the environment with two workers and two webhook workers.
Therefore, may I know where is the place of storage the error log when use docker to start n8n, instead of getting an error response with an unknown reason, and how to fix this issue.
Do you get an errors when you build n8n? It can be a case that the build is failing. You can use the docker logs command to log any error message that has been thrown. I would also suggest you setup logs in n8n. Here’s the link to the documentation: Logging in n8n | Docs
Hi @harshil1712 ,
After I set up logs in n8n, I found that there is a file called “WorkflowExecuteAdditionalData.js” (Logging), it may contain the error logs of why I cannot insert Data into Oracle? Where can I found this file?
Moreover, base on the logs of the below picture, do you know what is the root cause of this issue?
I need some additional information to help you. The Oracle node is custom, right? You have built it yourself or are you using one of n8n’s native nodes?
If it’s custom, it is important to make sure that both n8n, workers and webhooks are all running the exact same version of n8n and all connect to the same database.
Also can you activate logging for the
worker processes? These can add some useful information. Each instance of n8n, be it a regular process, worker or webhook, can generate different log messages.
Let me know if you need any clarifications!
The node is custom.
Both n8n, workers and webhooks are all running the exact same version of n8n and all connect to the same database.
The environment of my workers is already added
N8N_LOG_OUTPUT=console. But it does not show any useful logs… Only n8n has appeared the log.
I have seen that error before but it wasn’t with n8n. Are you using SQLite with n8n and when you say it is oracle you are connecting to which version is it?
Have you also checked the oracle db logs at the same time to see what that is coming back with?
Ok so there is another test we can do. Try running n8n without setting
EXECUTIONS_MODE=queue (i.e. standalone mode). See if your workflow runs fine.
This will allow us to isolate the problem to see if there is a problem with queue mode or something wrong with the node itself.
After I remove EXECUTIONS_MODE=queue, it still appears the same error…(“Workflow execution process did crash for an unknown reason!”)
What can I do? Thanks
This is strange, as it means it is not a problem with the queue mode. This could be an issue with the node itself, although n8n would still handle errors in such cases.
One possibility is that some handling is not being done (such as closing connections, reopening, etc) and causing Oracle to send a bad reply to n8n. Another possibility is that the libray is crashing due to connectivity issues.
As far as I can tell, the errors you are getting are probably from the node code, and not n8n itself.
If your node can be made public, I would ask you to share it so we can have a look at your code.
@savina_kau hello how did you manage to insert the oracle connector in the n8n. could you give me a tutorial? i need to connect to an oracle base to execute a view