Odpowiedz

11

Kiedy nowy schemat jest tworzony Postgres próbuje zresetować statystyk wykonując funkcję pg_stat_statements_reset()

Domyślnie ta funkcja może być tylko wykonywane przez superużytkowników (from original doc).

Heroku nie daje ci uprawnień administratora. Musisz wyłączyć rozszerzenie pg_stat_statements.

Rozwiązanie 1 - Szybka poprawka bezpośrednio w DB

Execute SQL w schemacie publicznego

DROP EXTENSION pg_stat_statements; 

Rozwiązanie 2 - poprzez migrację

1) Sprawdź plik db/schema.rb. Najprawdopodobniej zawiera ona zastosowanie migrację

rake db:migrate 
linię

enable_extension "pg_stat_statements" 

2) Utwórz plik migracji

rails g migration DropExtensionPgStatStatements 

3) określenie metody self.up

def self.up 
    disable_extension "pg_stat_statements" 
end 

4)

5) Teraz plik db/schema.rb nie powinny zawierać tę linię

6) dokonać zmian schematu i migracji (pliki), a następnie wdrożyć do Heroku

rake deploy:production:migrations 

Jeśli chodzi o zadania natarcia zobaczyć deploy.rake

+0

Gosh, uratowałeś mi tyłek! DZIĘKUJĘ CI! – typeoneerror