Здравствуйте,
Недавно мой форум проработал в режиме простоя два дня из-за проблем с доменом.
Это привело к тому, что у всех прервалась серия посещений, что для большинства людей очень плохо.
Я хочу восстановить эти серии. Как мне это сделать?
Здравствуйте,
Недавно мой форум проработал в режиме простоя два дня из-за проблем с доменом.
Это привело к тому, что у всех прервалась серия посещений, что для большинства людей очень плохо.
Я хочу восстановить эти серии. Как мне это сделать?
Вам придётся искусственно добавить данные в таблицы, чтобы создать видимость, будто все посещали сайт в эти дни. Нужно изучить исходный код, определить, в какие таблицы следует добавлять строки, а затем создать записи для каждого пользователя.
Если вы не знаете, как это сделать, и не получили ответ достаточно быстро, вы можете разместить запрос на бюджет в канале Marketplace.
Им нужно расставить приоритеты правильно ![]()
В любом случае, чтобы скопировать посещения с одного дня на другой, выполните следующий SQL-запрос
insert into user_visits
select 0, user_id, '2022-09-09', posts_read, mobile, 0
from user_visits
where visited_at = '2022-09-08'
;
где первая дата — это дата, которую вы хотите подделать, а вторая — дата, с которой нужно скопировать данные.
Ричард снова спасает положение! Какое отличное решение. Я размышлял, как это сделать, не просто раздавая всем заслуги. Блестяще!
Вы бы удивились, сколько людей жаловалось на это ![]()
Спасибо за скрипт, где я могу его запустить?
cd /var/discourse
./launcher enter app
rails c
DB.exec("insert into user_visits select 0, user_id, '2022-09-09', posts_read, mobile, 0 from user_visits where visited_at = '2022-09-08'")
Привет, у нас снова произошел сбой, и когда я попытался восстановить записи о посещениях, возникла ошибка.
[6] pry(main)> DB.exec("insert into user_visits select 4, user_id, '2022-12-31', posts_read, mobile, 0 from user_visits where visited_at = '2022-09-01'")
PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "user_visits_pkey"
DETAIL: Key (id)=(4) already exists.
from /var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rack-mini-profiler-3.0.0/lib/patches/db/pg.rb:110:in `exec'