ok this is driving me insane. we’re running n8n in queue mode. docker compose, 1 main + 2 workers, redis + postgres. for the past two days random executions just disappear. no error in the UI, nothing. worker logs show:
Worker failed to find data for execution 116 (job 147). Aborting.
happens to like 1 out of every 15 runs, not all of them. restarting the whole stack buys us a few hours then it starts again. redis isn’t maxed out, cpu/ram look fine too. please someone who’s actually fixed this and not just “have you tried turning it off and on” 
ok so this is actually a redis eviction thing, not an n8n bug. most managed redis instances (elasticache, upstash, even a lot of self-hosted setups) default maxmemory-policy to allkeys-lru. bull just writes job payloads as regular redis keys with no special protection, so when redis gets close to its memory ceiling it evicts the oldest keys to free up room — including jobs that haven’t even finished running yet. worker goes to grab the payload and it’s just… not there anymore.
run redis-cli CONFIG SET maxmemory-policy noeviction and bump your maxmemory while you’re at it, bull doesn’t back off on its own when redis is under pressure. also throw EXECUTIONS_DATA_SAVE_ON_ERROR=all into your main instance env so execution data gets written to postgres too instead of only living in redis mid-run. that “1 in 15” pattern is exactly what eviction under memory pressure looks like.
agree with ahsan on the eviction theory, but don’t just apply the fix blind — confirm it first. redis-cli INFO memory and check evicted_keys, if that number’s climbing you’ve got your answer.
once you fix the policy, also add a keep-alive so this doesn’t come back as a different bug in a few weeks: QUEUE_BULL_REDIS_KEEP_ALIVE=true, QUEUE_BULL_REDIS_KEEP_ALIVE_INTERVAL=30000. a lot of hosted redis providers silently kill idle connections after ~10 min and n8n doesn’t handle that gracefully out of the box. and honestly, set up an alert on evicted_keys > 0 — way better than finding out from a customer instead of your monitoring.
checked evicted_keys, yeah it’s climbing steadily. that’s it. set noeviction, bumped memory, nothing’s dropped since. ahsan’s answer is the actual fix. fahad — the keep-alive + alert is staying in too, not turning that off. saved me from blaming postgres all night for nothing lol, upvoting both of you.