PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

rake db:structure:dump non riesce in PostgreSQL/Rails 3.2

Il pg_dump il comando viene eseguito in activerecord/lib/active_record/railties/databases.rake alla riga 428 .

`pg_dump -i -s -x -O -f #{Shellwords.escape(filename)} #{search_path} #{Shellwords.escape(config['database'])}`

Prova a impostare un punto di interruzione lì e vedere quale comando viene eseguito.

Tutte queste opzioni sono valide per Pg9.0.x, quindi sospetto che ci sia qualcosa di divertente in abcs[Rails.env]['schema_search_path'] che confonde l'analisi delle opzioni di psql. Nota il search_path costruzione non cita lo --schema argomento, quindi un search_path_part con uno spazio incorporato analizzerà come un nome di schema parziale seguito da una parola che non è preceduta da un'opzione, quindi psql lo interpreterà come un nome di database, quindi si lamenterà quando arriverà al nome del database reale in seguito.