Interval trigger does not work

Hi there!

I’m using the docker version of n8n (latest tag) and set up a workflow that should be triggered by an interval trigger.

I was expecting, that I should see the result of the triggered executions in the “executions” view, but there isn’t anything.

Do I have to configure something else besides configuring the right timezone and activating the workflow to make interval and cron nodes work? (I tried first with the cron node, which didn’t work, too).

Thanks.

Kind regards
Dennis

Welcome to the community @dploeger!

Did you activate the workflow (in the top right corner)?

Hi!

Yes. Did that.

Kind regards
Dennis

For the Interval Trigger-Node the timezone does not matter. It triggers the first time after the specified amount of time and then keeps on doing that forever.

No, nothing else except what you described should be needed. To be 100% sure I just tried again with a totally new instance (no existing data, no default values changed).

So if I:

  1. create an Interval Trigger Node
  2. leave it on the default 1 second interval
  3. save the workflow
  4. activate the workflow
  5. look into Executions

Then I can see a new entry appearing every second. So have no idea right now why it would not work for you.

How is the process in the backend for this? I saw that the interval node uses setInterval. Is that still handled by the backend, because I don’t keep n8n open obviously.

Yes, when I use an interval trigger and keep the n8n frontend open, it works. But I’d like to let my workflows run in the background (like with integromat or IFTTTT). Is n8n not designed for this?

If the frontend is open or not doesn`t make any difference at all. What however makes a difference is if the n8n process itself is running. If you stop the n8n main process, then neither the frontend nor the backend (so n8n itself) will run and if it does not run, it can not trigger any workflows.
So are you sure that the main n8n process is still running? If you for example start n8n in the terminal/console and you then close it, n8n itself will also stop.

Yes, the container keeps running. So there’s a loop that checks all the workflow’s triggers periodically?

It is not really a loop. In the case of the Interval-Node n8n simply use a “setInterval”:
https://github.com/n8n-io/n8n/blob/master/packages/nodes-base/nodes/Interval.node.ts#L80

So have sadly really no explanation why it would not work for you. Did you maybe have n8n setup up to not save successful executions via this environment variable:

or the Workflow-Settings?

No, it says “Default - save” on those settings. I already ready restarted the container.

Hm. Strange. I’m running n8n behind a (apache) reverse proxy, who also does the basic auth (so no basic auth in n8n). Also, for data persistence I use a hosted MySQL database.

Could this be a problem?

Ok, then the settings look correct.

No, the database should not make any difference. Can sadly not explain what is going on here. If the workflow is active and the backend up it has to execute the workflow. Did never hear of a case yet where it did not do that. So I am very confused about what would be different here.
Probably best to run the most basic version of n8n locally (with SQLlite and nothing changed, directly via npm or docker) and then see if it works for you there. And then see what breaks it.

1 Like

Hm. I tried it, it worked and then I tried a very basic interval workflow that just runs console.log and it works on my server as well. So it has to be something about the workflows.

I added a function to also console.log something when the workflows start, so I can check the docker log for that and investigate from there.

I’ll keep you posted. Thanks so far.

Kind regards
Dennis

1 Like

Very interesting. Yes please do!

Hmmm… Well, the console.log does work but the executions are not contained in the “execution” lists in the UI.

Could there be an issue perhaps?

Very interesting. That sounds like a bug. We will try to investigate.

1 Like