Letzter Patch nach Absturz

Hallo zusammen,

habe eben versucht, das Update auf die (ich glaube) Beta 9 zu machen via Webinterface. Das führte leider zu einem Fehler, so dass ich rebuild app ausgeführt habe.

Leider führt das auch zu einem Fehler und mir ist leider völlig unklar, was ich jetzt machen kann. Der gesamte Prozess endet immer wieder mit:

Tasks: TOP => db:migrate => db:load_config => environment
(See full trace by running task with --trace)
I, [2025-08-20T08:47:30.655625 #1]  INFO -- : 
I, [2025-08-20T08:47:30.655914 #1]  INFO -- : Terminating async processes
I, [2025-08-20T08:47:30.655932 #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/15/bin/postmaster -D /etc/postgresql/15/main pid: 47
I, [2025-08-20T08:47:30.655954 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 114
2025-08-20 08:47:30.656 UTC [47] LOG:  received fast shutdown request
114:signal-handler (1755679650) Received SIGTERM scheduling shutdown...
114:M 20 Aug 2025 08:47:30.659 # User requested shutdown...
114:M 20 Aug 2025 08:47:30.659 * Saving the final RDB snapshot before exiting.
2025-08-20 08:47:30.667 UTC [47] LOG:  aborting any active transactions
2025-08-20 08:47:30.671 UTC [47] LOG:  background worker "logical replication launcher" (PID 61) exited with exit code 1
2025-08-20 08:47:30.671 UTC [56] LOG:  shutting down
2025-08-20 08:47:30.672 UTC [56] LOG:  checkpoint starting: shutdown immediate
2025-08-20 08:47:30.691 UTC [56] LOG:  checkpoint complete: wrote 3 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.014 s, sync=0.002 s, total=0.020 s; sync files=3, longest=0.001 s, average=0.001 s; distance=5 kB, estimate=5 kB
114:M 20 Aug 2025 08:47:30.728 * DB saved on disk
114:M 20 Aug 2025 08:47:30.728 # Redis is now ready to exit, bye bye...
2025-08-20 08:47:30.731 UTC [47] LOG:  database system is shut down


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 809 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.3.0/lib/pups/exec_command.rb:131: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.
0155b0ee2e7b8a2a7481eed0f002871675973ab2295296f71b2c366b875f12cf

Reicht das zur Diagnose oder braucht ihr noch mehr?

Hilfe!

Das hier habe ich eben noch in der Sektion MAIL TEST gesehen, als ich discourse-doctor ausgeführt habe:

Plugin name is 'discourse-topic-voting', but plugin directory is named 'discourse-feature-voting'
/var/www/discourse/plugins/discourse-topic-voting/plugin.rb:22: warning: already initialized constant DiscourseTopicVoting::PLUGIN_NAME
/var/www/discourse/plugins/discourse-feature-voting/plugin.rb:22: warning: previous definition of PLUGIN_NAME was here
rake aborted!
ArgumentError: Invalid route name, already in use: 'category_none_votes'  (ArgumentError)
You may have defined two routes with the same name using the `:as` option, or you may be overriding a route already defined by a resource with the same naming. For the latter, you can restrict the routes created with `resources` as explained here: 
https://guides.rubyonrails.org/routing.html#restricting-the-routes-created

          raise ArgumentError, "Invalid route name, already in use: '#{name}' \n" \
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:649:in `add_route'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:2062:in `add_route'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:2033:in `decomposed_match'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:1997:in `block in map_match'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:1991:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:1991:in `map_match'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:1719:in `match'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:768:in `map_method'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:711:in `get'
/var/www/discourse/config/routes.rb:1346:in `block (4 levels) in <main>'
/var/www/discourse/config/routes.rb:1345:in `each'
/var/www/discourse/config/routes.rb:1345:in `block (3 levels) in <main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:903:in `scope'
/var/www/discourse/config/routes.rb:1337:in `block (2 levels) in <main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:903:in `scope'
/var/www/discourse/config/routes.rb:14:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:479:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:479:in `eval_block'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:461:in `draw'
/var/www/discourse/config/routes.rb:10:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:64:in `load'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:64:in `block in load_paths'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:64:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:64:in `load_paths'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:25:in `reload!'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:52:in `block in updater'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.2.1/lib/active_support/file_update_checker.rb:85:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:34:in `execute'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/routes_reloader.rb:39:in `execute_unless_loaded'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application/finisher.rb:179:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application.rb:440:in `initialize!'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bootsnap-1.18.6/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.3/lib/zeitwerk/core_ext/kernel.rb:34:in `require'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application.rb:416:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/railties-8.0.2.1/lib/rails/application.rb:567:in `block in run_tasks_blocks'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => emails:test => environment
(See full trace by running task with --trace)

Ich hatte bisher folgende Plugins aktiv:

      - git clone https://github.com/discourse/docker_manager.git
      - git clone https://github.com/discourse/discourse-solved.git
      - git clone https://github.com/discourse/discourse-github.git
      - git clone https://github.com/discourse/discourse-data-explorer.git
      - git clone https://github.com/discourse/discourse-feature-voting.git
      - git clone https://github.com/discourse/discourse-affiliate.git
      - git clone https://github.com/discourse/discourse-akismet.git

Nachdem ich bei rebuild app die Meldung gesehen habe, dass einige davon jetzt Bestandteil von Discourse sind, habe ich das eingekürzt:

          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-feature-voting.git
          - git clone https://github.com/discourse/discourse-akismet.git
「いいね!」 1

discourse-feature-voting is the (very) old name of the topic-voting plugin which is now bundled with Discourse core. If you remove the feature-voting line from your app.yml and then rebuild, things should work better :crossed_fingers:

「いいね!」 2

Thanks a lot for your quick answer.

Worked!

「いいね!」 2