Да, скорее всего, это означает, что вы возложили на Discourse слишком большую нагрузку, из-за чего тайм-аут сработал для веб-воркера (это происходит через 30 секунд).
Нам следует исправить коренную проблему: перемещение 100 сообщений на самом деле не должно занимать так много времени, и мы можем отложить выполнение части задач.
Я пробовал несколько наборов: от сотен до десятков, затем по одному посту!
Не могу понять, почему иногда это не работает, а в других случаях всё отлично.
Обновился до версии 2.4.0.beta4 (cb8fa46970), но ошибка 502 при перемещении 1/5/10/50 сообщений всё ещё возникает.
Это нарушает административные процедуры, поэтому я не могу привести в порядок некоторые ветки.
Я исправил ошибку, которая могла возникать при перемещении постов в существующую тему, которая ранее была разделена. Помогло ли это решить проблему, с которой вы столкнулись?
Вы уверены, что это происходило при перемещении в новую тему? Если да, то это другая ошибка, чем та, которую я исправил и заметил в наших логах.
Есть ли ошибка в /logs? Сколько постов вы перемещаете? Перемещаете ли вы первый пост темы? Перемещаете ли вы в новую или существующую тему? Затрагивает ли это что-то необычное (например, шепот, удалённые посты или ранее разделённые темы)?
Да, (до недавнего обновления) мы сталкивались с проблемой 502 Bad Gateway при попытке переместить ответы в новую тему (это происходило случайно и не всегда).
К сожалению, мне не удаётся найти закономерность. Ошибка возникает при перемещении одного или нескольких сообщений. Однако у меня есть предположение, что она чаще всего происходит при перемещении между двумя крупными темами, которых у меня много. Многие из них были разделены несколько раз. Я никогда не использовал шепоты, но в большинстве тем много удалённых сообщений. В логах (/logs) нет явных ошибок
edit: Кажется, это началось после обновления до бета-версии 5.
на https://community.hiveeyes.org/ мы недавно столкнулись с тем же самым при перемещении сообщений между темами. Хотя мы пока не проводили более глубокого расследования,
Если это может помочь: речь шла всего об одном сообщении [1], которое мы хотели переместить из непубличной темы в публичную, и это вызвало ошибку. После неудачи мы вручную создали копию сообщения.
Хорошо, ошибка 500 должна быть исправлена в последней версии. Я только что сделал коммит с ещё одним исправлением, чтобы в логах отображалась фактическая ошибка, если там есть ещё какой-то баг.
Если вы получаете ошибку 502, это значит, что процесс перемещения занимает слишком много времени и происходит тайм-аут. За последние несколько месяцев я внёс множество изменений, чтобы при перемещении постов переносилось больше метаданных. Я попытался оптимизировать этот процесс, но он сильно зависит от объёма данных и всё ещё может быть слишком ресурсоёмким для некоторых серверов, чтобы выполнить всю работу менее чем за 30 секунд.
Решение будет заключаться в том, чтобы ещё раз провести рефакторинг и постоянно хранить информацию о перемещённых постах в базе данных (вместо временной таблицы), а всю тяжёлую работу выполнять в фоновом задании.