В настоящее время я использую Flyway для управления миграциями в приложении, использующем Postgis (геопространственное расширение PostgreSQL).
Этот плагин использует таблицу с именем spatial_ref_sys
, которая находится в той же схеме, что и приложение. если я изменю владельца на пользователя базы данных моего приложения, то ошибка изменится на:
ОШИБКА: невозможно удалить таблицу space_ref_sys, поскольку этого требует расширение postgis
[ОШИБКА] Подсказка: вместо этого вы можете удалить расширение postgis.
Однако я не хочу отбрасывать эти элементы, которые являются внешними по отношению к логике моего приложения, поскольку они просто вспомогательные.
Я видел два вопроса, в которых Аксель Фонтейн сказал, что функция игнорирования некоторых таблиц не поддерживается (обоим вопросам два или более года), я даже клонировал репозиторий GitHub, чтобы добавить эту функцию в Flyway самостоятельно, и я читал некоторые части кода, где это изменение могло быть реализовано; но я подозреваю, что это повлияет на несколько частей кода, и мое незнание об этом может усложнить ситуацию.
Итак, я ищу помощь для реализации изменения или, может быть, некоторые идеи для решения этой проблемы.
Я думаю просто сделать DROP всей базы данных и воссоздать ее, затем воссоздать геопространственные расширения (Postgis, PGRouting и т. д.) и выполнить миграцию с помощью Flyway, но это будет не очень удобно, если мне придется делать это несколько раз. раз в процессе разработки..