Решение проблемы при создании хранилища 1С:УПП

17.01.19

База данных - Инструменты администратора БД

Поиск причины ошибки Runtime Error платформы 8.2 при создании хранилища для конфигурации 1С:УПП начиная с версии 1.3.112.1 и варианты решения.

На написание данной статьи меня сподвигла проблема невозможности создать хранилище для конфигурации 1С:УПП и полное отсутствие описания причин / решений  в интернете.

Отдельно спасибо хотел бы сказать пользователю на Инфостарте lupupa85, которая дала нужный вектор в поиске проблемы, и пользователю AKV77  за статью:  //infostart.ru/public/251265/

 

ИССЛЕДОВАНИЕ.

Поняв, как все работает (даже в общих чертах), проще принимать решения и контролировать процесс.

Если посмотреть историю распухания конфигурации 1С:УПП, а именно, выгруженной в файл cf, то мы увидим следующую картину по версиям:

1.3.111.2 – чуть больше 300 мбайт;

1.3.112.1 – уже больше 500 мбайт;

1.3.115.2 – больше 550 мбайт.

Размеры конфигураций приведены с целью показать, какой произошел скачок размера конфигурации с версии 1.3.111.2 на версию 1.3.112.1 и дальнейшую динамику.

Казалось бы, причем тут размер самой конфигурации, тем более он не дотягивает даже до размера 1 Гб? Однако, мы не забываем, что если 1С:УПП работает на платформе 8.2, то она (платформа) является 32-битной со своими устаревшими ограничениями. И как ниже будет понятно, именно это, совместно с еще одним моментом и служит причиной вываливания платформы в ошибку при создании хранилища с ошибкой:

В результате поиска решения, было выявлено, что при создании хранилища платформа создает временный файл *.tmp в «C:\Users\...Пользователь...\AppData\Local\Temp» (для XP путь будет другим) и в случае достижения размера этого файла 2Гб, а если быть более точными по данным операционной системы Windows «2097мбайт» платформа как раз и валится в ошибку.

Видимо, какая-то компонента, которую использует платформа 8.2, являясь 32-битной, имеет ограничение на размер файла или на размер того, что хранится в tmp файле. Что хранится в tmp файле при создании хранилища мне выяснить не удалось, также не удалось выяснить и какая именно компонента виновата.

Хотя в логах Windows имеется запись об ошибке со ссылкой на компоненту, я не могу утверждать что виновата она. Замена этой компоненты на другие версии результата не принесло:

Путь сбойного приложения: C:\Program Files (x86)\1cv82\8.2.19.130\bin\1cv8.exe
Путь сбойного модуля: C:\WINDOWS\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.8387_none_5094ca96bcb6b2bb\MSVCR90.dll

Все попытки создания хранилища типовой 1С:УПП версии 1.3.115.2 были провальными и прерывались на 74% при достижении предельного размера tmp файла в 2Гб. На мысль натолкнула пользователь lupupa85, которая сказала, что в случае снятия конфигурации с поддержки, хранилище создается. Зная, что в обычном *.1CD (базе данных) при нахождении конфигурации на поддержке хранится сразу 2 конфигурации (текущая и конфигурация поставщика), а при снятии с поддержки конфигурация поставщика удаляется из базы, уменьшая общий объем таблиц в мбайтах, данное утверждение становится логичным. При проведении теста, из типовой конфигурации со снятой поддержкой действительно создалось хранилище, при этом предельный размер tmp файла достиг (второй файл):

Как видно, еще чуть-чуть (всего 100 мбайт) и хранилище не сможет создаться из типовой конфигурации даже при снятой поддержке.

Обрадовавшись, что, хотя бы так можно создать хранилище, я решил на своей конфигурации провести манипуляции, где меня постигло фиаско. Снятая с поддержки конфигурация при создании хранилища выдала ошибку на 99%. Тут нужно уточнить: что в нашей конфигурации объединены 1С:УПП + 1С:УАТ + свои доработки, соответственно общий размер таблиц в мбайтах превышает размер таблиц в типовой конфигурации.

