Переход на новые версии технологической платформы 1С:Предприятие — это всегда ответственный шаг для системного администратора и разработчика. Очень часто разработчики прикладных решений (например, конфигурации "Бухгалтерия предприятия КОРП, редакция 3.0") выпускают очередные обновления, которые жестко требуют использования платформы не ниже определенного релиза. В такой ситуации перед нами встает дилемма: какую ветку выбрать — условно стабильную и проверенную временем 8.3.15 или более новую 8.3.16?
В этой статье мы подробно рассмотрим критерии выбора между ветками 8.3.15 и 8.3.16, а также детально разберем по шагам, как локализовать и устранить самые частые критические ошибки, возникающие в процессе этой миграции. Мы проанализируем проблемы с СУБД, ошибки лицензирования кластера, падение процессов на устаревших операционных системах и оптимизируем работу сервера.
Выпуская обновления для конфигураций, фирма "1С" постепенно поднимает требования к минимальному релизу платформы. Например, для полноценной работы конфигурации БП КОРП версии 3.0.75.37 требуется платформа версии не ниже 8.3.15.1830. Это связано с тем, что прикладной код начинает активно использовать новые возможности Библиотеки стандартных подсистем (БСП) и оптимизированные механизмы запросов, которые физически не поддерживаются старыми версиями платформы.
При выборе релиза между 8.3.15 и 8.3.16 рекомендуем придерживаться следующих правил:
8.3.15.1830). Эта линейка является стабилизированной, в ней исправлено большинство базовых системных ошибок, и она полностью совместима с актуальными требованиями конфигураций.8.3.16.1148 и выше.Стоит отметить, что разработчики конфигураций в режиме совместимости часто оставляют значение 8.3.14. Из-за этого информационная база может запускаться на старых платформах и даже внешне стабильно работать, однако это таит в себе скрытые риски. При расчете сложных отчетов или сдаче регламентированной отчетности могут "выстрелить" незадокументированные ошибки старых платформ, которые фирма "1С" уже не будет исправлять в архивных ветках. Поэтому пренебрегать требованиями к обновлению не стоит.
Это одна из самых коварных и распространенных ошибок СУБД, с которой сталкиваются администраторы при переходе с платформы 8.3.14 на 8.3.15 и 8.3.16. Проблема локализуется на уровне сервера приложений 1С и СУБД (например, MS SQL Server или PostgreSQL).
Выясним причину этой проблемы. Ошибка возникает из-за рассинхронизации кэша метаданных на сервере приложений и реальной структуры таблиц СУБД. При создании копий баз данных, выполнении динамических обновлений ("демонского обновления") или некорректном завершении реструктуризации платформа может попытаться сопоставить один и тот же внутренний идентификатор (ссылочный код) нескольким таблицам в базе данных.
Рассмотрим по шагам, как исправить эту ошибку:
Шаг 1. Выполнение реструктуризации проблемной таблицы через Конфигуратор
Самый простой способ заставить платформу пересчитать ссылочные коды для конкретного объекта метаданных (например, справочника или документа, на который ругается система при обновлении) — это принудительная реструктуризация. Для этого:
ВременныйРеквизит) и типом Булево.ВременныйРеквизит и снова обновите конфигурацию базы данных (F7).Шаг 2. Очистка кэша сервера приложений 1С
Если реструктуризация через Конфигуратор не помогла, необходимо полностью очистить серверный кэш метаданных. Проанализируем схему действий:
1C:Enterprise 8.3 Server Agent или ragent).C:\Program Files\1cv8\srvinfo\reg_1541\snccntx*).Шаг 3. Использование резервного тестирования и исправления
В случае, если база полностью заблокирована, запустите тестирование и исправление информационной базы через Конфигуратор (меню Администрирование — Тестирование и исправление) с обязательным выбором пунктов "Реиндексация таблиц информационной базы" и "Реструктуризация таблиц информационной базы".
Начиная с версий платформы 8.3.15, разработчики 1С существенно ужесточили автоматический контроль соответствия используемых программных лицензий и настроек кластера. Если у вас установлена стандартная лицензия уровня ПРОФ, но в свойствах кластера или рабочих серверов заданы параметры, относящиеся к уровню КОРП, сервер заблокирует запуск сеансов пользователей с этой ошибкой.
Проанализируем ситуацию. Чтобы исправить эту проблему, нам необходимо вернуть настройки кластера к стандартным значениям, которые разрешены для лицензий уровня ПРОФ. Выполните следующие действия:
0 (автоматически).0.0 (без ограничений).0.Помните, что для ПРОФ-лицензий использование многопроцессности кластера жестко ограничено. Не пытайтесь вручную создавать дополнительные рабочие процессы rphost в консоли, предоставьте это автоматическим механизмам платформы.
При обновлении платформы до версий 8.3.15.1830 на серверах под управлением устаревшей ОС Windows Server 2003 x64 администраторы часто сталкиваются с моментальным аварийным завершением работы системы. Сразу после выбора информационной базы в окне запуска приложение аварийно закрывается, формируя минидамп в каталоге C:\Program Files\1cv8\common\.
Выясним причину этого сбоя. Современные релизы платформы 1С ориентированы на использование системных вызовов API операционных систем Windows Server 2008/2012 и выше. В Windows Server 2003 многие из этих динамических библиотек и вызовов отсутствуют или работают некорректно.
Для решения этой проблемы мы можем применить два подхода:
8.3.16.1063 и полностью локализована в сборке 8.3.16.1148. Если архитектура вашей сети не позволяет оперативно обновить ОС, используйте для работы именно эти релизы платформы 8.3.16.Рассмотрим еще одну важную особенность версий 8.3.15 и 8.3.16. Архитектура рабочих процессов была изменена: в процесс rphost интегрировали новые фоновые механизмы поиска, контроля и интеграции с внешними сервисами. Это привело к росту потребления оперативной памяти — практически в два раза по сравнению с веткой 8.3.14.
Если на вашем сервере используется 32-разрядная версия сервера 1С:Предприятия, то один процесс rphost ограничен адресным пространством в 2 ГБ (в редких случаях 3 ГБ при использовании ключа /3GB). При активной работе пользователей (особенно более 10 человек) этот лимит достигается очень быстро, что приводит к критической ошибке нехватки памяти и аварийному вылету всех пользователей этого процесса.
Для оптимизации работы кластера выполните следующие действия:
rphost в 2 ГБ и позволит серверу эффективно использовать всю установленную на сервере оперативную память.Применяя данные рекомендации и своевременно реагируя на системные сообщения СУБД и кластера, мы сможем обеспечить высокую скорость и абсолютную стабильность работы наших информационных баз 1С на платформе версий 8.3.15 и 8.3.16.