- Порезанный
- 12 августа 2026 г. в 22:16 UTC
- Автор
- Kamo
- Обещать
- 2746ad0
Два независимых дефекта в чатах, оба невидимы со стороны Java. Родной чат / поддержка / социальные запросы псевдонимы столбцы в верблюжье дело без Цитирую их. Строки возвращаются как Карта, зашифрованная псевдонимом; Hibernate берет эти ключи от ****************, какой бы ни был сервер сообщается, и YugabyteDB складывает нецитированный идентификатор в нижний регистр. Затем TupleMetadata просматривает псевдоним на карте Case-SENSITIVE, промахи и Весенняя TupleBackedMap проглатывает Незаконный АргументИсключение и отвечает нуль. Таким образом, map.get («ticketId») был нулевым без исключения, без лог-линии и без каких-либо ограничений. Заметьте. Ряд поддержки без идентификатора билета не может быть открыт вообще - поддержка Разговор рассматривается по билету, а не по сеансу, поэтому каждая строка в чате Поддержка была инертной. ПоследнийActivityAt умер таким же образом, молча стоил слияние Поддержка непрочитанного подсчета предполагает, что в сеансе поддержки посетитель и Агент делится одним идентификатором члена. Это верно только для публичного виджета веб-чата. где анонимный посетитель не имеет записи участника и пишет под Член системы. Это ложно для входного билета - и запасной вариант оправдан, подсчитывать каждое сообщение в сессии, включая ваше собственное, означало подачу поддержки; запрос поставить непрочитанный значок на собственный чат-индикатор аскера: креатив пишет Созданное системное событие, автором которого является запрашивающий, маршрутизация пишет ASSIGNED, и Оба были засчитаны против них за разговор, на который никто еще не ответил. В настоящее время двусмысленность точно обнаружена (сессия публичных чатов, просмотренная экспертами). Вместо того, чтобы приниматься на каждую сессию поддержки. Также: разговоры поддержки перечисляются по членству в сессии, а не по задание, потому что билет может быть проработан более чем одним агентом — предыдущим цессионарий остается в очереди, и агент может присоединиться из очереди - и Заключенный на задании разговор исчез от всех, кроме текущего цессионарий. И findSupportSessionsToAutoOpen дает поддержку долговечной Перезапись разговора уже была, поэтому ответ приземляется даже для того, кто закрылся. Окно.