У меня есть пользователь, который сообщает, что при просмотре случайных постов получает ошибки 500. Просматривая логи, я вижу только эти сообщения, которые, похоже, затрагивают только этого пользователя. Это стандартная установка, обновленная до PG13. Я не вижу этих ошибок ни у каких других пользователей. Все они, по-видимому, связаны с private_messages, что не кажется «случайными постами». При поиске этой ошибки я нахожу несколько сообщений годичной давности, в которых утверждается, что это ошибка PostgreSQL.
Discourse 2.8.0.beta6 - https://github.com/discourse/discourse версия f513266bcbc03eedebda17695b8a7ffbcad6ebcc
Started GET "/u/joe/private-message-topic-tracking-state" for 82.71.0.62 at 2021-10-07 07:08:25 +0000
Processing by UsersController#private_message_topic_tracking_state as JSON
Parameters: {"username"=>"joe"}
Completed 500 Internal Server Error in 70ms (ActiveRecord: 0.0ms | Allocations: 1952)
PG::InternalError (ERROR: subplan "SubPlan 2" was not initialized
CONTEXT: parallel worker
)
Это действительно ошибка PostgreSQL, которая была исправлена в последней минорной версии. Можете ли вы выполнить пересборку? Это обновит PostgreSQL до последней минорной версии.
Раз уж я задал этот вопрос, порекомендуете ли вы выполнить вакуумирование и параллельную перестройку индексов при таком незначительном обновлении? Я делаю это при обновлении до основной версии 13. Является ли выполнение этих действий для данного незначительного обновления ненужным, не плохой идеей или излишним?