|
Почему нельзя обновиться сразу до последнего релиза в пределах редакции? | ☑ | ||
---|---|---|---|---|
0
luter-89
09.02.16
✎
09:54
|
Все известно, что обновление конфигураций происходит от одного ключевого релиза к другому. И так как в пределах редакции неиспользуемые реквизиты не удаляются, почему нельзя сразу накатить самый последний релиз? С тем учетом, что в самом последнем релизе есть обработчики обновления для всех предыдущих релизов.
|
|||
1
luter-89
09.02.16
✎
09:54
|
Или все-таки можно
|
|||
2
Яплакал
09.02.16
✎
10:01
|
(0) честно я не пробовал, но не уверен что нельзя, если ты накатываешь релиз где реквизиты еще существуют, тогда я не вижу не одной логической причины почему это нельзя сделать. Ты сам то пробовал или ты решил сначала на форуме спросить?
|
|||
3
luter-89
09.02.16
✎
10:02
|
(2) Не пробовал, это так размышления
|
|||
4
Фрэнки
09.02.16
✎
10:03
|
(3) теоретически можно, т.к. в модулях прописаны последовательные вызовы всех промежуточных обработок для прогона всех релизов от старого до текущего.
На практике: берут копию, обновляют, тестируют результат и принимают решение. |
|||
5
Фрэнки
09.02.16
✎
10:05
|
(3) я бывает так делаю. Беру прежнюю типовую чистую (там данных нет и процедуры обновления быстрее) - накатываю все cfu - из результата беру cf и тестю на копии рабочего релиза.
|
|||
6
luter-89
09.02.16
✎
10:08
|
При автоматическом обновлении нельзя обновиться сразу до последнего, не спроста же так придумали в компании 1С
|
|||
7
Веселый Джузеппе
09.02.16
✎
10:10
|
(0) касательно розницы, обновил с непоследней 1.0 до последней 2.1 в 2 скачка с сохранением данных.
|
|||
8
Dmitrii
гуру
09.02.16
✎
10:12
|
(0) Авторы типовых конфигураций утверждают, что в рамках одной редакции можно обновляться сразу.
Но есть свидетельства пострадавших, что так работает не всегда. Выбор за вами. См. (4): копию, обновляют, тестируют результат и принимают решение. На файловой базе проблем быть не должно. Там действительно все обработчики обновления и конвертации данных будут выполняться последовательно. В клиент-серверной базе обработчики обновления делятся на два типа: - выполняемые в монопольном режиме (назовём их МО) - отложенные, выполняемые в разделенном режиме фоновым заданием уже после того, как отработают монопольные. таким образом (назовём их РО). Таким образом может возникнуть ситуация, когда при обновлении с версии 1.0 на версию 1.2 обработчики в файловой базе выполняться: МО_1.1 - РО_1.1 - МО_1.2 - РО_1.2 а в клиент-серверной: МО_1.1 - МО_1.2 - РО_1.1 - РО_1.2 Подобное изменения порядка обработчиков может оказаться критичным если в обновлениях и 1.1 и 1.2 менялись и обрабатывались одни и те же таблицы, но в разных обработчика - в монопольно выполняемых и в раздельно выполняемых. |
|||
9
luter-89
09.02.16
✎
10:18
|
(8) Спасибо за развернутый ответ
|
|||
10
luter-89
09.02.16
✎
10:31
|
А если в объекты конфигурации добавлены новые "свои" реквизиты, тогда есть вероятность потерять данные по ним с таким обновлением?
|
|||
11
Господин ПЖ
09.02.16
✎
10:35
|
за технологию обновления из (8) кому-то на селезневской надо в голову гвоздь забить
|
|||
12
John83
09.02.16
✎
10:35
|
по-моему хороший пример:
с этого года поменялся расчет зп (база НДФЛ, новые вычет и т.д.), эти данные заполняются обработкой обновления, но думается, в каком-то из релизов эту обработку уберут и при таком "прыжке" можно будет "промахнуться" |
|||
13
John83
09.02.16
✎
10:36
|
(10) готовь cf с умом и ничего не пропадет
базу, где ведется БУ (УПП 1.3) обычно обновляю перескоком, т.к. там очень редко что-то меняется |
|||
14
Dmitrii
гуру
09.02.16
✎
10:38
|
(12) >> в каком-то из релизов эту обработку уберут
С чего вдруг. Обработчики обновления никто не убирает. Их только добавляют. Если есть обработчик при обновлении на версию, например, 1.1, то он останется и в версии 1.99. |
|||
15
Господин ПЖ
09.02.16
✎
10:38
|
>базу, где ведется БУ (УПП 1.3)
там этого угара и содомии из (8) нету |
|||
16
John83
09.02.16
✎
10:39
|
+(13) вот если бы была та же БП 3.0, то так рисковать, т.к. постоянно вносят кучу изменений
|
|||
17
Dmitrii
гуру
09.02.16
✎
10:39
|
(11) >> надо в голову гвоздь забить
Спорное мнение. Некоторые некритичные обработчики выполняются очень долго. Разделение обработчиков на монопольные и выполняемые раздельно значительно ускоряет процесс обновления больших баз данных. Хотя само по себе конечно решение неоднозначное. |
|||
18
vde69
09.02.16
✎
10:40
|
(8)+ нельзя обновлять если было удаление метаданных, пример:
редакция 0 редакция 1 рекв А переименовали в удалить_а, при этом данные перенесли в новый регистр редакция 2 рекв удалить_А удалили при переходе сразй от редакции 0 к редакции 2 мы потеряем данные и регистр будет пустой |
|||
19
Фрэнки
09.02.16
✎
10:42
|
(16) можно предположить, что в данном случае вопрос об очень большом скачке за несколько лет. Если регулярно сопровождать базу, то накатывать последовательно не так критично, как сразу большое количество релизов за годы.
|
|||
20
Dmitrii
гуру
09.02.16
✎
10:42
|
(18) В типовых так никто не делает.
Внутри одной редакции РеквА останется навсегда с префиксом "Удалить". |
|||
21
Фрэнки
09.02.16
✎
10:42
|
(18) так ТС и пишет в топике, что в рамках одной редакции
|
|||
22
пипец
09.02.16
✎
10:53
|
при автоматической обработке конфигурации бух 2.0 работающей на платформе 3.0 - через интернет - автообработчик полез обновлять конфигурацию с 2.0 на 3.0 особо не спрашивая "с чегойто так надо" ... в результате от автоматических обработок отказались насовсем
|
|||
23
Ион
09.02.16
✎
10:57
|
в 90% случаях можно (когда понимаешь те варианты , когда это будет с проблемами). С проблемами - просто придется доп. самому вручную данные переносить ,из бекапа например.
Один пример в (18) Еще пример - проблема при переименовании. Есть релиз 0 первоначальный. В релизе 1 обработка обновления работает с рекв111 (справочника или документа). В релизе 2 рекв111 переименован в рекв222 , обработка обновления в релизе 2 уже будет работать с рекв222 . Если мы сразу обновимся с релиза 0 на релиз 2 , то обработка обновления , которая должна была работать в релизе 1 выдаст ошибку , т.к. не найдет рекв111 . Соответсвенно все действия, связанные с этим реквизитом , придется отработать самому. |
|||
24
Господин ПЖ
09.02.16
✎
10:58
|
(17) >Разделение обработчиков на монопольные и выполняемые раздельно значительно ускоряет процесс обновления больших баз данных.
чтобы ускорить процесс пусть перерабатывают объектную модель - запросы на update/insert/delete и т.п. от процесса обновления требуется одно - чтобы он был "однозначен" - либо он пройден ПОЛНОСТЬЮ и ПОСЛЕДОВАТЕЛЬНО либо нет... |
|||
25
Dmitrii
гуру
09.02.16
✎
11:06
|
(24) >> от процесса обновления требуется одно - чтобы он был "однозначен"
Нуууу.... В теории он однозначен. Разработчики типовых обещают, что всё должно быть тип-топ. Если ты пишешь свои собственные обработчики обновления, то делай их всегда монопольными (если есть сомнения). Лично я писал и монопольные обработчики и для выполнения в разделенном режиме. Но мне проще - я работаю с конкретной базой и всегда четко знаю с какого конкретной релиза и на какой конкретный релиз я обновляюсь и последовательность у меня точно однозначная. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |