I have errors with redis with newest versions

I think this is error with newest redis version, and I must restart redis everytime.
But it still get errors after a short time running.

This error is in worker log

I set redis with protected-mode and it has error in worker auth after short time running. Then I set protected-mode and requirepass, and after short time running I got this error below:

Error from queue: 
Error from queue: 
/usr/local/lib/node_modules/n8n/node_modules/standard-as-callback/built/index.js:6
        throw e;

^
ReplyError: NOAUTH Authentication required.
    at parseError (/usr/local/lib/node_modules/n8n/node_modules/redis-parser/lib/parser.js:179:12)
    at parseType (/usr/local/lib/node_modules/n8n/node_modules/redis-parser/lib/parser.js:302:14) {
  command: { name: 'info', args: [] }
}

Hi @cmdntd987, I am sorry to hear you’re having trouble with your Redis authentication. @krynble could you help with this by any chance?

Hope soon. This issue is very serious because of worker stuck.

Did your Redis setup work with n8n versions before 0.192.2? If so, you might want to consider temporarily downgrading n8n again.

Yes, I set it up before for worker.
At old one, I just set redis with protected-mode, and everything is ok.

Hey @cmdntd987 I’m sorry about the issue.

I’ll be investigating this but as mentioned by @MutedJam we recommend downgrading to continue working until a fix is found.

1 Like

I found something could make this, some nodes could be got stuck by this error before:
(not sure)

Failed execution
There was a problem executing the workflow:
"Cannot read properties of undefined (reading 'node')"

It seems when there is something wrong with node that could caused redis failed…

When I tried to back to 0.192.0, this node error disapeared (and redis could be the same).
I have not tested on 0.192.1
Anyway, redis has newest version 6 days ago, and I use the newest. You could check this version: Docker

I tried to test with 0.192.0. But everything still get error, although I tried to do a auth command for redis. I will try to back to 0.191.1, but it makes me so tired.

Could you check this soon?
It make all of my workers failed, and almost workflows have got stuck now.

Hey @cmdntd987

I’m checking this issue now, but we don’t officially support Redis with authentication. I believe your workers are simply unable to connect to Redis, and therefore will not process anything.

I’ll see if we can implement those security measures when connecting to Redis but I strongly suggest you deactivate protected mode and requirepass since our current implementation has no support for these.

Please note that I strongly believe this is not an issue with upgrading n8n versions, since no tool related to connecting to Redis in queue mode was changed in recent updates.

1 Like

Ok short update here after testing:

If you’ve set a password requirement for Redis, have you set up QUEUE_BULL_REDIS_PASSWORD correctly? I tested and it works fine, but you need to set the correct password.

About the Protected Mode, you have to fix your network so Redis is accessible by n8n - this is not an issue with n8n but with your network settings.

I fixed it.

Like you said, I tested by few days ago. It is ok with QUEUE_BULL_REDIS_PASSWORD

I do not know how, at past, it is ok with protected mode without requirepass. I must set security here because redis will be attacked by anonymous by default. Now protected mode has error after short time usage, and I must change to set QUEUE_BULL_REDIS_PASSWORD.

I think you could continue to check with protected mode and requirepass, and default user for docker documents.

We also have seen the "Cannot read properties of undefined (reading 'node')" error in cron triggered workflows with lots of sub workflow executions in queue mode.

We noticed a huge improvement by reducing the QUEUE_RECOVERY_INTERVAL value from 60 seconds to 10 seconds.