Здесь я не буду описывать на скольких компьютерах, серверах с различными операционными системами (включая разрядность), объемами оперативной памяти и скоростями жестких дисков были попытки создать хранилище с отрицательным результатом, но можете поверить, за почти 7 дней – очень много. Можно сказать было испробовано почти все. Пожалуй, не было попыток только на Windows 10.

Также необходимо отметить, что для конфигурации "на поддержке" на платформе 8.3 (32-битной) хранилище создавалось без проблем.

Естественно о данной проблеме было сообщено в техническую поддержку 1С разработчикам и получен ожидаемый ответ: «Мы проверили, у нас все ОК». Поэтому не будем останавливаться на данном моменте, а пойдем дальше.

 

ВЫВОДЫ ИЗ ИССЛЕДОВАНИЯ.

Удалось выяснить:

1. Из-за какого файла, где расположенного и при каком объеме платформа 8.2 конфигурации 1С:УПП, начиная с 3.112.1 вываливается в ошибку:

- файл с расширением *.tmp;

- расположение «C:\Users\...Пользователь...\AppData\Local\Temp»;

- предельный размер «2097мбайт» (может в зависимости от операционной системы чуть-чуть отклоняться).

2. Замена компоненты «MSVCR90.dll» не дает никакого результата.

3. Оставшийся предельный размер *.tmp для создания хранилища из типовой конфигурации составляет в пределах 100 мбайт (если снята поддержка).

4. Если у Вас объединенная и доработанная конфигурация 1С:УПП, то даже со снятой поддержкой Ваш предел размера tmp файла может быть исчерпан.

5. Данная ошибка «неизвестна» / «известна, но не признается» технической поддержкой 1С.

6. На данную проблему не влияет версия или разрядность операционной системы, скорость и показатели железа. «Замедленная» проблема была заложена еще на этапе проектирования платформы, которая в версии 8.3 была устранена, а в 8.2 оставлена «как есть».

НЕ удалось выяснить:

1. Какая компонента 100% виновата в данной ошибке и причины ее поведения.

2. Что хранится в tmp файле.

 

РЕШЕНИЯ ПРОБЛЕМЫ.

1. Перевести работу сервера, клиентов и разработку на платформу версии 8.3 (с включенной / выключенной совместимостью).

Плюсы:

- Поскольку структура хранилища для платформы 8.3 переработана, то описанная ошибка исчезает сама по себе.

- Решена проблема платформы 8.2 с достижением одной таблицы в хранилище размера в 4Гб и невозможности подключения к хранилищу.

- По описаниям на форумах, скорость работы платформы 8.3 выше чем 8.2 (мною данное утверждение не проверено).

Минусы:

- На форумах имеется негативная информация о стабильности работы пользователей на ранних версиях платформы 8.3. О работе на последних версиях платформы (8.3.10 – 8.3.12) информация противоречивая, но более преобладает положительная, поэтому требуется проверка и тестирование.

- При наличии большого количества пользователей и особенно работы 24/7 требуется тщательная подготовка (установка платформы на клиентах, перевод на новую версию сервера и т.д.).

 

2. Постараться вынудить техническую поддержку 1С признать ошибку и исправить ее. Тут я не буду описывать минусы / плюсы, многие кто работает с 1С и так всё знают.

 

3. ВНИМАНИЕ!!!! НИЖЕОПИСАННОЕ РЕШЕНИЕ ПРОБЛЕМЫ ВЫПОЛНЯЕТСЯ ТОЛЬКО НА СВОЙ СТРАХ И РИСК И АВТОР НЕ НЕСЕТ НИКАКОЙ ОТВЕТСТВЕННОСТИ ЗА РЕЗУЛЬТАТ!!!

Данное решение необходимо применять только в случаях, когда Вам не подходит по каким-либо причинам 1 вариант.

Рекомендация: все манипуляции выполнить на копии, проверить, протестировать базу и только убедившись 100% в гарантированном результате применить на рабочей базе. Выполненные действия на рабочей базе НЕОБРАТИМЫ!!!

