Динамическое обновление

Оглавление
  1. Динамическое обновление
  2. Проблемы при выполнении динамического обновления
  3. Забивается КЭШ
  4. Повреждалась таблица config

1С Ошибка инициализации

Сегодня мы разберемся с новым функционалом BAS -

Динамическое обновление

Начиная с версии 8.1 реализована возможность обновления конфигурации базы данных без прерывания работы пользователей в тех случаях, когда изменения не затрагивают структуры данных. Активные пользователи, для того, чтобы начать работать с измененной конфигурацией, должны перезапустить клиентское приложение.

В BAS это реализовано вот так:

Динамическое обновление

Казалось бы замечательный инструмент, но не все так просто.

Проблемы при выполнении динамического обновления

Забивается КЭШ

Часто, при использовании динамического обновления конфигурации, у пользователей забивается кэш и программа не работает так, как надо. Проблема устраняется путем чистки кэша у пользователей. Но основная загвоздка в том, что не возможно определить у какого пользователя (особенно если их больше 100) кэшированные модули соответствуют текущей версии конфигурации, а у какого нет. 

Такая дорога обычно ведет к скриптам автоматической очистки кэша и т.д. Нужно это вам или нет, решать вам.

Повреждалась таблица config

Были случаи, когда повреждалась таблица config в бд, приходилось исправлять ручками. В SQL версии проще, средствами администрирования можно снести ненужную запись. А вот с файловой посложнее, править можно через HEX редактор, почти наугад.

Вот пример для SQL:

В configsave хранятся только измененные объекты, не вся конфигурация. 

При обновлении конфигурации записи из configsave копируются в config замещая аналогичные записи, потом таблица configsave очищается, а в таблице config записи где FileName = 'commit' и FileName = 'dynamicCommit' удаляются. 

  1. Очистить таблицу configsave, если она полная. 

В конструкторе запросов SQL:

  1. delete from config where FileName = 'commit' 
  2. delete from config where FileName = 'dynamicCommit' 

Другие записи, в том числе, где FileName = 'root', FileName = 'DynamicallyUpdated', FileName = ' version', FileName = 'versions' трогать не надо. 

Можно удалить запись, где FileName = 'dbStruFinal', но она в принципе не влияет на загрузку, удалится сама при очередном обновлении.

И это далеко не полный перечень проблем, которые может вызвать динамическое обновление. Пользоваться им или нет – решать вам.

Так же, наша компания проводит обучение по курсам:

 Обучение проводится в вечернее время, что позволит вам не отрываться от работы или обучения, практикующим программистом нашей компании.

Если у вас остались вопросы, Вы всегда можете обратиться к нашим аналитикам по телефонам:
(093) 090-70-20
(095) 090-70-20
(068) 090-70-20

( 12 )
Комментарии
Пока нет комментариев
Написать комментарий

Свяжитесь с нами

Если вы хотите получить больше информации, заполните эту форму. Мы свяжемся с вами в ближайшее время.

(095) 090-70-20 (068) 090-70-20 (093) 090-70-20 info@finsoft.ua