Rebuild Upgrade Failing With DB Migrate (Postgres Issue?)

Hey Folks,

I have a rebuild that’s failing with a db migrate issue - I’ve been doing constant rebuilds on this install for several years so wondering if something is too old?

I wonder if annoying could let me know if any information can be extracted from the end of the build log, or if I need to go higher?

Thanks so much for any help!

I, [2022-11-30T10:15:55.248687 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
[discourse-signatures] Handlebars templates can no longer be included via `register_asset`.
Any hbs files under `assets/javascripts` will be automatically compiled and included."
/var/www/discourse/lib/plugin/instance.rb:590:in `register_asset'
/var/www/discourse/plugins/discourse-signatures/plugin.rb:48:in `activate!'
/var/www/discourse/lib/plugin/instance.rb:677:in `instance_eval'
/var/www/discourse/lib/plugin/instance.rb:677:in `activate!'
/var/www/discourse/lib/discourse.rb:314:in `block in activate_plugins!'
/var/www/discourse/lib/discourse.rb:311:in `each'
/var/www/discourse/lib/discourse.rb:311:in `activate_plugins!'
/var/www/discourse/config/application.rb:212:in `block in <class:Application>'
/var/www/discourse/lib/plugin.rb:6:in `initialization_guard'
/var/www/discourse/config/application.rb:211:in `<class:Application>'
/var/www/discourse/config/application.rb:82:in `<module:Discourse>'
/var/www/discourse/config/application.rb:81:in `<top (required)>'
/var/www/discourse/Rakefile:7:in `require'
/var/www/discourse/Rakefile:7:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
(See full trace by running task with --trace)
I, [2022-11-30T10:15:56.291184 #1]  INFO -- : 
I, [2022-11-30T10:15:56.292222 #1]  INFO -- : Terminating async processes
I, [2022-11-30T10:15:56.292556 #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: 41
I, [2022-11-30T10:15:56.292812 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 102
2022-11-30 10:15:56.293 UTC [41] LOG:  received fast shutdown request
102:signal-handler (1669803356) Received SIGTERM scheduling shutdown...
2022-11-30 10:15:56.300 UTC [41] LOG:  aborting any active transactions
2022-11-30 10:15:56.306 UTC [41] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
2022-11-30 10:15:56.308 UTC [45] LOG:  shutting down
2022-11-30 10:15:56.340 UTC [41] LOG:  database system is shut down
102:M 30 Nov 2022 10:15:56.383 # User requested shutdown...
102:M 30 Nov 2022 10:15:56.384 * Saving the final RDB snapshot before exiting.
102:M 30 Nov 2022 10:15:56.481 * DB saved on disk
102:M 30 Nov 2022 10:15:56.482 # 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 1433 exit 1>
Location of failure: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1

I want to tentatively say that it may be an issue with discourse-signatures due to the top line. Could you try rebuilding without it and seeing if that works?

Actually, this rings a bell from the other day:

Could you try another rebuild and see if it’s just a hiccup?

1 Like

I did actually try it 3 times earlier … I could try to comment out the signatures plug-in and go again.

Will report back.

1 Like

Thank you kindly @JammyDodger!

I commented out the plugin and it finished the rebuild successfully.

On that other thread it looks like they’ve submitted a fix for it … presumably it might work if I re-enable it in the aml file and go again?

Otherwise for now, I can go without that one.

2 Likes

The issue should be fixed in the latest version of discourse-signatures. Are you using some other branch/fork of the plugin? :thinking: Can you share the signatures line from your app.yml?

3 Likes

It would’ve been a long time ago that I added it so I’m not sure how old/which fork but this is it:

#- git clone https://github.com/xfalcox/discourse-signatures.git

1 Like

Ah I see. If you update that to the official https://github.com/discourse/discourse-signatures then it should work much better

@Falco I guess we should do something to help people migrate to the official repo. Maybe we can get GitHub to redirect your original copy of the repo? Or if not, maybe we can do something like

6 Likes

That would be awesome.

It’s quite possible there are some (at the time) bleeding edge things I’ve added to forums that have been since stabilised and included in the main release that might do the same thing down the line.

Thanks for the swift efforts!

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.