Предварительно, перед непосредственным выполнением всем операций необходимо:

- сделать копию рабочей базы и заблокировать от внесения изменений пользователями / программистами на период выполнения манипуляций;

- сделать файл cf из рабочей базы, сохранить в нескольких местах (вдруг по запарке затрете или удалите единственный);

- подготовить копию / копии рабочих баз для тестирования;

- подготовить «мощную тачку» с хорошим железом и обязательно на SSD (ОЗУ: 8 Гб, винт SSD SATA, а лучше M.2 от 250 Гб, процессор от 4 ядер, но с максимальной частотой на 1 ядро);

Для выполнения всех манипуляций у Вас должно быть достаточно времени, т.к. у меня в целом ушло на хорошем железе с учетом проверок и уже знания «как это делать» порядка 5 часов. Также все манипуляции по созданию хранилища рекомендую проводить на файловой чистой (без данных) конфигурации (это Вам сэкономит время на реструктуризации таблиц при обновлении конфигурации).

Третье решение разбивается на 2 подварианта. При этом желательно испробовать в начале вариант 3.1 и только в случае отрицательного результата перейти к варианту 3.2.

3.1. Данный вариант подходит, если конфигурация не сильно изменена и доработки не имеют огромных масштабов, соответственно и объемов в мбайтах. Итак, по порядку:

3.1.1. Снимаем конфигурацию с поддержки. Инструкция: //infostart.ru/public/251265/

3.1.2. Нажимаем «Обновить конфигурацию».

3.1.2. Создаем хранилище.

3.1.3. Подключаемся к хранилищу и захватываем все объекты для изменения. При необходимости нажимаем «Обновить конфигурацию».

3.1.4. Ставим конфигурацию на поддержку. Инструкция: //infostart.ru/public/251265/

3.1.5. Нажимаем «Обновить конфигурацию» и подливаем в хранилище (отпускаем объекты).

3.1.6. Подключаемся КОПИЕЙ к хранилищу, тестируем и проверяем на КОПИИ все ли в порядке с документами, движениями и т.д.

3.1.7. При необходимости повторяем на КОПИИ этапы 3.1.1-3.1.6 и только при 100% уверенности в результате подключаем к хранилищу РАБОЧУЮ БАЗУ и обновляем конфигурацию.

 

3.2. Если на этапе 3.1.2 платформа вывалилась в ошибку, то это говорит о том, что Ваша конфигурация слишком большая по объему и требуется что-то удалить. В моем случае, логично были выбраны общие модули, как имеющие огромный объем кода и при этом не имеющие критичных связей с другими элементами (за исключением подписок на события, но в этом случае мы просто оставляем модули в конфигурации). Итак, по этапам:

3.2.1. Снимаем конфигурацию с поддержки. Инструкция: //infostart.ru/public/251265/

3.2.2. Удаляем по одному общие модули из конфигурации. В случае, если конфигурация не дает удалить модуль из-за связанной подписки на события, то его просто пропускаем и удаляем следующие.

3.2.3. Нажимаем «Обновить конфигурацию».

3.2.4. Создаем хранилище. В случае, если при создании хранилища платформа опять вываливается в ошибку, то исходя из того, на каких % это произошло, необходимо вернуться на этап 3.2.2, но в этом случае уже подумать / почитать в интернете какие ОБЪЕМНЫЕ в мбайтах объекты можно с минимальным риском удалить. Необходимо исключить справочники, документы и любые другие элементы, ссылающиеся на другие объекты или имеющие ссылки с других объектов конфигурации. Если мы понимаем, что такие объекты уже исчерпаны, а платформа все равно валится в ошибку, то Ваша конфигурация слишком большая и в этом случае лучше вернуться к 1 варианту с переходом на платформу 8.3.

3.2.5. Подключаемся к хранилищу и захватываем все объекты для изменения. При необходимости нажимаем «Обновить конфигурацию».

