В очереди есть атрибуты BOQNAME и BOQTHRESH. Для них должно быть задано имя очереди возврата, в которой сообщение должно быть поставлено в очередь, и пороговое значение для количества возвратов перед отправкой сообщения.
Кроме того, QMgr должен иметь возможность помещать сообщение в назначенную очередь. Проблемы могут включать неправильное написание имени очереди, переполнение очереди возврата или учетная запись, на которой запущен MDB, не авторизован для размещения сообщений в очереди возврата.
Если MDB обнаруживает зацикленную петлю сообщения и ему некуда отправить сообщение, она прекращает обработку. Вы по-прежнему будете видеть поток, но вам не хватит одного или нескольких открытых дескрипторов ввода в очереди. Приложение должно быть перезапущено, чтобы восстановить его в этом случае.
Избегайте использования DLQ системы для пункта назначения возврата. DLQ - это место, где QMgr будет помещать сообщения, поступающие от другого QMgr, которые не могут разрешиться в очередь назначения. К ним будет прикреплен заголовок мертвой буквы, тогда как сообщения MDB, помещенные в очередь, не будут. Это может вызвать проблемы с любой автоматизацией, которую вы наблюдаете за DLQ. Поэтому желательно иметь очередь исключений для каждого приложения, которая не DLQ.
BOQTHRESH должно быть больше 1 или 2, потому что обычные операции, такие как отключение QMgr или канала, могут привести к отказу. Я обычно устанавливаю BOQTHRESH на 5 или 10, но видел, как люди устанавливают это намного выше. Зависит от вашего допуска к повторным попыткам и от того, были ли отказы, как правило, вызваны переходными условиями, такими как заполнение экстентов журнала.