Клиент Java Nats: непонятное сообщение об ошибке. Для переназначения темы требуется Options.oldRequestStyle ()

В нашем проекте мы использовали NATS (Server-Version 2.1.9) в качестве нашего сервера сообщений. Часто мы получаем журналы ошибок в Java Nats Client, например:

`ERROR: Subject remapping requires Options.oldRequestStyle() to be set on the Connection`

Это происходит из io.nats.jnats версии 2.8 (nats.client.impl.NatsConnection # deliveryReply).

Но мы не замечаем никаких проблем в нашей системе.

Итак, мой вопрос: как это может произойти, о чем он нас предупреждает и как мы можем с этим справиться?


person censue    schedule 03.03.2021    source источник
comment
Я немного покопался. Извините, пока нет ответа, но это может помочь другим, ищущим ответ, узнать, что сообщение об ошибке появилось с помощью исправления переназначения темы github.com/nats-io/nats.java/pull/327.   -  person Georg    schedule 05.03.2021
comment
Кроме того, это единственное использование System.out в клиенте Java NATS, за исключением трассировки соединения, которую можно включить в качестве опции, см. Io.nats.client.Options # isTraceConnection. Может указывать на то, что там еще есть возможности для улучшения ...   -  person Georg    schedule 05.03.2021
comment
github.com/nats-io/nats.java/issues/424 Непонятное сообщение стандартного вывода «ОШИБКА: для переназначения темы требуется Options.oldRequestStyle ()…»   -  person Georg    schedule 12.03.2021
comment
Кто-нибудь видел, чтобы эта ошибка снова появлялась в версии 2.10.0?   -  person Zannith    schedule 03.04.2021


Ответы (1)


См. Ответ на эту проблему с github: https://github.com/nats-io/nats.java/issues/424

Короче говоря, это исправлено в нашей версии 2.9.0. Я ответил в вопросе:

Мы можем воспроизвести это при повторном использовании сообщений. Я тоже видел это периодически, но не мог понять. Как оказалось, сообщение об ошибке в любом случае вводит в заблуждение. Это происходит, когда мы не можем сопоставить входящее сообщение с исходящим / будущим, сделавшим запрос. На самом деле этого никогда не должно происходить. Поскольку это было внеполосное (асинхронное), мы действительно мало что могли сделать, поэтому печать сообщений была лучше, чем ничего. Хорошей новостью является то, что в текущей версии 2.9.0-SNAPSHOT есть исправление, касающееся обработки сообщений, которое решает эту проблему. Можете ли вы попробовать обновиться до 2.9.0-SNAPSHOT и посмотреть, решит ли это вашу проблему? 2.9.0-SNAPSHOT является стабильным и обратно совместимым, поскольку это почти эксклюзивные дополнения и улучшения JetStream.

person Scott F    schedule 19.03.2021
comment
Спасибо, это решение. У нас больше нет этого сообщения об ошибке, начиная с версии 2.9.0-SNAPSHOT. - person censue; 22.03.2021