3.2.6. Вот здесь понадобиться наша рабочая конфигурация из файла cf. Через «Сравнить и объединить конфигурации» мы подгружаем ранее удаленные на этапе 3.2.2. объекты конфигурации.

3.2.7. Нажимаем «Обновить конфигурацию» и помещаем объекты в хранилище, при этом оставляем их захваченными.

3.2.8. Ставим конфигурацию на поддержку. Инструкция: //infostart.ru/public/251265/

3.2.9. Нажимаем «Обновить конфигурацию» и подливаем в хранилище (отпускаем объекты).

3.2.10. Подключаемся КОПИЕЙ к хранилищу, тестируем и проверяем на КОПИИ все ли в порядке с документами, движениями и т.д.

3.2.11. При необходимости повторяем на КОПИИ этапы 3.2.1-3.2.10 и только при 100% уверенности в результате подключаем к хранилищу РАБОЧУЮ БАЗУ и обновляем конфигурацию.

 

Дальнейшее исследование данной проблемы я проводить не собираюсь, мне достаточно что работоспособность хранилища восстановлена.

В дальнейшем логичным вариантом видится подготовка и перевод работы на платформу 8.3 конфигурации 1С:УПП.

Если данная статья кому-то поможет и сократит Ваше драгоценное время, то я буду только рад.

1С:УПП УПП Обновление УПП хранилище 1С:УПП создание хранилища 1С:УПП создание хранилища УПП хранилище УПП хранилище Runtime Error не могу создать хранилище УПП не могу создать хранилище 1С:УПП ошибка создания хранилища УПП ошибка создания хранилища 1С:УПП ошибка Runtime Error УПП

См. также

SALE! 15%

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 7140 руб.

20.08.2024    7881    59    23    

69

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 18.09.2024, версия 1.2

16800 руб.

06.12.2023    8886    42    5    

74

SALE! 15%

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

10000 8500 руб.

10.11.2023    10465    36    25    

61

SALE! 35%

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 3120 руб.

14.01.2013    188062    1140    0    

912

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    32709    106    152    

73

Архивирование (backup) Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

6000 руб.

06.11.2012    72806    627    45    

85

Инструменты администратора БД Системный администратор Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    62840    94    59    

79

Инструменты администратора БД Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Многие сталкиваются с проблемой когда изображения, находящиеся в базе разные по объему и размерам. Менеджеры могут добавить файлы в очень высоком разрешении, объемом свыше 20 Мегабайт. База данных становится слишком большой, выгрузка на сайт идёт медленно и требуется много место на хостинге. Как сжать картинки и уменьшить размер базы 1С? Это можно сделать с помощью данной обработки. Существует возможность выбрать различные варианты для того чтобы уменьшить картинки: в разы, в процентах от первоначального объема, а также сделать картинки одинаковой ширины. В результате размер базы 1С значительно сократится (в зависимости от количества и размера картинок), а изображения станут небольшого объема, равными по ширине, почти без потери качества. Работает на управляемых формах для УТ 11, КА, ERP.

3000 руб.

21.07.2022    9844    7    4    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. h00k 51 17.01.19 17:39 Сейчас в теме
Есть такой важный момент - не надо подключать к хранилищу рабочую базу. Лучше потратить лишние 15 минут на формирование файла поставки и обновления конфигурации, чем иметь потенциальную дыру в безопасности рабочей базы. Плюс базы с конфигурацией на "полном замке" стабильней работают на х32 серверах.
2. Rus_Tiger 2 18.01.19 07:05 Сейчас в теме
(1) У каждого свои задачи и свои бизнес-процессы. Всегда приходится искать баланс между скоростью / удобством / безопасностью, т.к. "безопасность удобной быть не может".
На счет полной поддержки ("на замке") - это хорошо в том случае, если ее использовать типовую, но в большинстве случае приходится адаптировать. 64 битный сервер 8.2.19 - вполне стабильно работает и нареканий не вызывает.

