Не работает обновление конфигурации в Selta 1.1.0. В основном это связано с именами индексов и ограничений.
Бутылка selta/bug7673 Там есть архив 1с-ных файлов и дамп базы. База находится на pgsql называется bug7673 Обновления в каталоге update. Надо запустить базу в конфигураторе, и там Конфигурация->Загрузить измененную конфигурацию, выбрать md-шник из каталога обновления.
Нужно помнить, что люди уже могли поставить 1.1.0. Поэтому лучше не менять 1.1.0, а написать набор команд, которые исправят ситуацию.
первое что получил: "выбранный файл конфигурации не является потомком данного файла", но это ладно. собственно ошибочный запрос: alter table "_1sconst" drop constraint "pk__1sconst_new__1sconst"; delete from pg_indexes_name where relname = 'pk__1sconst_new" кажется, при обновлении конфигурации, создается таблица _1sconst_new, с ней индексы, затем удаление старой _1sconst и переименование новой с _1sconst_new в _1sconst. только при этом имена индексов остаются прежними. надо попробовать удалить либо переименовать индексы, имена которых сохранены в pg_indexes_name. ну и подтвердить, что таблица переименовывается...
выполняются запросы: select obj_rename('_1sconst_new', '_1sconst') и select obj_rename('pk__1sconst_new', 'pk__1sconst') в первом случае имя таблицы переименовывается, а запись в pg_indexes_name нет; во втором случае ничего не переименовывается - как сам индекс, так и запись в pg_indexes_name осталась старой.
исправил функцию obj_rename(), коммичу в 110. делаю скрипт для восстановления базы.
(В ответ на comment #5) > исправил функцию obj_rename(), коммичу в 110. > делаю скрипт для восстановления базы. написал, проверяю. пока 1С не ругается, пересчитывает ссылки...
(В ответ на comment #6) > написал, проверяю. пока 1С не ругается, пересчитывает ссылки... после поиска ссылок и пересчетов 1С запустился и работает. собираю selta-1.1.0-eter4 и публикую скрипт для исправления
выложил в каталог сельты на ftp в accessoryfiles/repairdb_on_update_conf1c.sql собрал и выложил сборку selta-1.1.0-eter4.msi
Нужно не забыть добавить этот скрипт в update 1.1.1
Для тех, кто не пользуется багзиллой или не умеет пользоваться групповым редактированием при поиске, закрываем задачи, которые они должны были принять.