путь_поиска в файле struct.sql изменяется rails db: migrate - PullRequest
0 голосов
/ 25 октября 2018

Каждый раз, когда я запускаю rake db:migrate в моем проекте, db/structure.sql меняется, и я счастлив.К сожалению, изменения являются не только дополнением к моей таблице, но и явным недостатком в явном использовании нашего ключевого слова tenant и ключевого слова extensions.

db/structure.sql | 20278 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------------
1 file changed, 9565 insertions(+), 10713 deletions(-)

Это часть моей интересной разницы после миграции:

-CREATE FUNCTION _final_median_function(anyarray) RETURNS double precision
+CREATE FUNCTION extensions._final_median_function(anyarray) RETURNS double precision

и вот пример для таблицы:

-SET search_path = at, pg_catalog;
-CREATE TABLE advert_all_clicks (
+CREATE TABLE at.advert_all_clicks (

Postgres 9.6.10 (также проверено, и это происходит в 10. +) Многопрофильность осуществляется с использованием apartment

Кто-нибудь знает, почему это происходит?Не могу найти слишком много, и я борюсь с этим некоторое время.

Редактировать: В связи с моей проблемой я нашел это , но это относится к postgres <9.3 </p>

1 Ответ

0 голосов
/ 30 октября 2018

Это странно, но я собираюсь ответить на случай, если у кого-то еще возникнет такая же проблема.

Если вы работаете над проектом, использующим файл db/xx.sql, то, если вы откроете его, в самых первых строках вы увидите версии pg_dump и postgres, которые использовались для создания этого дампа..

Для успешного восстановления из дампа или для очистки этого файла db/xx.sql при работе db:migrate у вас должна быть установлена ​​точно такая же версия.Он не работает с другим основным / второстепенным / выпуском (должен быть точно таким же)

В моем случае первые строки выглядят так:

--
-- PostgreSQL database dump
--

-- Dumped from database version 9.6.5
-- Dumped by pg_dump version 9.6.5

Я попытался установить 9.6.10 (которыйтекущее postgresql@9.6) и другие разные версии.Он продолжал портить мой файл, пока я не скомпилировал ровно 9.6.5 из исходного кода.

Не смог найти объяснения этому, и я не вижу изменений в журналах изменений 9.6.x.

Вскоре я создам самодельный кран и приведу его в качестве примера.

...