I have a self-hosted Discourse on a DO droplet that has been running smoothly for the past 6 months, and then today has been crashing every two hours or so. Everything is up to date as far as I know, so I’m not really sure how to best go about troubleshooting. Any help would be greatly, greatly appreciated!!
I haven’t gotten any errors in my site logs since early this morning, even though the forum has crashed a few times since then.
I did get this early this morning:
Job exception: MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/redis-3.3.3/lib/redis/client.rb:121:in `call' /var/www/discourse/vendor/bundle/ruby/2.3.0/gems/redis-3.3.3/lib/redis.rb:494:in `block in del' /var/www/discourse/vendor/bundle/ruby/2.3.0/gems/redis-3.3.3/lib/redis.rb:58:in `block in synchronize' /usr/local/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize' /var/www/discourse/vendor/bundle/ruby/2.3.0/gems/redis-3.3.3/lib/redis.rb:58:in `synchronize' /var/www/discourse/vendor/bundle/ruby/2.3.0/gems/redis-3.3.3/lib/redis.rb:493:in `del' /var/www/discourse/lib/discourse_redis.rb:192:in `block in del' /var/www/discourse/lib/discourse_redis.rb:146:in `ignore_readonly' /var/www/discourse/lib/discourse_redis.rb:190:in `del' /var/www/discourse/lib/distributed_mutex.rb:24:in `ensure in synchronize' /var/www/discourse/lib/distributed_mutex.rb:25:in `synchronize' /var/www/discourse/lib/scheduler/manager.rb:294:in `lock' /var/www/discourse/lib/scheduler/manager.rb:247:in `tick' /var/www/discourse/config/initializers/100-sidekiq.rb:35:in `block (2 levels) in <top (required)>
LOG: duration: 787.213 ms execute <unnamed>: SELECT COUNT(*) AS count_all, DATE(created_at) AS date_created_at FROM "email_logs" WHERE "email_logs"."skipped" = 'f' AND (created_at BETWEEN '2017-02-16 00:00:00.000000' AND '2017-03-16 23:59:59.999999') GROUP BY DATE(created_at) ORDER BY DATE(created_at) 2017-03-16 17:54:20 UTC [397-2] discourse@discourse LOG: duration: 132.612 ms execute <unnamed>: SELECT COUNT(*) FROM "email_logs" 2017-03-16 17:56:14 UTC [127-1] discourse@discourse LOG: duration: 131.163 ms statement: UPDATE posts SET avg_time = (x.gmean / 1000) FROM (SELECT post_timings.topic_id, post_timings.post_number, round(exp(avg(ln(msecs)))) AS gmean FROM post_timings INNER JOIN posts AS p2 ON p2.post_number = post_timings.post_number AND p2.topic_id = post_timings.topic_id AND p2.user_id <> post_timings.user_id GROUP BY post_timings.topic_id, post_timings.post_number) AS x WHERE (x.topic_id = posts.topic_id AND x.post_number = posts.post_number AND (posts.avg_time <> (x.gmean / 1000)::int OR posts.avg_time IS NULL)) AND (posts.topic_id IN (SELECT id FROM topics where bumped_at > '2017-03-14 17:56:14.249910')) 50:M 16 Mar 17:58:33.081 * 10 changes in 300 seconds. Saving... 50:M 16 Mar 17:58:33.093 * Background saving started by pid 4883 4883:C 16 Mar 17:58:35.217 * DB saved on disk 4883:C 16 Mar 17:58:35.229 * RDB: 44 MB of memory used by copy-on-write 50:M 16 Mar 17:58:35.326 * Background saving terminated with success 50:M 16 Mar 18:03:36.028 * 10 changes in 300 seconds. Saving... 50:M 16 Mar 18:03:36.033 * Background saving started by pid 5220 5220:C 16 Mar 18:03:39.632 * DB saved on disk 5220:C 16 Mar 18:03:39.636 * RDB: 43 MB of memory used by copy-on-write 50:M 16 Mar 18:03:39.736 * Background saving terminated with success