В любом случае (подключать рабочую базу к хранилищу или нет), сейчас такая ситуация с конфой УПП на платформе 8.2, что хранилище можно создать только с полностью снятой поддержки. Ну и с точки зрения логики, все же правильнее вести разработку на той платформе, на которой потом будет работать конфигурация. Соответственно если сервер 8.2, то и разработку лучше вести на этой же платформе.
3. asved.ru 36 18.01.19 10:42 Сейчас в теме
(2)
На счет полной поддержки ("на замке") - это хорошо в том случае, если ее использовать типовую


Вы не умеете формировать поставку для модифицированной конфигурации?

(2)
с точки зрения логики, все же правильнее вести разработку на той платформе, на которой потом будет работать конфигурация

Кажется, правильнее все же держать продакшн на той платформе, на которой исходная конфигурация разрабатывается вендором. А это 8.3
4. Rus_Tiger 2 20.01.19 20:18 Сейчас в теме
(3) Формировать умеем.

А где написано, что УПП вендором разрабатывается под 8.3?
7. gavks 9 06.02.19 17:00 Сейчас в теме
8. Rus_Tiger 2 07.02.19 11:23 Сейчас в теме
(7) Одна из дыр.
Обычно в основную конфигурацию обновления накатывает 1, максимум 2 человека, так скажем "супер администраторы - очень опытные разработчики", а разработку могут вести значительно большее количество сотрудников. Здесь проблема начиная от обычной ошибки неопытного разработчика, до возможности "внесения чего-нить нехорошего" разработчиком.
Но с другой стороны, если такой специалист есть - то зачем он нужен?

Но всегда нужно помнить: "Безопасность удобной быть не может!"
Поэтому чем выше безопасность, тем больше манипуляций придется проделывать и больше времени на это затрачивать. И это во всех сферах.
5. Rus_Tiger 2 30.01.19 15:39 Сейчас в теме
Получил ответ от 1С, что "Данное поведение исправлено в версиях 8.3. Исправление в 8.2.19 не планируется."
Ну оно и понятно, возможно даже сильных разработчиков для платформы 8.2 и не осталось, а копнуть туда - можно получить еще большие проблемы со стабильностью. Так что платформа 8.2 тихонько хоронится, причем в т.ч. увеличением объема конфигурацией.
6. gavks 9 06.02.19 16:59 Сейчас в теме
Спасибо! Столкнулись с этим. Еще и в хранилище обновление не до конца положилось(конфигурация поставщика не уместилась) и при этом даже не ругнулось.
9. Rus_Tiger 2 07.02.19 11:29 Сейчас в теме
(6) Если Вам помогло, то я рад! Возможно Вы сэкономите уйму времени и выберете оптимальный для вас путь.
10. ErshovAlex 02.05.19 22:40 Сейчас в теме
Благодарю. Очень помогла Ваша статья.
Для создания хранилища пришлось удалить общие модули и обработки. После этого все прошло успешно.
11. Xershi 1555 02.05.19 23:36 Сейчас в теме
В свое время УСО 1.2 перевел на 8.3.5. А вы до сих пор на 8.2 сидите. Нет слов!
12. Rus_Tiger 2 06.05.19 10:38 Сейчас в теме
(11) Зачем трогать то, что хорошо работает.
13. Xershi 1555 06.05.19 11:01 Сейчас в теме
(12) затем, что хорошо не работает!
14. Rus_Tiger 2 06.05.19 15:21 Сейчас в теме
15. Xershi 1555 06.05.19 16:54 Сейчас в теме
(14) ну я бы посмотрел как у вас почта без костылей на безопасном протоколе работает, ну и другие фишки, которые появились с 8.3. А так если нужно только коробка, конечно можно на 8.2 и сидеть.
16. Rus_Tiger 2 07.05.19 11:44 Сейчас в теме
(15) за что так наказывать? почту на 1С...
1С УПП у нее свои сильные стороны и нужно их использовать.
И кто сказал, что используется только платформа 8.2?
17. Xershi 1555 07.05.19 12:16 Сейчас в теме
(16) вот именно, режим совместимости 8.2 это ее слабая сторона подняв хотя бы до 8.3.5 конфа начинает играть другими красками!
Оставьте свое сообщение