我刚为我们的 Discourse 站点进行了每周更新,发现这次花费了大约 20 分钟,而不是通常的 1-2 分钟。此外,在 Chrome 控制台中,进度更新在 $ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate 步骤时因超时错误而暂时中断(截图如下)。
我可以在服务器上看到正在发生一些事情(postmaster 和 ruby 的负载),并且进度更新最终恢复了,但总体而言,当前迁移似乎存在问题。
从更新日志来看,导致运行时间过长的迁移似乎是 DropTrgmIndexesOnUsers。我已将日志的相应部分直接包含在此帖子下方(如果需要进一步分析,完整日志将作为文本文件附加)。
********************************************************
*** Please be patient, next steps might take a while ***
********************************************************
...
$ LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all
discourse-bbcode is already at latest compatible version
discourse-data-explorer is already at latest compatible version
docker_manager is already at latest compatible version
$ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate
Multisite migrator is running using 1 threads
Migrating default
== 20240912061702 DropUserSearchSimilarResultsSiteSetting: migrating ==========
-- execute("DELETE FROM site_settings WHERE name = 'user_search_similar_results';\n")
-> 0.0006s
== 20240912061702 DropUserSearchSimilarResultsSiteSetting: migrated (0.0015s) =
== 20240912061806 DropTrgmIndexesOnUsers: migrating ===========================
-- execute("DROP INDEX IF EXISTS index_users_on_username_lower_trgm;\nDROP INDEX IF EXISTS index_users_on_name_trgm;\n")
-> 1290.7163s
== 20240912061806 DropTrgmIndexesOnUsers: migrated (1290.7169s) ===============
== 20240912212253 IncreaseExternalAvatarUrlLimitTo2000: migrating =============
-- change_column(:single_sign_on_records, :external_avatar_url, :string, {:limit=>2000})
-> 0.0011s
== 20240912212253 IncreaseExternalAvatarUrlLimitTo2000: migrated (0.0017s) ====
Seeding default
*** Bundling assets. This will take a while ***
$ bundle exec rake themes:update assets:precompile
Building
Environment: production
building...
...
完整日志:upgrade-log-2024-09-15.txt (124.7 KB)
