Hello! I have hosted n8n and SeaTable on my own server. The SeaTable has worked consistently. However, recently I added a lot of rows to one of my tables, and it now has more than 2000+ rows (it also has 20+ columns, and I am not srue what exactly is the issue), and n8n no longer gets triggered for new/update events from and only from that table. All other tables worked fine. There is no error indicating anything and my other tables’ triggers remain working very well. And this is not only limited to when I add a new row at the bottom of the table. Even if I add or edit at the beginning of the table, the trigger still does not work for the large table.
Below is the detailed log:
here is the workflow for the table with 2000+ rows.
n8n-1 | 2025-04-08T16:11:54.624Z | debug | Workflow “My workflow” (ID: hsbcgI55pF4d0f5a) activated {“workflowId”:“hsbcgI55pF4d0f5a”,“workflowName”:“My workflow”,“file”:“active-workflow-manager.js”,“function”:“addTriggersAndPollers”}
n8n-1 | 2025-04-08T16:12:02.654Z | debug | Querying database for waiting executions {“scopes”:[“waiting-executions”],“file”:“wait-tracker.js”,“function”:“getWaitingExecutions”}
n8n-1 | 2025-04-08T16:12:04.298Z [Rudder] debug: in flush
n8n-1 | 2025-04-08T16:12:04.298Z [Rudder] debug: cancelling existing flushTimer…
n8n-1 | 2025-04-08T16:12:35.005Z | debug | Polling trigger initiated for workflow “My workflow” {“workflowName”:“My workflow”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“active-workflows.js”,“function”:“executeTrigger”}
n8n-1 | 2025-04-08T16:13:02.654Z | debug | Querying database for waiting executions {“scopes”:[“waiting-executions”],“file”:“wait-tracker.js”,“function”:“getWaitingExecutions”}
n8n-1 | 2025-04-08T16:13:11.963Z [Rudder] debug: no existing flush timer, creating new one
n8n-1 | 2025-04-08T16:13:21.963Z [Rudder] debug: in flush
n8n-1 | 2025-04-08T16:13:21.963Z [Rudder] debug: cancelling existing flushTimer…
n8n-1 | 2025-04-08T16:13:35.006Z | debug | Polling trigger initiated for workflow “My workflow” {“workflowName”:“My workflow”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“active-workflows.js”,“function”:“executeTrigger”}
n8n-1 | 2025-04-08T16:13:44.731Z [Rudder] debug: no existing flush timer, creating new one
n8n-1 | 2025-04-08T16:13:54.731Z [Rudder] debug: in flush
n8n-1 | 2025-04-08T16:13:54.731Z [Rudder] debug: cancelling existing flushTimer…
n8n-1 | 2025-04-08T16:14:02.655Z | debug | Querying database for waiting executions {“scopes”:[“waiting-executions”],“file”:“wait-tracker.js”,“function”:“getWaitingExecutions”}
This is the same workflow with only the table of the trigger changed to a smaller table (~250 rows)
n8n-1 | 2025-04-08T16:14:37.478Z | debug | Workflow “My workflow” (ID: hsbcgI55pF4d0f5a) activated {“workflowId”:“hsbcgI55pF4d0f5a”,“workflowName”:“My workflow”,“file”:“active-workflow-manager.js”,“function”:“addTriggersAndPollers”}
n8n-1 | 2025-04-08T16:14:45.088Z [Rudder] debug: in flush
n8n-1 | 2025-04-08T16:14:45.089Z [Rudder] debug: cancelling existing flushTimer…
n8n-1 | 2025-04-08T16:15:02.656Z | debug | Querying database for waiting executions {“scopes”:[“waiting-executions”],“file”:“wait-tracker.js”,“function”:“getWaitingExecutions”}
n8n-1 | 2025-04-08T16:15:28.001Z | debug | Polling trigger initiated for workflow “My workflow” {“workflowName”:“My workflow”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“active-workflows.js”,“function”:“executeTrigger”}
n8n-1 | 2025-04-08T16:15:28.515Z | debug | Received event to trigger execution for workflow “My workflow” {“file”:“active-workflow-manager.js”,“function”:“__emit”}
n8n-1 | 2025-04-08T16:15:28.538Z | debug | Execution added {“executionId”:“5”,“file”:“active-executions.js”,“function”:“add”}
n8n-1 | 2025-04-08T16:15:28.540Z | debug | Execution for workflow My workflow was assigned id 5 {“executionId”:“5”,“file”:“workflow-runner.js”,“function”:“runMainProcess”}
n8n-1 | 2025-04-08T16:15:28.545Z | debug | Execution ID 5 had Execution data. Running with payload. {“executionId”:“5”,“file”:“workflow-runner.js”,“function”:“runMainProcess”}
n8n-1 | 2025-04-08T16:15:28.545Z | debug | Workflow execution started {“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.546Z | debug | Start processing node “SeaTable Trigger” {“node”:“SeaTable Trigger”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.546Z | debug | Running node “SeaTable Trigger” started {“node”:“SeaTable Trigger”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.546Z | debug | Running node “SeaTable Trigger” finished successfully {“node”:“SeaTable Trigger”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.547Z | debug | Start processing node “No Operation, do nothing” {“node”:“No Operation, do nothing”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.547Z | debug | Running node “No Operation, do nothing” started {“node”:“No Operation, do nothing”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.547Z | debug | Running node “No Operation, do nothing” finished successfully {“node”:“No Operation, do nothing”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.547Z | debug | Workflow execution finished successfully {“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“LoggerProxy.js”,“function”:“exports.debug”}
n8n-1 | 2025-04-08T16:15:28.547Z | debug | Executing hook (hookFunctionsSave) {“executionId”:“5”,“workflowId”:“hsbcgI55pF4d0f5a”,“file”:“execution-lifecycle-hooks.js”}
n8n-1 | 2025-04-08T16:15:28.548Z | debug | Save execution data to database for execution ID 5 {“executionId”:“5”,“workflowId”:“hsbcgI55pF4d0f5a”,“finished”:true,“stoppedAt”:“2025-04-08T16:15:28.547Z”,“file”:“shared-hook-functions.js”,“function”:“updateExistingExecution”}
n8n-1 | 2025-04-08T16:15:28.559Z | debug | Execution finalized {“executionId”:“5”,“file”:“active-executions.js”,“function”:“finalizeExecution”}
n8n-1 | 2025-04-08T16:15:28.559Z | debug | Execution removed {“executionId”:“5”,“file”:“active-executions.js”}
n8n-1 | 2025-04-08T16:15:28.566Z [Rudder] debug: no existing flush timer, creating new one
n8n-1 | 2025-04-08T16:15:30.011Z | debug | Removed editor-UI session {“pushRef”:“dmypbabanf”,“file”:“abstract.push.js”,“function”:“remove”}
n8n-1 | 2025-04-08T16:15:38.567Z [Rudder] debug: in flush
n8n-1 | 2025-04-08T16:15:38.567Z [Rudder] debug: cancelling existing flushTimer…
From the logs I really cannot tell what went wrong and whether the error is on n8n’s or seatable’s end.
n8n version 1.86 in docker. no external database.
SeaTable is 5.2.7.
I have updated to the latest versions for both n8n and seatable last night and the issue persists.
Because the same API continues to be working for all the other tables, I assume that this is not due to any API rate-limiting issues.