Должен ли pika's channel.basic_publi sh превышать время ожидания раньше, если нет сетевого подключения? - PullRequest
0 голосов
/ 17 января 2020

Я нахожусь в процессе обновления до pika 1.1.0 и провел некоторое тестирование работоспособности. Я:

  • установил точку останова на следующем
  • отключил сеть
  • перешагнул через эту команду

... и исключений не было. Ожидается ли это?

        channel.basic_publish(
            exchange=EXCHANGE,
            routing_key=ROUTING_KEY, 
            body=message,
            properties=pika.BasicProperties(
                delivery_mode=MQ_TRANSIENT_DELIVERY_MODE,
                headers=headers,
            )
        )

Соединение создается с помощью:


    connection = pika.BlockingConnection(pika.ConnectionParameters(
        host=rabbit_config.host,
        credentials=credentials,
        port=rabbit_config.port,
        connection_attempts=1,
        blocked_connection_timeout=10,
        retry_delay=5,
        socket_timeout=20,
        heartbeat=30,     ))

update : если я позвоню channel.confirm_delivery() до этого, я успешно получу AMQPError .

Однако это не происходит в течение 60 секунд (что не соответствует моим параметрам подключения). Как можно быстрее заметить потерю соединения?

...