Особенности обновления системы ELMA

Для успешного обновления системы и во избежание возможных проблем мы советуем придерживаться приведенных ниже рекомендаций.

Общие рекомендации

  1. Перед каждым обновлением – не зависимо от того, мажорный или минорный устанавливается релиз, – необходимо обязательно создать резервную копию базы данных или убедиться, что резервная копия уже создана.
  2. Перед обновлением на мажорный релиз следует сделать и резервную копию содержимого папки с конфигурацией (по умолчанию папка UserConfigс конфигурационными файлами находится в папке: ..\ <Общая папка с файлами системы ELMA>\UserConfig). Это необходимо для того, чтобы впоследствии иметь возможность беспроблемно произвести откат системы до предыдущей версии.
  3. Рекомендуется выполнять обновление системы сначала на тестовом сервере, и, если всё прошло в штатном режиме, обновлять продуктивный сервер (пример организации работы по схеме "Тестовый – Продуктив" см.: https://www.elma-bpm.ru/kb/article-751.html).
  4. При наличии дополнительных модулей, их необходимо пересобрать в MS Visual Studio для новой версии системы.

Дополнительные модули устанавливаются/обновляются через пакеты. В пакеты могут быть запакованы файлы исходного кода. При этом клиентский модуль, сконфигурированный для предыдущей версии, может быть не совместим с новой версией системы ELMA. Существует два варианта решения этой проблемы:

1) Пакет с выбранным модулем для новой версии ELMA необходимо положить в папку Packages (~\ELMA3-Standart\Packages).

2) Далее следует открыть клиентский модуль в VS и собрать проект. Если в процессе сборки у вас возникнут ошибки, для их решения используйте методы, описанные в статье: https://www.elma-bpm.ru/kb/article-618.html.

5. При наличии установленных компонентов ELMA Store необходимо следовать инструкции по обновлению системы: https://www.elma-bpm.ru/kb/article-915.html.

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

Наиболее частые проблемы обновления

  1. Версия 3.9 не поддерживает СУБД MS SQL 2005. Если вы используете MS SQL 2005, то перед обновлением на версию 3.9 его следует обновить до версии SQL 2008 и выше.
  2. Не допускайте "перепрыгивания" через мажорный релиз при обновлении, например, с 3.7 на 3.9. Сначала необходимо обязательно обновить систему до версии 3.8, и только затем можно обновлять до версии 3.9.
  3. Ошибка в версии 3.9, связанная с Linked Server. Для работы на сервере MSSQL в настоящее время используется механизм Linked Server, который позволяет изолировать транзакции генерации идентификаторов от основной транзакции. При первом запуске система сама попытается создать точку связи, а в случае неудачи – в веб-интерфейс будет выведено сообщение с инструкцией для администратора БД.
  4. При обновлении (как и при перезапуске веб-сервера после изменений в конфигурации) могут возникать ошибки нарушения целостности базы данных. Они не являются ошибками обновления, а лишь следствиями некорректных действий пользователей\администраторов ELMA, например, некорректного вмешательства в базу данных, удаления записей таблиц и т.п.

Каждое обновление – это частный случай, поэтому не всегда возможно предугадать возникновение нештатной ситуации. Если при обновлении у вас возникли проблемы, обращайтесь в службу технической поддержки компании ELMA: support.elma-bpm.ru.

Различные параметры таймаутов при обновлении

При обновлении существующей базы данных с версии 3.8 на версию 3.9 будет произведено масштабное преобразование базы данных, которое может занять длительное время. Поэтому для обеспечения корректного обновления требуется увеличить таймауты работы с БД. Для этого требуется выполнить ряд шагов:

  • В файле Settings.config, расположенном в папке: ..\ <Общая папка с файлами системы ELMA>\Web, указать параметр DbTransformCommandTimeout – значение в секундах. Наша рекомендация – выставлять данный параметр с запасом – в значение 360000 с. Также проверьте файл конфигурации Settings.config в папке: ..\ <Общая папка с файлами системы ELMA>\Web – и в случае, если там присутствует этот параметр, то его также следует установить в значение 360000 с;
  • В файле ..\<Общая папка с файлами системы ELMA>\UserConfig\configuration.config найдите тэг <main connectionStringName="MainDB" … /> и добавьте атрибут commandTimeOut="360000", если такого атрибута еще не было. Если указанный атрибут уже присутствует там – просто установите его значение в 360000 с;
  • Обновление может занять очень большой промежуток времени; продолжительность процесса обновления в значительной степени зависит от размеров БД и ресурсов на сервере БД. В среднем, база данных размером 100ГБ на сервере с 16ГБ ОЗУ и 4 ядрами 2.4ГГц обновляется около 5-8 часов.

Настройка создания резервной копии

Перед обновлением системы необходимо обязательно создавать резервную копию базы данных. Можно настроить автоматическое создание резервной копии при каждом старте веб-сервера ELMA. Для этого в файле конфигурации configuration.config (о работе с файлами конфигурации можно прочитать здесь: https://www.elma-bpm.ru/kb/article-486.html) в строке <main connectionStringName="MainDB" type="EleWise.ELMA.Extensions.MSSQL.MSSQLProvider, EleWise.ELMA.Extensions.MSSQL" backupPath=""/> должен присутствовать параметр backupPath="". Если его значение не задано, то резервная копия создаётся в директории по умолчанию. Для редакции Стандарт это C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup, для редакции Экспресс – ...\ELMA3-Express\UserConfig. Если параметр backupPath="" заполнен, то резервная копия создаётся по указанному пути, например: backupPath="C:\Newfolder\backup".

Создание бэкапа вручную

Действия по созданию резервных копий подробно описаны в следующих статьях нашей базы знаний: