URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID4
Нить номер: 589
[ Назад ]

Исходное сообщение
"Новые ответы в старом топике"

Отправлено Licha Morada , 11-Фев-20 00:23 
Привет.

Время от времени в списке тем форума показываются старые вещи под видом обновлённых.
Например, на форуме "Маршрутизаторы CISCO и др. оборудование" сказанно что сообщение "Cisco 1841 и IPTV Ростелеком" было обновлено 10-Фев-20 13:59, а на самом деле самый свежий ответ там датирован "08:13 , 26-Июн-19".
Скриншот: https://imgur.com/a/42WIaGQ


Содержание

Сообщения в этом обсуждении
"Новые ответы в старом топике"
Отправлено Maxim Chirkov , 11-Фев-20 08:22 
Новых сообщений в таких ветках нет, так как они удалены модератором. Спамеры отправляют сообщения, их оперативно удаляет бот или модератор, но ветка остаётся формально обновлённой и её позиция в индексе меняется.

"Новые ответы в старом топике"
Отправлено Licha Morada , 13-Фев-20 07:24 
> Новых сообщений в таких ветках нет, так как они удалены модератором. Спамеры
> отправляют сообщения, их оперативно удаляет бот или модератор, но ветка остаётся
> формально обновлённой и её позиция в индексе меняется.

Ясно, спасибо за ответ.
С моей колокольни, ожидаемым поведением был бы откат к старой дате (если она почему-то хранится отдельно а не определяется динамически на основе даты последнего валидного сообщения). Но, я готов допустить что такой расклад таит какие-то свои неочевидные заморочки, которыем мне не приходят в голову. В любом случае, ни на каких исправлениях я не настаиваю, ваш форум замечателен в том виде в котором он есть.


"Новые ответы в старом топике"
Отправлено Maxim Chirkov , 13-Фев-20 08:37 
Список веток хранится в отсортированном виде,  чтобы при любом обращении не сортировать каждый раз. При обновлении ветка перемещается вверх списка и дата заменяется. С возвращением после удаления слишком много неочевидных проблем, напрмер, просто откатить на прошлое состояние после удаление нельзя, так как нужно отслеживать то, что было удалено именно самое последнее сообщение или сразу несколько последних сообщений.

"Новые ответы в старом топике"
Отправлено Licha Morada , 13-Фев-20 20:56 
> С возвращением после удаления слишком много неочевидных проблем, напрмер,
> просто откатить на прошлое состояние после удаление нельзя, так как нужно
> отслеживать то, что было удалено именно самое последнее сообщение или сразу
> несколько последних сообщений.

Посмотреть дату самого последнего неудалённого сообщения, этим значением обновить список веток, не?

Пример: Если удалено последнее сообщение, то ветка в списке будет помечена датой самого последнего сообщения из выживших.
Пример: Если удалено не последнее сообщение, то ничего не изменится.
Пример: Если удалено несколько сообшений, обновить список веток после каждого удаления.
Наверное, нечто похожее происходит и при добавлении сообщения...


"Новые ответы в старом топике"
Отправлено Maxim Chirkov , 14-Фев-20 09:01 
Логично. Будет время попробую доработать код удаления.