Ошибка публикации сообщения из PostgreSQL в RabbitMQ с использованием расширения amqp - сбой входа на брокер 1

Я пытаюсь опубликовать сообщение из PostgreSQL в RabbitMQ (оба работают на Docker)

SELECT amqp.publish(1, 'amqp.direct', 'EMAIL', 'message');

но возвращается false и предупреждающее сообщение:

ВНИМАНИЕ: amqp [my_host_address: my_port] не удалось войти на брокер 1

Обновление: ошибка в журналах контейнера RabbitMQ Docker:

не удалось согласовать параметры соединения: согласованный channel_max = 0 (без ограничения) превышает максимально допустимое значение (2047)

Параметры брокера в amqp.broker таблица - хост, порт, виртуальный хост, имя пользователя, пароль определены правильно. Можно публиковать сообщения с консоли моего компьютера в RabbitMQ, используя Curl и те же параметры подключения, и они добавляются в очередь сообщений.

1 ответ

Было два возможных решения:

  1. добавить переменную окружения в стек Portainer RabbitMQ:
    RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS: '-rabbit channel_max 0'
  1. исправлять src/librabbitmq/amqp_socket.c

    https://github.com/omniti-labs/pg_amqp/issues/23

Другие вопросы по тегам