6 months ago
Hey - my grist service is not able to connect to either redis service or minio bucket service after I issued a redeployment. I am not sure what will fix this. Tried with both public & private endpoints. Receiving timeout error.
The service is completely down and am totally blocked in production!!
We have about 50 users daily work dependent on this service!!
6 Replies
6 months ago
6 months ago
```2026-01-20 18:56:39.136 - warn: DocWorkerMap: redisClient connection closed
Error: connect ETIMEDOUT fd12:24e4:6259:0:9000:43:1f02:d486:9000
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1637:16) {
errno: -110,
code: 'ETIMEDOUT',
syscall: 'connect',
address: 'fd12:24e4:6259:0:9000:43:1f02:d486',
port: 9000
}```
6 months ago
This thread has been marked as public for community involvement, as it does not contain any sensitive or personal information. Any further activity in this thread will be visible to everyone.
Status changed to Open Railway • 6 months ago
6 months ago
Is this not a networking issue on the railway platform side?
6 months ago
somehow it started working when I tried the redeployment multiple times. There was a service restart scheduled for minio service every 1hr though - not sure if that would result into this!
Also, I am not able to use the internal domain of the redis, it is working only with public domain
```
2026-01-20 19:11:21.692 - error: PubSubManagerRedis: redisPub connection error: Error: getaddrinfo ENOTFOUND redis
```
6 months ago
Your logs show a connection attempt to fd12:24e4:6259:0:9000:43:1f02:d486 on port 9000. This is an IPv6 address.
If your internal network routing is not configured for IPv6, the application resolves the DNS to an IPv6 address, tries to connect, and hangs until it times out. So, I would recommend you check if your application environment correctly handles IPv6.
3 months ago
Quick Fix for Grist Not Connecting to Redis & MinIO After Redeploy
This is a very common internal networking / DNS resolution issue on Railway after redeployments (especially with Redis + MinIO).
Try these steps in order:
- Restart All Services (Fastest first step)
- Restart Redis service first.
- Restart MinIO service.
- Then restart your Grist service.
- Wait 30–60 seconds between each.
- Force Use Private URLs Correctly
- In Grist service variables, make sure you're using: * REDIS_URL → ${{Redis.REDIS_PRIVATE_URL}} (or the full internal URL: redis://redis.railway.internal:6379) * MINIO_ENDPOINT or MINIO_URL → Use the private MinIO URL (usually minio.railway.internal:9000)
- Important for Redis: If you're using Node.js/ioredis, add this config: JavaScript
new Redis(redisUrl, { family: 0 }); // Forces IPv4 - Add Connection Timeouts (Highly Recommended) Add these variables to your Grist service: text
REDIS_CONNECT_TIMEOUT=30000
REDIS_SOCKET_TIMEOUT=30000
MINIO_CONNECT_TIMEOUT=30000 - Temporary Workaround – Switch to Public URLs If private still fails:
- Change to Public Proxy URLs for both Redis and MinIO.
- This usually works immediately when internal networking flakes.
- Extra for MinIO
- Ensure you have PORT=9000 set as a variable on the MinIO service.
- Use http://minio.railway.internal:9000 (not https) for internal connections.
After applying, Redeploy Grist and check the logs for exact error messages (ETIMEDOUT, ENOTFOUND, etc.).
This has resolved the same "after redeploy timeout" issue for many users with Grist + Redis + MinIO stacks.
Paste the exact error from Grist logs (and which URLs you're currently using)