Skip to content

[Messenger (Redis transport)] Connection should use custom Redis instance #45057

Closed
@OO00O0O

Description

@OO00O0O

Description

If I provide custom Redis instance to Symfony\Component\Messenger\Bridge\Redis\Transport\Connection and it's already connected, Redis goes "Server went away". Thats because(probably) its already connected.

Problem is in symfony/redis-messenger/Transport/Connection.php:76. There should be another elseif with elseif ($redis && $redis->isConnected()) { $this->connection = $redis; }

Example

class MessengerTransportFactory extends RedisTransportFactory
{
    public function createTransport(string $dsn, array $options, SerializerInterface $serializer): TransportInterface
    {
         return new RedisTransport(
            new Connection([], [], [], $CUSTOM_REDIS_INSTANCE),
            $serializer
        );
    }
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions