GROWI v3.6.x へのアップグレード

v3.6 では、Node.js v8 はサポートされなくなりました。

また v3.5 より下位のバージョンには、誤って2つのデータベースが作成されてしまうバグ(weseek/growi#1361 (opens new window))が存在します。

Node.js v8 のサポートを終了

TIP

公式の Docker イメージ (opens new window)を利用しているシステムには影響はありません

Node.js のアップグレード

  1. v10 または v12 にアップグレードしてください

weseek/growi#1361 (opens new window) の回避

WARNING

この問題は、MONGO_URI が、?key=value 形式のパラメータを含む URL で運用していた場合に限り影響があります

とにかくアップグレード

  • 通常通りアップグレードしてください
  • 影響
    • これまでの累積 migration が再度実行されます
    • 設計上は問題ないはずですが、不整合があるデータが書き換わる可能性があります

安全なアップグレード

  • migrations コレクションを移植します。 mongodump, mongorestore を使える環境で以下を実行してください。 {dbname}, {dbname?key=value} は、実際の環境のDB名に置き換えてください。

    mongodump -d {dbname?key=value} -c migrations -o backup
    
    mongorestore -d {dbname} -c migrations "./backup/{dbname?key=value}/migrations.bson"
    
  • 不要な DB を drop します。mongo shell 内で以下を実行してください。 {dbname?key=value} は、実際の環境のDB名に置き換えてください。

    use {dbname?key=value}
    db.dropDatabase()
    

アップグレード前にチェックすべきこと

  • 運用中のシステムにセットしている MONGO_URI が、?key=value 形式のパラメータを含むか
  • 運用中のシステムが接続している MongoDB に、?key=value 形式のパラメータを名前に含むデータベースが存在するか