Yeah, what this probably means is that you tried to get Discourse to do so much work it had to time out the web worker (which happens after 30 seconds)
We should fix the underlying issue here, moving 100 posts really should not take that long and we can defer a bunch of the work.
Я пробовал несколько наборов: от сотен до десятков, затем по одному посту!
Не могу понять, почему иногда это не работает, а в других случаях всё отлично.
Обновился до версии 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 секунд.
Решение будет заключаться в том, чтобы ещё раз провести рефакторинг и постоянно хранить информацию о перемещённых постах в базе данных (вместо временной таблицы), а всю тяжёлую работу выполнять в фоновом задании.