Gebrochene Aktualisierung: ERROR: Muss Eigentümer der Erweiterung vector sein (PG::InsufficientPrivilege)

I, [2024-08-08T22:28:10.332254 #1]  INFO -- : cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate'
2024-08-08 22:28:18.660 UTC [1022] discourse@discourse FEHLER:  muss Besitzer der Erweiterung vector sein
2024-08-08 22:28:18.660 UTC [1022] discourse@discourse ANWEISUNG:  ALTER EXTENSION vector UPDATE TO '0.7.0';
rake aborted!
StandardError: Ein Fehler ist aufgetreten, diese und alle späteren Migrationen wurden abgebrochen: (StandardError)

FEHLER:  muss Besitzer der Erweiterung vector sein
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-3.3.1/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-3.3.1/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_sql-1.5.0/lib/mini_sql/postgres/connection.rb:202:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:38:in `block in run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:34:in `block in with_lock'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-7.1.3.4/lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:34:in `with_lock'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_sql-1.5.0/lib/mini_sql/active_record_postgres/connection.rb:38:in `run'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_sql-1.5.0/lib/mini_sql/postgres/connection.rb:181:in `exec'
/var/www/discourse/plugins/discourse-ai/db/migrate/20240611170904_upgrade_pgvector_070.rb:10:in `up'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:989:in `public_send'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:989:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:970:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:969:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:227:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:968:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:1600:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:1448:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:1600:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:1448:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:1274:in `up'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/migration.rb:1249:in `migrate'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-7.1.3.4/lib/active_record/tasks/database_tasks.rb:243:in `migrate'
/var/www/discourse/lib/tasks/db.rake:259:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:234:in `block in <main>'
/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::InsufficientPrivilege: FEHLER:  muss Besitzer der Erweiterung vector sein (PG::InsufficientPrivilege)

Zwei Zeilen stechen hervor:

  • 2024-08-08 22:28:18.660 UTC [1022] discourse@discourse FEHLER: muss Besitzer der Erweiterung vector sein
    2024-08-08 22:28:18.660 UTC [1022] discourse@discourse ANWEISUNG: ALTER EXTENSION vector UPDATE TO ‘0.7.0’;
    rake aborted!
  • PG::InsufficientPrivilege: FEHLER: muss Besitzer der Erweiterung vector sein (PG::InsufficientPrivilege)

Es ist ungefähr 1-2 Wochen her, seit meinem letzten Upgrade, kann das jemand reproduzieren oder gibt es Ratschläge?

EDIT: discourse-ai deaktiviert - Neuaufbau ohne Probleme.

2 „Gefällt mir“

Ist dies eine Standardinstallation mit nur einem Container?

Ja, das ist es, vor ein paar Jahren nach der offiziellen Anleitung installiert.

1 „Gefällt mir“
3 „Gefällt mir“

Ja, es ist immer noch da – weil ich vergessen habe zu prüfen, ob dies zusammengeführt wurde oder ob es noch offen ist :man_facepalming:

1 „Gefällt mir“

Es ist jetzt zusammengeführt

Entschuldigen Sie, aber bedeutet das, dass dieses Problem behoben ist? Ich habe ein ähnliches Problem wie hier besprochen: Discourse AI plugin failing container rebuilds/bootstrappings - #8 by Bathinda.

Ja, versuchen Sie, Ihre Website durch einen Neuerstellung zu aktualisieren.

3 „Gefällt mir“

Leider ist es fehlgeschlagen.

Weitere Informationen habe ich in diesem Thema gepostet, falls das hilft.
Bitte beachten Sie auch, dass meine Einrichtung aus 2 Containern besteht.

Auch, falls das relevant ist:

:/var/www/discourse# LOAD_PLUGINS=1 bundle exec rake db:migrate
fatal: detected dubious ownership in repository at '/var/www/discourse'
To add an exception for this directory, call:
     git config --global --add safe.directory /var/www/discourse

Für mich hat es funktioniert

1 „Gefällt mir“

Wie immer, wenn du ein Zwei-Container-Setup hast, musst du beide aktualisieren.

1 „Gefällt mir“

Kann bestätigen, dass die Korrektur das Problem für mich gelöst hat. Danke!

3 „Gefällt mir“

Danke, das wusste ich nicht.

Aber als ich versucht habe, meinen ‘data’-Container zu starten, erhalte ich diese Fehlermeldung:

Muss ich zuerst meinen ‘Web_only’-Container stoppen? Obwohl ich das vorsichtshalber auch versucht habe.

Dieses Thema wurde nach 3 Tagen automatisch geschlossen. Neue Antworten sind nicht mehr möglich.