更新失败:列 "require_message" 不存在

Hi,

I have been running Discourse without problems for a few years. Today I tried to run an update using ./launcher rebuild app and it fails. Can I get some help decoding the errors from the log below.

Thanks

sudo ./launcher rebuild app
WARNING: Docker version 20.10.18 deprecated, recommend upgrade to 24.0.7 or newer.
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 600 app
app
2.0.20240825-0027: Pulling from discourse/base
Digest: sha256:6de68cb49198b5281f79ed9401b3fe818c854d220dcf0238549fe2f2adb19146
Status: Image is up to date for discourse/base:2.0.20240825-0027
docker.io/discourse/base:2.0.20240825-0027
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2024-11-07T19:34:23.535124 #1]  INFO -- : Reading from stdin
I, [2024-11-07T19:34:23.558469 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown:
I, [2024-11-07T19:34:23.571625 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown:
I, [2024-11-07T19:34:23.581705 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2024-11-07T19:34:23.592389 #1]  INFO -- : File > /root/install_postgres  chmod: +x  chown:
I, [2024-11-07T19:34:23.602698 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown:
I, [2024-11-07T19:34:23.604250 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data'                                                        in /etc/postgresql/13/main/postgresql.conf
I, [2024-11-07T19:34:23.605604 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postg                                                       resql.conf
I, [2024-11-07T19:34:23.606565 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/p                                                       ostgresql/13/main/postgresql.conf
I, [2024-11-07T19:34:23.608107 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13                                                       /main/postgresql.conf
I, [2024-11-07T19:34:23.609566 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.c                                                       onf
I, [2024-11-07T19:34:23.612994 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_tex                                                       t_search_config' in /etc/postgresql/13/main/postgresql.conf
I, [2024-11-07T19:34:23.613568 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /et                                                       c/postgresql/13/main/postgresql.conf
I, [2024-11-07T19:34:23.614631 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/post                                                       gresql/13/main/postgresql.conf
I, [2024-11-07T19:34:23.617876 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_dura                                                       tion_statement in /etc/postgresql/13/main/postgresql.conf
I, [2024-11-07T19:34:23.621489 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/                                                       postgresql/13/main/pg_hba.conf
I, [2024-11-07T19:34:23.622082 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/p                                                       g_hba.conf
I, [2024-11-07T19:34:23.627193 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\/128.*$) with host all all ::/0 md5 in /etc/postgresql/13/main/p                                                       g_hba.conf
I, [2024-11-07T19:34:23.628520 #1]  INFO -- : > if [ -f /root/install_postgres ]; then
  /root/install_postgres && rm -f /root/install_postgres
elif [ -e /shared/postgres_run/.s.PGSQL.5432 ]; then
  socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
fi

I, [2024-11-07T19:34:29.881880 #1]  INFO -- : Generating locales (this might take a while)...
  en_US.UTF-8... done
Generation complete.

I, [2024-11-07T19:34:29.882186 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres                                                       :ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2024-11-07T19:34:29.895227 #1]  INFO -- : File > /usr/local/bin/create_db  chmod: +x  chown:
I, [2024-11-07T19:34:29.909249 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2024-11-07T19:34:29.915646 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown:
I, [2024-11-07T19:34:29.916056 #1]  INFO -- : > sleep 5
2024-11-07 19:34:29.939 UTC [39] LOG:  starting PostgreSQL 13.16 (Debian 13.16-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-1                                                       4) 12.2.0, 64-bit
2024-11-07 19:34:29.939 UTC [39] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2024-11-07 19:34:29.940 UTC [39] LOG:  listening on IPv6 address "::", port 5432
2024-11-07 19:34:29.946 UTC [39] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2024-11-07 19:34:29.957 UTC [48] LOG:  database system was shut down at 2024-11-07 19:34:11 UTC
2024-11-07 19:34:29.975 UTC [39] LOG:  database system is ready to accept connections
I, [2024-11-07T19:34:34.920455 #1]  INFO -- :
I, [2024-11-07T19:34:34.920764 #1]  INFO -- : > /usr/local/bin/create_db
2024-11-07 19:34:35.054 UTC [58] postgres@postgres ERROR:  database "discourse" already exists
2024-11-07 19:34:35.054 UTC [58] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
2024-11-07 19:34:35.183 UTC [61] postgres@discourse ERROR:  role "discourse" already exists
2024-11-07 19:34:35.183 UTC [61] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
NOTICE:  extension "hstore" already exists, skipping
NOTICE:  extension "pg_trgm" already exists, skipping
NOTICE:  extension "vector" already exists, skipping
NOTICE:  version "0.7.4" of extension "vector" is already installed
NOTICE:  extension "hstore" already exists, skipping
NOTICE:  extension "pg_trgm" already exists, skipping
NOTICE:  extension "vector" already exists, skipping
NOTICE:  version "0.7.4" of extension "vector" is already installed
I, [2024-11-07T19:34:36.252292 #1]  INFO -- : GRANT
ALTER SCHEMA
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
ALTER EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
ALTER EXTENSION
UPDATE 0

I, [2024-11-07T19:34:36.252684 #1]  INFO -- : > echo postgres installed!
I, [2024-11-07T19:34:36.256493 #1]  INFO -- : postgres installed!

I, [2024-11-07T19:34:36.265063 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown:
I, [2024-11-07T19:34:36.272729 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown:
I, [2024-11-07T19:34:36.281351 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown:
I, [2024-11-07T19:34:36.283273 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.284352 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.285312 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2024-11-07T19:34:36.293884 #1]  INFO -- :
I, [2024-11-07T19:34:36.295010 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.296468 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.298169 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.299844 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.301569 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2024-11-07T19:34:36.303376 #1]  INFO -- : > echo redis installed
I, [2024-11-07T19:34:36.307405 #1]  INFO -- : redis installed

I, [2024-11-07T19:34:36.307822 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2024-11-07T19:34:36.316259 #1]  INFO -- : logfile ""

I, [2024-11-07T19:34:36.316711 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2024-11-07T19:34:36.321345 #1]  INFO -- : > sleep 10
107:C 07 Nov 2024 19:34:36.335 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
107:C 07 Nov 2024 19:34:36.335 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=107, just started
107:C 07 Nov 2024 19:34:36.335 # Configuration loaded
107:M 07 Nov 2024 19:34:36.336 * monotonic clock: POSIX clock_gettime
107:M 07 Nov 2024 19:34:36.337 * Running mode=standalone, port=6379.
107:M 07 Nov 2024 19:34:36.337 # Server initialized
107:M 07 Nov 2024 19:34:36.338 * Loading RDB produced by version 7.0.7
107:M 07 Nov 2024 19:34:36.338 * RDB age 25 seconds
107:M 07 Nov 2024 19:34:36.338 * RDB memory usage when created 8.18 Mb
107:M 07 Nov 2024 19:34:36.369 * Done loading RDB, keys loaded: 2512, keys expired: 0.
107:M 07 Nov 2024 19:34:36.369 * DB loaded from disk: 0.031 seconds
107:M 07 Nov 2024 19:34:36.369 * Ready to accept connections
I, [2024-11-07T19:34:46.328108 #1]  INFO -- :
I, [2024-11-07T19:34:46.328719 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2024-11-07T19:34:46.335431 #1]  INFO -- : thpoff is installed!

I, [2024-11-07T19:34:46.335870 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail                                                        is not configured!"; exit 1; end'
I, [2024-11-07T19:34:46.478257 #1]  INFO -- :
I, [2024-11-07T19:34:46.478397 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Aborting! Dom                                                       ain is not configured!"; exit 1; end'
I, [2024-11-07T19:34:46.632162 #1]  INFO -- :
I, [2024-11-07T19:34:46.632306 #1]  INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Aborting! CDN must                                                        have a protocol specified. Once fixed you should rebake your posts now to correct all posts."; exit 1; end'
I, [2024-11-07T19:34:46.792566 #1]  INFO -- :
I, [2024-11-07T19:34:46.792816 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2024-11-07T19:34:46.799857 #1]  INFO -- :
I, [2024-11-07T19:34:46.806261 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown:
I, [2024-11-07T19:34:46.814523 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown:
I, [2024-11-07T19:34:46.824323 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown:
I, [2024-11-07T19:34:46.833947 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown:
I, [2024-11-07T19:34:46.842792 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown:
I, [2024-11-07T19:34:46.850581 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown:
I, [2024-11-07T19:34:46.850759 #1]  INFO -- : Replacing # postgres with if [ -f /root/install_postgres ]; then
  /root/install_postgres
  rm /root/install_postgres
fi
sv start postgres || exit 1
 in /etc/service/unicorn/run
I, [2024-11-07T19:34:46.853568 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
Updating files: 100% (34680/34680), done.
I, [2024-11-07T19:34:57.445426 #1]  INFO -- : HEAD is now at 274e18622 FIX: Video uploads sometimes hang indefinitely (#28523)

I, [2024-11-07T19:34:57.445566 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2024-11-07T19:34:57.805189 #1]  INFO -- :
I, [2024-11-07T19:34:57.805321 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
      git remote set-branches --add origin main
      git remote set-branches origin tests-passed
      git fetch --depth 1 origin tests-passed
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
'
From https://github.com/discourse/discourse
 - [deleted]             (none)     -> origin/0-a-gjs-ace
 - [deleted]             (none)     -> origin/better-respect-End-key-in-topics
 - [deleted]             (none)     -> origin/category-experts-approved-webhook-event
 - [deleted]             (none)     -> origin/chat-sound-respects-indicator-pref
 - [deleted]             (none)     -> origin/d-button-noautoclass
 - [deleted]             (none)     -> origin/dependabot/bundler/omniauth-google-oauth2-1.1.2
 - [deleted]             (none)     -> origin/dependabot/bundler/sass-embedded-1.77.8
 - [deleted]             (none)     -> origin/dependabot/bundler/sassc-embedded-1.77.8
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/ember-cli-deprecation-workflow-3.0.2
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/ember/test-helpers-4.0.1
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/eslint-9.7.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/sass-1.77.8
 - [deleted]             (none)     -> origin/detect-default-readonly
 - [deleted]             (none)     -> origin/dev/add-skeleton-of-section-landing-page-and-items
 - [deleted]             (none)     -> origin/dev/remove-header-widgets
 - [deleted]             (none)     -> origin/ensure_default_timeouts_for_net_http
 - [deleted]             (none)     -> origin/feature/site-text-result-selected-lang
 - [deleted]             (none)     -> origin/fix/add-user-to-user-directory-when-activated
 - [deleted]             (none)     -> origin/fix_default_value_validation_fail
 - [deleted]             (none)     -> origin/issue/fix-bookmark-clearing-reminder
 - [deleted]             (none)     -> origin/loic-drop-compiled-js-column
 - [deleted]             (none)     -> origin/mt/converter
 - [deleted]             (none)     -> origin/mt/uploads-command
 - [deleted]             (none)     -> origin/native-class-components-2
 - [deleted]             (none)     -> origin/native-class-components-3
 - [deleted]             (none)     -> origin/notifications_id_bigint
 - [deleted]             (none)     -> origin/prevent-desktop-notifications-on-mobile
 - [deleted]             (none)     -> origin/rails_7_1_upgrade
 - [deleted]             (none)     -> origin/tobiaseigen-patch-3
 - [deleted]             (none)     -> origin/tobiaseigen-patch-5
 - [deleted]             (none)     -> origin/update-composer-media-optimization-requirements
 - [deleted]             (none)     -> origin/ux/admin-plugins-ui-guidelines
   274e18622..484006056  main                    -> origin/main
 * [new branch]          0-a-dl                  -> origin/0-a-dl
 * [new branch]          add-live-reload-disable-option -> origin/add-live-reload-disable-option
 * [new branch]          add-shift-detect        -> origin/add-shift-detect
 * [new branch]          add-verbose-logging-for-google-oauth -> origin/add-verbose-logging-for-google-oauth
 * [new branch]          auto-grid-images        -> origin/auto-grid-images
 * [new branch]          chat-uppy-upload        -> origin/chat-uppy-upload
 * [new branch]          chunk-size              -> origin/chunk-size
 * [new branch]          cleanup-mobile-topic-footer-area -> origin/cleanup-mobile-topic-footer-area
 + 7f254be61...4264fe0d6 coco/generic-importer   -> origin/coco/generic-importer  (forced update)
 * [new branch]          dependabot/bundler/omniauth-google-oauth2-1.2.0 -> origin/dependabot/bundler/omniauth-google-oauth2-1.2.0
 * [new branch]          dependabot/bundler/rackup-1.0.1 -> origin/dependabot/bundler/rackup-1.0.1
 * [new branch]          dependabot/bundler/sass-embedded-1.80.6 -> origin/dependabot/bundler/sass-embedded-1.80.6
 * [new branch]          dependabot/bundler/sassc-embedded-1.80.1 -> origin/dependabot/bundler/sassc-embedded-1.80.1
 * [new branch]          dependabot/npm_and_yarn/glimmer/component-2.0.0 -> origin/dependabot/npm_and_yarn/glimmer/component-2.0.0
 * [new branch]          dependabot/npm_and_yarn/sass-1.80.6 -> origin/dependabot/npm_and_yarn/sass-1.80.6
 * [new branch]          dev-faster-tests        -> origin/dev-faster-tests
 * [new branch]          dev-nginx-conf          -> origin/dev-nginx-conf
 * [new branch]          dev/automation-scriptable-add-with-class -> origin/dev/automation-scriptable-add-with-class
 * [new branch]          dev/composer_args_simplification -> origin/dev/composer_args_simplification
 * [new branch]          dev/convert-admin-emojis-ui-to-new-layout -> origin/dev/convert-admin-emojis-ui-to-new-layout
 * [new branch]          dev/glimmer-post-menu   -> origin/dev/glimmer-post-menu
 * [new branch]          dev/port-outlet-wrapper-to-stable -> origin/dev/port-outlet-wrapper-to-stable
 * [new branch]          dev/refactor-themes-controller-to-services-part-1 -> origin/dev/refactor-themes-controller-to-services-part-1
 * [new branch]          dev/remap-enhancements  -> origin/dev/remap-enhancements
 * [new branch]          dev/remove-deprecated-respect-plugin-positional-argument -> origin/dev/remove-deprecated-respect-plugin-positional-argument
 * [new branch]          dev/use-new-filestore-download-method -> origin/dev/use-new-filestore-download-method
 + 59bf25001...8e5e61375 devcontainer            -> origin/devcontainer  (forced update)
 * [new branch]          drawer-composer-positioning -> origin/drawer-composer-positioning
 * [new branch]          events-ui               -> origin/events-ui
 * [new branch]          feature-paginate-categories -> origin/feature-paginate-categories
 * [new branch]          feature/add-user-to-topic_tags_changed-event -> origin/feature/add-user-to-topic_tags_changed-event
 + a0042745d...6d5864113 feature/bulk-dismiss-buttons-confirmation -> origin/feature/bulk-dismiss-buttons-confirmation  (forced update)
 * [new branch]          feature/custom-fields-for-existing-users -> origin/feature/custom-fields-for-existing-users
 * [new branch]          fix-safari-below-18-detection -> origin/fix-safari-below-18-detection
 * [new branch]          fix/resume_editing_pm   -> origin/fix/resume_editing_pm
 * [new branch]          glint                   -> origin/glint
 * [new branch]          issue/fix-plugin-actions-outlet -> origin/issue/fix-plugin-actions-outlet
 * [new branch]          loic-enable-rspec-rule  -> origin/loic-enable-rspec-rule
 * [new branch]          loic-experiment-model-value-type -> origin/loic-experiment-model-value-type
 * [new branch]          loic-persist-step-services -> origin/loic-persist-step-services
 + 26e2ddbde...10b203c30 loic-rails-7.2          -> origin/loic-rails-7.2  (forced update)
 * [new branch]          mt/idb                  -> origin/mt/idb
 * [new branch]          perf-chat-auto-join-take-42 -> origin/perf-chat-auto-join-take-42
 * [new branch]          post-badge-poc          -> origin/post-badge-poc
 * [new branch]          redesign-permalinks     -> origin/redesign-permalinks
 * [new branch]          render-glimmer-granular -> origin/render-glimmer-granular
 * [new branch]          revert-28587-revert-28321-dev/remove-create_post_for_category_and_tag_changes-setting -> origin/revert-28587-revert-28321-dev/remove-create_post_for_category_and_tag_changes-sett
 * [new branch]          safari-hacks-sayonara   -> origin/safari-hacks-sayonara
 * [new branch]          sidebar-a11y-viewport-zoom -> origin/sidebar-a11y-viewport-zoom
 * [new branch]          sort-chat-channels-with-unread-threads -> origin/sort-chat-channels-with-unread-threads
   d3ad2ecda..6cd6ed5b8  stable                  -> origin/stable
 * [new branch]          tabs                    -> origin/tabs
 * [new branch]          tag-name-transformer    -> origin/tag-name-transformer
 * [new branch]          testing_debian_12       -> origin/testing_debian_12
   274e18622..484006056  tests-passed            -> origin/tests-passed
 * [new branch]          virtual-keyboard-fix-login -> origin/virtual-keyboard-fix-login
 * [new branch]          whats-new-notify-plugins -> origin/whats-new-notify-plugins
 t [tag update]          beta                    -> beta
 t [tag update]          latest-release          -> latest-release
 * [new tag]             v3.3.1                  -> v3.3.1
 * [new tag]             v3.3.2                  -> v3.3.2
 * [new tag]             v3.4.0.beta1            -> v3.4.0.beta1
 * [new tag]             v3.4.0.beta2            -> v3.4.0.beta2
I, [2024-11-07T19:34:58.945416 #1]  INFO -- :
I, [2024-11-07T19:34:58.945546 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [[ $(git symbolic-ref --short HEAD) == tests-passed ]] ; then
      git pull
  else
      git -c advice.detachedHead=false checkout tests-passed
  fi
'
Switched to a new branch 'tests-passed'
I, [2024-11-07T19:35:04.538466 #1]  INFO -- : branch 'tests-passed' set up to track 'origin/tests-passed'.

I, [2024-11-07T19:35:04.538640 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2024-11-07T19:35:04.565429 #1]  INFO -- :
I, [2024-11-07T19:35:04.565594 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2024-11-07T19:35:04.571229 #1]  INFO -- :
I, [2024-11-07T19:35:04.571407 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2024-11-07T19:35:04.577468 #1]  INFO -- :
I, [2024-11-07T19:35:04.577635 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2024-11-07T19:35:04.583818 #1]  INFO -- :
I, [2024-11-07T19:35:04.583984 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2024-11-07T19:35:04.589677 #1]  INFO -- :
I, [2024-11-07T19:35:04.589812 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2024-11-07T19:35:04.595224 #1]  INFO -- :
I, [2024-11-07T19:35:04.595361 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2024-11-07T19:35:04.601289 #1]  INFO -- :
I, [2024-11-07T19:35:04.601434 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2024-11-07T19:35:04.610769 #1]  INFO -- :
I, [2024-11-07T19:35:04.610903 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log /var/www/di
I, [2024-11-07T19:35:04.619848 #1]  INFO -- :
I, [2024-11-07T19:35:04.619981 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2024-11-07T19:35:04.636483 #1]  INFO -- :
I, [2024-11-07T19:35:04.637391 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2024-11-07T19:35:04.663135 #1]  INFO -- :
I, [2024-11-07T19:35:04.663283 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2024-11-07T19:35:04.674349 #1]  INFO -- :
I, [2024-11-07T19:35:04.674500 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2024-11-07T19:35:04.687279 #1]  INFO -- :
I, [2024-11-07T19:35:04.687417 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2024-11-07T19:35:05.168181 #1]  INFO -- :
I, [2024-11-07T19:35:05.168344 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2024-11-07T19:35:05.179835 #1]  INFO -- :
I, [2024-11-07T19:35:05.180335 #1]  INFO -- : Replacing # redis with if [ ! -d /shared/redis_data ]; then
  install -d -m 0755 -o redis -g redis /shared/redis_data
fi
sv start redis || exit 1 in /etc/service/unicorn/run
I, [2024-11-07T19:35:05.183224 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Cloning into 'docker_manager'...
I, [2024-11-07T19:35:06.292926 #1]  INFO -- :
I, [2024-11-07T19:35:06.302691 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2024-11-07T19:35:06.323863 #1]  INFO -- :
I, [2024-11-07T19:35:06.324325 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2024-11-07T19:35:06.345166 #1]  INFO -- :
I, [2024-11-07T19:35:06.345559 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2024-11-07T19:35:06.360681 #1]  INFO -- :
I, [2024-11-07T19:35:06.361834 #1]  INFO -- : Replacing pid /run/nginx.pid; with daemon off; in /etc/nginx/nginx.conf
I, [2024-11-07T19:35:06.362793 #1]  INFO -- : Replacing (?m-ix:upstream[^\}]+\}) with upstream discourse { server 127.0.0.1:3000; } in /etc/nginx/conf.d/discourse.conf
I, [2024-11-07T19:35:06.363496 #1]  INFO -- : Replacing (?-mix:server_name.+$) with server_name _ ; in /etc/nginx/conf.d/discourse.conf
I, [2024-11-07T19:35:06.366234 #1]  INFO -- : Replacing (?-mix:client_max_body_size.+$) with client_max_body_size $upload_size ; in /etc/nginx/conf.d/discourse.conf
I, [2024-11-07T19:35:06.367840 #1]  INFO -- : Replacing (?-mix:worker_connections.+$) with worker_connections $nginx_worker_connections ; in /etc/nginx/nginx.conf
I, [2024-11-07T19:35:06.368440 #1]  INFO -- : > echo "done configuring web"
I, [2024-11-07T19:35:06.381488 #1]  INFO -- : done configuring web

I, [2024-11-07T19:35:06.381959 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2024-11-07T19:35:08.003914 #1]  INFO -- : Successfully installed bundler-2.5.18
1 gem installed

I, [2024-11-07T19:35:08.004091 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2024-11-07T19:35:22.478869 #1]  INFO -- :
I, [2024-11-07T19:35:22.479564 #1]  INFO -- : > cd /var/www/discourse && if [ -f yarn.lock ]; then
  if [ -d node_modules/.pnpm ]; then
    echo "This version of Discourse uses yarn, but pnpm node_modules are preset. Cleaning up..."
    find ./node_modules ./app/assets/javascripts/*/node_modules -mindepth 1 -maxdepth 1 -exec rm -rf {} +
  fi
  su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'
else
  su discourse -c 'CI=1 pnpm install --frozen-lockfile'
fi
I, [2024-11-07T19:36:21.891214 #1]  INFO -- : Detected yarn-managed node_modules. Performing one-time cleanup...
cleanup done
Scope: all 19 workspace projects
Lockfile is up to date, resolution step is skipped
Progress: resolved 1, reused 0, downloaded 0, added 0
Packages: +1828
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1828, reused 0, downloaded 0, added 0
Progress: resolved 1828, reused 0, downloaded 16, added 0
Progress: resolved 1828, reused 0, downloaded 32, added 21
Progress: resolved 1828, reused 0, downloaded 119, added 156
Progress: resolved 1828, reused 0, downloaded 190, added 260
Progress: resolved 1828, reused 0, downloaded 248, added 311
Progress: resolved 1828, reused 0, downloaded 326, added 393
Progress: resolved 1828, reused 0, downloaded 363, added 428
Progress: resolved 1828, reused 0, downloaded 371, added 438
Progress: resolved 1828, reused 0, downloaded 394, added 457
Progress: resolved 1828, reused 0, downloaded 472, added 538
Progress: resolved 1828, reused 0, downloaded 539, added 606
Progress: resolved 1828, reused 0, downloaded 582, added 651
Progress: resolved 1828, reused 0, downloaded 644, added 711
Progress: resolved 1828, reused 0, downloaded 689, added 756
Progress: resolved 1828, reused 0, downloaded 705, added 768
Progress: resolved 1828, reused 0, downloaded 894, added 965
Progress: resolved 1828, reused 0, downloaded 927, added 994
Progress: resolved 1828, reused 0, downloaded 1014, added 1080
Progress: resolved 1828, reused 0, downloaded 1068, added 1140
Progress: resolved 1828, reused 0, downloaded 1123, added 1189
Progress: resolved 1828, reused 0, downloaded 1132, added 1196
Progress: resolved 1828, reused 0, downloaded 1172, added 1237
Progress: resolved 1828, reused 0, downloaded 1173, added 1238
Progress: resolved 1828, reused 0, downloaded 1179, added 1248
Progress: resolved 1828, reused 0, downloaded 1191, added 1254
Progress: resolved 1828, reused 0, downloaded 1253, added 1319
Progress: resolved 1828, reused 0, downloaded 1380, added 1445
Progress: resolved 1828, reused 0, downloaded 1399, added 1466
Progress: resolved 1828, reused 0, downloaded 1434, added 1503
Progress: resolved 1828, reused 0, downloaded 1493, added 1560
Progress: resolved 1828, reused 0, downloaded 1508, added 1578
Packages are hard linked from the content-addressable store to the virtual store.
  Content-addressable store is at: /home/discourse/.local/share/pnpm/store/v3
  Virtual store is at:             node_modules/.pnpm
Progress: resolved 1828, reused 0, downloaded 1512, added 1580
Progress: resolved 1828, reused 0, downloaded 1513, added 1580
Progress: resolved 1828, reused 0, downloaded 1527, added 1591
Progress: resolved 1828, reused 0, downloaded 1546, added 1612
Progress: resolved 1828, reused 0, downloaded 1605, added 1673
Progress: resolved 1828, reused 0, downloaded 1660, added 1731
Progress: resolved 1828, reused 0, downloaded 1718, added 1792
Progress: resolved 1828, reused 0, downloaded 1741, added 1828, done
.../core-js@3.33.0/node_modules/core-js postinstall$ node -e "try{require('./postinstall')}catch(e){}"
.../core-js@2.6.12/node_modules/core-js postinstall$ node -e "try{require('./postinstall')}catch(e){}"
.../node_modules/@swc/core postinstall$ node postinstall.js
.../esbuild@0.24.0/node_modules/esbuild postinstall$ node install.js
.../lefthook@1.8.2/node_modules/lefthook postinstall$ node postinstall.js
.../core-js@3.33.0/node_modules/core-js postinstall: Done
.../core-js@2.6.12/node_modules/core-js postinstall: Done
.../lefthook@1.8.2/node_modules/lefthook postinstall: Done
.../node_modules/@swc/core postinstall: Done
.../esbuild@0.24.0/node_modules/esbuild postinstall: Done

devDependencies:
+ @babel/plugin-proposal-decorators 7.25.9
+ @discourse/lint-configs 1.4.2
+ @discourse/moment-timezone-names-translations 1.0.0
+ @fortawesome/fontawesome-free 6.6.0
+ @glint/core 1.5.0
+ @glint/environment-ember-loose 1.5.0
+ @glint/environment-ember-template-imports 1.5.0
+ @glint/template 1.5.0
+ @mixer/parallel-prettier 2.0.3
+ @swc/core 1.9.1
+ chart.js 3.5.1
+ chartjs-plugin-datalabels 2.2.0
+ chrome-launcher 1.1.2
+ chrome-remote-interface 0.33.2
+ concurrently 9.1.0
+ ember-template-lint 6.0.0
+ esbuild 0.24.0
+ eslint 8.57.0
+ jsdoc 4.0.4
+ lefthook 1.8.2
+ licensee 11.1.0
+ lint-to-the-future 2.2.0
+ lint-to-the-future-ember-template 1.2.0
+ lint-to-the-future-eslint 2.2.0
+ magnific-popup 1.1.0
+ moment 2.30.1
+ moment-timezone 0.5.45
+ pikaday 1.8.2
+ prettier 2.8.8
+ puppeteer-core 23.7.0
+ squoosh 2.0.0
+ terser 5.36.0
+ typescript 5.6.3

Done in 58.8s

I, [2024-11-07T19:36:21.910086 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --jobs $(($(nproc) - 1)) --retry 3'
I, [2024-11-07T19:39:36.059985 #1]  INFO -- : Fetching gem metadata from https://rubygems.org/........
Fetching base64 0.2.0
Installing base64 0.2.0
Fetching benchmark 0.3.0
Installing benchmark 0.3.0
Fetching i18n 1.14.6
Installing i18n 1.14.6
Fetching logger 1.6.1
Installing logger 1.6.1
Fetching mutex_m 0.2.0
Installing mutex_m 0.2.0
Fetching securerandom 0.3.1
Installing securerandom 0.3.1
Fetching activesupport 7.1.5
Installing activesupport 7.1.5
Fetching loofah 2.23.1
Installing loofah 2.23.1
Fetching actionview 7.1.5
Installing actionview 7.1.5
Fetching rack 2.2.10
Installing rack 2.2.10
Fetching actionpack 7.1.5
Installing actionpack 7.1.5
Fetching activejob 7.1.5
Installing activejob 7.1.5
Fetching date 3.4.0
Installing date 3.4.0 with native extensions
Fetching timeout 0.4.2
Installing timeout 0.4.2
Fetching net-protocol 0.2.2
Installing net-protocol 0.2.2
Fetching net-imap 0.5.0
Installing net-imap 0.5.0
Fetching actionmailer 7.1.5
Installing actionmailer 7.1.5
Fetching activemodel 7.1.5
Installing activemodel 7.1.5
Fetching activerecord 7.1.5
Installing activerecord 7.1.5
Fetching msgpack 1.7.3
Installing msgpack 1.7.3 with native extensions
Fetching cgi 0.4.1
Installing cgi 0.4.1 with native extensions
Fetching openssl 3.2.0
Installing openssl 3.2.0 with native extensions
Fetching css_parser 1.19.1
Installing css_parser 1.19.1
Fetching diffy 3.4.3
Installing diffy 3.4.3
Fetching digest 3.1.1
Installing digest 3.1.1 with native extensions
Fetching dry-initializer 3.1.1
Installing dry-initializer 3.1.1
Fetching excon 1.1.1
Installing excon 1.1.1
Fetching execjs 2.10.0
Installing execjs 2.10.0
Fetching uri 0.13.1
Installing uri 0.13.1
Fetching net-http 0.4.1
Installing net-http 0.4.1
Fetching faraday-net_http 3.3.0
Installing faraday-net_http 3.3.0
Fetching json 2.8.1
Installing json 2.8.1 with native extensions
Fetching faraday 2.12.0
Installing faraday 2.12.0
Fetching google-protobuf 4.28.3 (x86_64-linux)
Installing google-protobuf 4.28.3 (x86_64-linux)
Fetching reline 0.5.10
Installing reline 0.5.10
Fetching highline 3.1.1
Installing highline 3.1.1
Fetching stringio 3.1.1
Installing stringio 3.1.1 with native extensions
Fetching psych 5.1.2
Installing psych 5.1.2 with native extensions
Fetching irb 1.14.1
Installing irb 1.14.1
Fetching jwt 2.9.3
Installing jwt 2.9.3
Fetching webrick 1.9.0
Installing webrick 1.9.0
Fetching thor 1.3.2
Installing thor 1.3.2
Fetching zeitwerk 2.7.1
Installing zeitwerk 2.7.1
Fetching railties 7.1.5
Installing railties 7.1.5
Fetching memory_profiler 1.1.0
Installing memory_profiler 1.1.0
Fetching nio4r 2.7.4
Installing nio4r 2.7.4 with native extensions
Fetching ostruct 0.6.0
Installing ostruct 0.6.0
Fetching oj 3.16.7
Installing oj 3.16.7 with native extensions
Fetching omniauth-oauth 1.2.1
Installing omniauth-oauth 1.2.1
Fetching parallel 1.26.3
Installing parallel 1.26.3
Fetching puma 6.4.3
Installing puma 6.4.3 with native extensions
Fetching rexml 3.3.9
Installing rexml 3.3.9
Fetching ruby-readability 0.7.2
Installing ruby-readability 0.7.2
Fetching sprockets 3.7.5
Installing sprockets 3.7.5
Fetching tzinfo-data 1.2024.2
Installing tzinfo-data 1.2024.2
Fetching uglifier 4.2.1
Installing uglifier 4.2.1
Bundle complete! 146 Gemfile dependencies, 187 gems now installed.
Gems in the groups 'test' and 'development' were not installed.
Bundled gems are installed into `./vendor/bundle`
Post-install message from i18n:
PSA: I18n will be dropping support for Ruby < 3.2 in the next major release (April 2025), due to Ruby's end of life for 3.1 and below (https://endoflife.date/ruby). Please upgrade to Ruby 3.2 or newer by April 2025 to continue using future versions of this gem.
1 installed gem you directly depend on is looking for funding.
  Run `bundle fund` for details

I, [2024-11-07T19:39:36.060335 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2024-11-07T19:39:45.423920 #1]  INFO -- : docker_manager is already at latest compatible version

I, [2024-11-07T19:39:45.424716 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2024-11-07T19:39:45.435538 #1]  INFO -- : > sleep 10
1969:C 07 Nov 2024 19:39:45.487 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1969:C 07 Nov 2024 19:39:45.488 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=1969, just started
1969:C 07 Nov 2024 19:39:45.488 # Configuration loaded
1969:M 07 Nov 2024 19:39:45.488 * monotonic clock: POSIX clock_gettime
1969:M 07 Nov 2024 19:39:45.489 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
1969:M 07 Nov 2024 19:39:45.489 # Failed listening on port 6379 (TCP), aborting.
I, [2024-11-07T19:39:55.442925 #1]  INFO -- :
I, [2024-11-07T19:39:55.443635 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
2024-11-07 19:40:01.597 UTC [2012] discourse@discourse ERROR:  column "require_message" does not exist at character 72
2024-11-07 19:40:01.597 UTC [2012] discourse@discourse STATEMENT:  SELECT id, name, name_key, description, notify_type, auto_action_type, require_message, applies_to, position, enabled, score_type FROM "flags" ORDER BY "flags"."position" ASC
rake aborted!
ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERROR:  column "require_message" does not exist (ActiveRecord::StatementInvalid)
LINE 1: ..._key, description, notify_type, auto_action_type, require_me...
                                                             ^
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-3.3.1/lib/patches/db/pg.rb:69:in `exec_params'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-3.3.1/lib/patches/db/pg.rb:69:in `exec_params'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:894:in `block (2 levels) in exec_no_cache'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/abstract_adapter.rb:1027:in `block in with_raw_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/abstract_adapter.rb:999:in `with_raw_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:893:in `block in exec_no_cache'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/abstract_adapter.rb:1142:in `log'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:892:in `exec_no_cache'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:872:in `execute_and_clear'
/var/www/discourse/lib/freedom_patches/fast_pluck.rb:40:in `select_raw'
/var/www/discourse/lib/freedom_patches/fast_pluck.rb:60:in `pluck'
/var/www/discourse/lib/post_action_type_view.rb:26:in `block in all_flags'
/var/www/discourse/lib/cache.rb:93:in `fetch'
/var/www/discourse/lib/post_action_type_view.rb:22:in `all_flags'
/var/www/discourse/lib/post_action_type_view.rb:67:in `flags'
/var/www/discourse/lib/post_action_type_view.rb:74:in `flag_types'
/var/www/discourse/app/models/post_action_type.rb:68:in `block (2 levels) in singleton class'
/var/www/discourse/app/models/reviewable_score.rb:14:in `types'
/var/www/discourse/app/models/reviewable_score.rb:21:in `reload_types'
/var/www/discourse/app/models/post_action_type.rb:43:in `reload_types'
/var/www/discourse/app/models/flag.rb:37:in `reset_flag_settings!'
/var/www/discourse/config/initializers/100-flags.rb:6:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:448:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:448:in `block in make_lambda'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:202:in `block (2 levels) in halting'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:707:in `block (2 levels) in default_terminator'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:706:in `catch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:706:in `block in default_terminator'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:203:in `block in halting'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:598:in `block in invoke_before'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:598:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:598:in `invoke_before'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:109:in `run_callbacks'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/reloader.rb:96:in `prepare!'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application/finisher.rb:74:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application.rb:426:in `initialize!'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.1/lib/zeitwerk/core_ext/kernel.rb:34:in `require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application.rb:402:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application.rb:591:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'

Caused by:
PG::UndefinedColumn: ERROR:  column "require_message" does not exist (PG::UndefinedColumn)
LINE 1: ..._key, description, notify_type, auto_action_type, require_me...
                                                             ^
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-3.3.1/lib/patches/db/pg.rb:69:in `exec_params'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-3.3.1/lib/patches/db/pg.rb:69:in `exec_params'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:894:in `block (2 levels) in exec_no_cache'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/abstract_adapter.rb:1027:in `block in with_raw_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/abstract_adapter.rb:999:in `with_raw_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:893:in `block in exec_no_cache'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/abstract_adapter.rb:1142:in `log'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:892:in `exec_no_cache'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.5/lib/active_record/connection_adapters/postgresql_adapter.rb:872:in `execute_and_clear'
/var/www/discourse/lib/freedom_patches/fast_pluck.rb:40:in `select_raw'
/var/www/discourse/lib/freedom_patches/fast_pluck.rb:60:in `pluck'
/var/www/discourse/lib/post_action_type_view.rb:26:in `block in all_flags'
/var/www/discourse/lib/cache.rb:93:in `fetch'
/var/www/discourse/lib/post_action_type_view.rb:22:in `all_flags'
/var/www/discourse/lib/post_action_type_view.rb:67:in `flags'
/var/www/discourse/lib/post_action_type_view.rb:74:in `flag_types'
/var/www/discourse/app/models/post_action_type.rb:68:in `block (2 levels) in singleton class'
/var/www/discourse/app/models/reviewable_score.rb:14:in `types'
/var/www/discourse/app/models/reviewable_score.rb:21:in `reload_types'
/var/www/discourse/app/models/post_action_type.rb:43:in `reload_types'
/var/www/discourse/app/models/flag.rb:37:in `reset_flag_settings!'
/var/www/discourse/config/initializers/100-flags.rb:6:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:448:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:448:in `block in make_lambda'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:202:in `block (2 levels) in halting'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:707:in `block (2 levels) in default_terminator'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:706:in `catch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:706:in `block in default_terminator'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:203:in `block in halting'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:598:in `block in invoke_before'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:598:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:598:in `invoke_before'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/callbacks.rb:109:in `run_callbacks'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.5/lib/active_support/reloader.rb:96:in `prepare!'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application/finisher.rb:74:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application.rb:426:in `initialize!'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.7.1/lib/zeitwerk/core_ext/kernel.rb:34:in `require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application.rb:402:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-7.1.5/lib/rails/application.rb:591:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => db:migrate => db:load_config => environment
(See full trace by running task with --trace)
I, [2024-11-07T19:40:01.649438 #1]  INFO -- :
I, [2024-11-07T19:40:01.649982 #1]  INFO -- : Terminating async processes
I, [2024-11-07T19:40:01.650065 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 39
I, [2024-11-07T19:40:01.650139 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 107
2024-11-07 19:40:01.650 UTC [39] LOG:  received fast shutdown request
107:signal-handler (1731008401) Received SIGTERM scheduling shutdown...
2024-11-07 19:40:01.661 UTC [39] LOG:  aborting any active transactions
2024-11-07 19:40:01.667 UTC [39] LOG:  background worker "logical replication launcher" (PID 54) exited with exit code 1
2024-11-07 19:40:01.671 UTC [49] LOG:  shutting down
107:M 07 Nov 2024 19:40:01.697 # User requested shutdown...
107:M 07 Nov 2024 19:40:01.697 * Saving the final RDB snapshot before exiting.
2024-11-07 19:40:01.700 UTC [39] LOG:  database system is shut down
107:M 07 Nov 2024 19:40:01.767 * DB saved on disk
107:M 07 Nov 2024 19:40:01.767 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 1973 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "tag"=>"migrate", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
a319251d257d8fcc097076b314a588960619a77de266182f68d581901d846666
1 个赞

这似乎是问题所在。

这是它被添加的地方。您当前容器的提交哈希是什么?(如果它没有运行,您应该能够执行 ./launcher start app 来重新启动它。)

1 个赞

您好 @pfaffman

感谢您如此迅速的回复。在等待期间,我设法解决了过时的 Docker 版本问题,但仍然收到相同的错误。

我尝试了 ./launcher start app,应用程序启动了,但 Web 界面仍然无法加载。所以我真的不确定我当时在哪个提交。我记得看到我处于 3.1 beta 某个小版本,我猜是这样的。我不确定我使用的是哪个发布频道,可能是遵循安装说明时的默认设置。

所以我不知道该怎么办……我能用之前的提交重建吗?

1 个赞

我也不知道该怎么告诉你。我想知道是不是因为其他提交添加/删除了迁移,导致你处于一个损坏的状态。我现在没有好的建议。

我猜你的数据库迁移到了比你的容器中的 Discourse 版本更新的版本,你需要一个成功的构建来修复它。

也许你可以手动添加该列,然后重试。或者,也许可以进行备份,启动一个新站点,然后将备份恢复到那里。

嗯……我不太期待那样做……幸运的是,我有每日备份。

我确实注意到

 docker images -a
REPOSITORY            TAG                 IMAGE ID       CREATED             SIZE
local_discourse/app   latest              5692a781232c   大约一小时前        4.21GB
discourse/base        2.0.20240825-0027   9dc96b6115cb   2个月前         3.38GB
<none>                <none>              b492a384cb07   4个月前         4.18GB
discourse/base        2.0.20240602-0023   814acddaf6fd   5个月前         3.14GB

我能让启动器启动其中一个吗?还是最好擦除并重建?如果可以,我该怎么做?

如果您可以恢复到最新的备份,那么我会启动一个新服务器并在那里恢复备份。

如果启动新服务器很困难,那么危险的做法是删除 postgres 目录,然后重建和恢复。如果您确认备份可以在另一台服务器上恢复,那么这种方法会更安全一些,但听起来您的操作系统可能已经过了支持的生命周期。

我启动了一个新的虚拟机,安装了 Discourse 并尝试恢复备份。我遇到了同样的错误:

[2024-11-07 22:06:11] 正在迁移数据库...
[2024-11-07 22:06:18] EXCEPTION: /var/www/discourse/lib/discourse.rb:139:in `exec': 数据库迁移失败。
rake aborted!
ActiveRecord::StatementInvalid: PG::UndefinedColumn: ERROR:  column "require_message" does not exist (ActiveRecord::StatementInvalid)
LINE 1: ..._key, description, notify_type, auto_action_type, require_me...

现在我该怎么办?

我回来了。切换到稳定分支并进行了恢复。

我也遇到了此更新中的错误。我该怎么办?

也遇到了这个问题。

你是如何解决这个问题的?

如果您使用与 @TheStealth 相同的解决方案,则需要编辑 app.yml 文件并重新构建

cd /var/discourse
nano containers/app.yml

在第 38 行附近,将此更改为:

  ## 此容器应使用哪个 Git 版本? (默认值: tests-passed)
  #version: tests-passed

更改为:

  ## 此容器应使用哪个 Git 版本? (默认值: tests-passed)
  version: stable

保存文件,然后:

./launcher rebuild app

根据错误消息,我假设它与此页面有关:

/admin/config/flags

我将删除您过去可能创建的任何自定义标志。然后再次尝试在 tests-passed 分支上重新构建。

1 个赞

非常感谢。我的 discourse 又可以运行了。

不过我在这里检查过了,并没有我们创建的东西。

你还有其他想法吗?

我有一个想法,但不确定它是否奏效。

如果手动添加缺失的列,然后重新构建,怎么样?

如何做到这一点?

我几乎可以肯定这是一个 bug。我怀疑这与某个提交中移除了一个迁移有关,导致后续的迁移因 require_message 不在表中而失败,类似于 Restore failing with missing chat_mention function

1 个赞

我确认此更新导致我的 discourse 崩溃,我不得不从备份中恢复。但是,如预期的那样,Docker_manager 更新工作正常。

我想我们只能等待另一个更新来修复所有问题。

2 个赞

对我来说也坏了。多亏了 Steven,我将 discourse 改为了版本:stable 并重建了应用程序。现在可以正常工作了。

您好 @TheStealth

感谢您报告此 bug,并对给您带来的不便表示歉意。

此问题应已通过此 PR 修复 :crossed_fingers:

2 个赞