Redis.com Connection Failing

Hi, I am trying to connect to a free redis.com database within fly. Locally I can connect to the remote fine.

I have a redis connection string (works locally well) redis://default:PW@redis-16620.xxxxxxxx.eu-west-2-3.ec2.cloud.redislabs.com:16620

When deployed to fly I see:

{
  "library":"SSL routines",
  "reason":"packet length too long",
  "code":"ERR_SSL_PACKET_LENGTH_TOO_LONG"
}

I have tried appending ?family=4 and ?family=6 to force ipv4/6 version, no change.

redis is correct (rather than rediss) as the free tier does NOT include TLS.

What library are you using? Do you know that the family query string device definitively should work?

IORedis is the client library.

from their source they respect the family=4|6 query param ioredis/lib/utils/index.ts at main · redis/ioredis · GitHub

if (typeof options.family === "string") {
    const intFamily = Number.parseInt(options.family, 10);
    if (!Number.isNaN(intFamily)) {
      result.family = intFamily;
    }
  }

Coolio, alrighty. I’d next check the connection from the Fly console using one of these techniques. redis-cli sounds worth a try.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.