最近、いくつかの設定移行(最も最近ではautomatic_backups_enabled の削除)を見てきましたが、これらの移行ではデータベースの値のみを使用して新しい値を計算しています。これは、app.yml を介して discourse.conf で行われた設定を無視します。
コード:
INSERT INTO site_settings (name, data_type, value, created_at, updated_at)
SELECT 'backup_frequency', 3, NULL, 'NOW()', 'NOW()'
WHERE EXISTS (
SELECT 1
FROM site_settings
WHERE name = 'automatic_backups_enabled'
AND VALUE = 'f'
LIMIT 1
)
ON CONFLICT (name) DO UPDATE SET value = NULL, updated_at = 'NOW()';
これは discourse.conf の automatic_backups_enabled = false を無視するため、その設定が存在する場合にバックアップが無効のままになりません。
この特定の船はすでに航海してしまいましたが、このパターンがグローバルにオーバーライドされた設定で問題を引き起こす可能性があることを念頭に置くと良いでしょう。