Имя: Пароль:
1C
1С v8
Не могу загрузить базу из dt после обновления платформы
,
0 sagitt
 
14.01.22
10:35
Имеется очень сильно переписанная база на основе Розницы. До сих пор работала на версии платформы 8.3.13.1644
Лежит на postgresql-10.5-24.1C_x64, кластер 1С и postgre SQL с базой находятся на одном физическом сервере.
Размер окол 45Гб.

Решили обновить платформу 1С.
Сисадмин на тестовой машине установил postgresql_13.4_6.1C_x64, сервер 1С и платформу 8.3.20.1674.

Из старой версии dt выгружается и при необходимости прекрасно загружается обратно, а вот в новую версию отказывается загружаться. Процесс загрузки начинается, загружает примерно 5 Гб (по данным pgadmin) и выходит с ошибкой.

После включения логирования получаем ошибку
48:26.312001-0,EXCP,3,process=rphost,p:processName=NEW,OSThread=1088,t:clientID=17,t:applicationName=Designer,t:computerName=BUH,t:connectID=21,SessionID=1,AppID=Designer,Exception=SeanceContextException,Descr=Попытка получения неинициализированного значения

Методом проб и ошибок было выяснено: новая платформа успешно загружает базу УТ10, имеющую больший размер, чем целевая.
Если загрузить базу с помощью платформы 8.3.13.1644 и затем обновить платформу то база работает, однако выгрузка в DT проходит, а обратно не загружается.
Если установить 1с 8.3.18.1661, то тоже база нормально загружается и работает, на более свежих платформах загрузка не проходит.


Подскажите, как убедить последние версии платформы 1С загружать нашу базу.
1 lubitelxml
 
14.01.22
10:44
Зачем вам 20 платформа? Почему бы не оставить 13, ну или хотя бы 18?
2 lubitelxml
 
14.01.22
10:45
У меня ЗУП работает например сейчас на 19 платформе, а все остальные самописки на 13 до сих пор, и с 13 их переводить не собираюсь
3 Мимохожий Однако
 
14.01.22
10:47
установи ту платформу, через которую выгружали. Загрузи на сервер и установи новую платформу.
4 lubitelxml
 
14.01.22
10:48
(3) наверное по этому: "Если загрузить базу с помощью платформы 8.3.13.1644 и затем обновить платформу то база работает, однако выгрузка в DT проходит, а обратно не загружается. "
5 Мимохожий Однако
 
14.01.22
10:49
Не понятно зачем для УТ10 последняя платформа.
6 lubitelxml
 
14.01.22
10:49
(5) у него вообще Розница )))
7 Мимохожий Однако
 
14.01.22
10:49
(6) Розница 1.0 ?
8 Kassern
 
14.01.22
10:50
(0) зачем вы дт мучаете, неужели нет возможности по средствам скуля выгрузить и загрузить базу?
9 Мимохожий Однако
 
14.01.22
10:52
Иногда полезно грузить в пустую базу , а не в прежнюю. Т.е. создал пустую базу на SQL и грузи.
10 Мимохожий Однако
 
14.01.22
10:53
Ошибки могут быть при выгрузке в dt. 1С рекомендует восстанавливать архивы средствами СУБД, если это не переход с файловой на клиент-серверную
11 Kassern
 
14.01.22
10:55
(10) явно скуль используется раз "Сисадмин на тестовой машине установил postgresql_13.4_6.1C_x64, сервер"
12 Смотрящий
 
14.01.22
10:58
(0) Вы меняете и версию платформы и версию СУБД
Странно что у вас там не взорвалось  ничего
13 sagitt
 
14.01.22
11:08
(1) Планируем подключить обмен по ЭДО, а для этого взять обработку Diadok в перспективе они скорее всего все равно потребуют более свежую платформу.
(6) Розницей это было очень давно. Сейчас там больше своего написано.
(8) Сисадмин утверждает что у postgresql c этим проблемы. К тому же, а если придется на SQL переходить, то как это без dt сделать?
(9) пробовали. создавали и пустую базу, в нее загружали только конфигурацию и затем уже целевой dt результат такой же.
(10) Ошибки наверное могут быть, но почему тогда в старые версии грузится?
(12) Пробовали не менять версию СУБД - ошибка та же на том же месте(загружался такой же объем базы).
14 Смотрящий
 
14.01.22
11:10
(13) Тестировали бд ?
15 sagitt
 
14.01.22
11:12
(14)Да, конфигуратором. После все равно не загружается в новую платформы.
16 Смотрящий
 
14.01.22
11:14
а чекдбфл ?
17 sagitt
 
14.01.22
11:15
В СЕРВЕРНОМ варианте?
18 Vstur
 
14.01.22
11:16
(12) действительно, повезло еще...
19 sagitt
 
14.01.22
11:17
!18) Я же писал в (13) что была попытка поменять только платформу, но это ни к чему не привело.
20 Kassern
 
14.01.22
11:18
(13) вы же сами пишите, что у вас клиент-серверный вариант работы с базой "Лежит на postgresql-10.5-24.1C_x64," попробуйте сделать бекап на стороне скуля, постгря без проблем с этим справится и грузите уже этот бекап, а не вашу дтшку. "Сисадмин утверждает что у postgresql c этим проблемы" - может это у сисадмина проблемы? Какая ошибка?
21 Kassern
 
14.01.22
11:20
забудьте уже о дтшках на базах с более 10 юзверами и размерами за 40гигов. Всегда есть риск не развернуть базу, либо развернуть с ошибками, поэтому и не рекомендуют использовать ДТ для бекапов
22 sagitt
 
14.01.22
11:21
(20) т.е. вы считаете нормальным тот факт что 1С разучилась загружать собственные дт?
в(1) я писал: Если установить 1с 8.3.18.1661, то тоже база нормально загружается и работает, на более свежих платформах загрузка не проходит.
23 Vstur
 
14.01.22
11:26
(19) из чего следует вывод - 20-я платформа тестовая подделка, посмотрите, сколько криков на тему...перешли на 20-ю - все умерло...
24 Kassern
 
14.01.22
11:26
(22) вы проблему хотите решить, или по возмущаться, почему ваш ДТ 1ска не кушает?)
25 Kassern
 
14.01.22
11:29
(22) я вам больше скажу, если одна из таблиц превысит 4гига, то в любой платформе ваша дтшка чудным образом не развернется и скажет "Превышен максимально допустимый размер внутреннего файла"
26 Ёпрст
 
14.01.22
11:32
(22) если в выгруженном дт есть ошибки (рассогласованность схемы базы? например, ошибки в полях и структуре табличек, которые ТиИ никогда не правит) то dt никогда не загрузится ни в какой релиз.
27 Ёпрст
 
14.01.22
11:33
и это ..со времён выгрузки в dat файлик в 7.7
28 Ёпрст
 
14.01.22
11:33
Если ваш Одмин не умеет делать скулевый бэкап.. гоните его сцанными тряпками
29 sagitt
 
14.01.22
11:40
(26) Как  проверить наличие ошибки рассогласованность схемы базы?
К тому же 8.3.18.1661 прекрасно грузит.
30 Ёпрст
 
14.01.22
11:41
(29) Эту базу или что  грузит ?
31 Ёпрст
 
14.01.22
11:42
такой запрос че возвращает ?
SELECT * FROM ConfigSave ?
32 Ёпрст
 
14.01.22
11:43
База в каком режиме совместимости ?
33 Kassern
 
14.01.22
11:44
(31) там бекап не могут на скуле сделать, а вы прямой запрос просите сделать)
34 sagitt
 
14.01.22
11:45
Грузит именно эту базу именно из этого же дт
(31) не пробовали. Это надо на старом сервере сделать конечно?
35 sagitt
 
14.01.22
11:46
(33) А вы умеете? Расскажите как, я сисадмину передам.
36 Serg_1960
 
14.01.22
11:47
(0) "Я вам один умный вещь скажу но только вы не обижайтесь"(с)
Вам никто не гарантировал обратную совместимость выгрузки/загрузки DT в платформах. На моей памяти уже не раз и не два такое бывало.
37 sagitt
 
14.01.22
11:50
Я вам отвечу глупостью, но в одну платформу грузится (без гарантий), а в другую - нет. Возникает крамольная мысль, улучшения и исправления ошибок в платформе уже начинают мешать работать.
38 sagitt
 
14.01.22
11:52
(25) " я вам больше скажу, если одна из таблиц превысит 4гига, то в любой платформе ваша дтшка чудным образом не развернется и скажет "Превышен максимально допустимый размер внутреннего файла"

Знаю такую проблему для файловой базы, про серверный вариант не слышал. В нашей базе кстати таких нет.
39 Kassern
 
14.01.22
11:55
40 Ёпрст
 
14.01.22
11:56
(34) И в какой именно вашу выгрузку не загружает ?
41 Ёпрст
 
14.01.22
11:57
и вы 18 накатывали куда, на старый сервер или на новый ?
42 Serg_1960
 
14.01.22
11:57
(37) Зря иронизируем. Однажды мне помогло банальное ТиИ (реструктуризация). База,  загруженная из DT, становилась битой после непродолжительной работы с ней. Крамольная мысль: вероятно какие-то служебные данные из DT предыдущей платформы загружались без их реструктуризации.
43 Мимохожий Однако
 
14.01.22
11:59
(29) ну так и оставайся на этой платформе.
44 Kassern
 
14.01.22
12:01
почитайте внимательно вот эти рекомендации https://its.1c.ru/db/metod8dev/content/2922/hdoc
45 Serg_1960
 
14.01.22
12:05
+(42) (офф) я даже помню случай, когда DT файловой версии не грузился в клиент-серверную версию той-же платформы (хотя, как по мне, так обратное считал более вероятным).
46 arsik
 
гуру
14.01.22
12:06
(42) дело говорит
Нужно текущую обновить платформу, потом сделать реструктуризацию через ТИ, а потом уже попробовать выгрузку загрузку DT
47 Dmitrii
 
гуру
14.01.22
12:08
ИМХО, автор хернёй страдает.
1С всегда и везде писала, что dt не является архивом и что бекапы клиент-серверных баз должны делаться средствами СУБД.
Единственное, где без dt не обойтись - миграция с файлового варианта на клиент-сервер и обратно или с одной СУБД на другую.
Налицо придумывание самому себе проблем и мужественные попытки их преодоления.
Обновлять одновременно и версию платформы и версию СУБД - заведомый поиск приключений на свою задницу. Причем с заранее неизвестным источником причин этих приключений - толи СУБД глючит, то ли платформа. А может там админ криворукий и тестовый сервер криво настроил и там тупо места на диске не хватает (например).
48 sagitt
 
14.01.22
12:09
(46) спасибо за дельный совет. Попробуем.
49 sagitt
 
14.01.22
12:24
(47)Уважаемый, я видимо где-то написал на непонятном для вас языке, но

1. Не было обновления, была установка на новом сервере и уже туда попытка "миграции". - неудачно
2. Была произведена попытка миграции на новую платформу 1С с использованием старой версии постгриса. - неудачно
3. А если когда нибудь все таки потребуется мигрировать "с одной СУБД на другую", а я уже знаю: dt не грузится?
4. Место на диске бралось с кратным запасом по отношению к размеру базы. Причем еще раз отмечу, на той же машине не могут загрузить базу только последние версии платформы.

Вы пишете "1С всегда и везде писала, что dt не является архивом". Спасибо   Kassern он как раз вовремя дал ссылку  https://its.1c.ru/db/metod8dev/content/2922/hdoc
где написано: "Иногда этот режим используют, также, для создания резервной копии информационной базы" ну вот мой случай как раз "иногда".
Все перечисленные в статье недостатки этого метода компанию устраивают.
50 Ёпрст
 
14.01.22
13:25
(49) Поставить на новом серваке ту-же версию постриги и ту же версию 1с-ины не предлагать ?
А потом уже заниматься поднятием версии платформы
51 Ёпрст
 
14.01.22
13:26
Да и..45 гиг.. версионирование поди, гигов 30 место отъело ? :)
52 sagitt
 
14.01.22
14:20
(50)Такой опыт делали - все работает. Однако на будущее хочется платформу обновить. Согласитесь, со временем появляются новые возможности, которые хоиелось бы использовать.
Однако после обновления платформы получаем невозможность загрузить базу из дт, а это закрывает возможность миграции да и один из вариантов сохранения, что печально.
Версионирование не используется. Просто фирма работает давно, объемы документооборота приличные.
53 Ёпрст
 
14.01.22
14:37
(52) ну и обновляй, в начале на старом постриге обнови платфору ( не делая никаких выгрузок)
Потом подыми версию скуля
54 Ёпрст
 
14.01.22
14:37
Усё
55 серый КТУЛХУ
 
14.01.22
14:46
для мегагуру-нытиков про "дт ето не архивация".
1. по ссылке из (44): "1С:Предприятие поддерживает возможность загрузки/выгрузки информационной базы в файл. Этот механизм предназначен, прежде всего, для получения образа информационной базы независимо от способа хранения данных." по слогам. "поддерживает". но не рекомендует для постоянного использования в качестве штатного бэкапа ("обладает рядом недостатков. Основным недостатком такого способа создания резервной копии является необходимость использования однопользовательского режима для осуществления этой операции. При большом объеме информационной базы перерыв в работе пользователей может быть достаточно велик, что не всегда приемлемо.")
2. у человека - НЕ штатный бэкап, а именно перенос из релиза в релиз с изменением версии формата хранения. для которого используемый им метод и применим, и "поддерживается".
поддержка постгри кроссплатформенного переноса базы - это плюшка "параллельная", не пересекающаяся с описанной задачей. она есть - Ок, но как она если при этом еще и движок 1с меняется (который в том числе также может коснуться структуры на низком уровне)?..
ну т.е. - штатный механизм, для которого и обещана поддержка, и область применения соответствует - не работает как обещано, значит надо прежде всего думать почему так и как исправить именно это. а уж далее способы продвинутого серверного администрирования - это уже "далее", а не растопырив пальцы и презрительно выпячивая нижнюю губу на штатные методы.
56 Kassern
 
14.01.22
14:53
(55) одно дело, когда человек проблему решил и пытается разобраться, что способствовало ее появлению, другое дело, когда человек сидит со старой платформой и никуда свою дт воткнуть не может с кучей ошибок, а на подсказки решения проблемы разворачивания бекапа через инструмены скуля получили ответ - мол сложно для админа...Никто тут губу с пальцами не растопыривает, тут человек не с файловой на скуль переходит и не с постгри на ms sql, а всего лишь пытается развренуть на другом серваке свою базу, но почему-то сразу пытается на новую платформу.
57 Dmitrii
 
гуру
14.01.22
14:54
(52) Можете и дальше обижаться словно девочка. Дело Ваше.
Просто никто никогда так не делает.

А то что вы там получаете какую-то невозможность - ваши личные фантазии. Уже миллион раз обсуждалось, что dt - это не архив. В клиент-серверном варианте есть прямые рекомендации вендора - делать выгрузку средствами СУБД.

А утверждения вашего сисадмина про то что "...у postgresql c этим проблемы" звучат мало убедительно.
Разделите задачи обновления платформы и обновления СУБД и проблемы не будет.

Есть четкие описания порядка обновления платформы от 1С. Ни в одном из них нет упоминания о выгрузке/загрузке через dt.
Есть четкие описания обновления версии СУБД от Postgre. И (неожиданно) в них тоже нет никаких упоминаний о каких-то загрузках сторонними приложениями (1С) из файлов непонятного происхождения (с точки зрения СУБД).

До сих пор ни одного явного доказательства, что проблема именно в 1С, а не на стороне СУБД, ОС или на стеке , так и не прозвучало.
Если ваш dt успешно можно загрузить на той же версии платформы и той же версии СУБД, откуда он был выгружен, то абсолютно никаких оснований обвинять в чем-то 1С я не вижу. Можете и дальше печалиться, сокрушаться, расстраиваться или что вы там ещё делаете вместо того чтобы нормально работать.
58 МихаилМ
 
14.01.22
15:22
(57)Достаточно заменить постгре на мс скл и Ваши рассуждения теряют смысл совсем.
59 Kassern
 
14.01.22
15:24
(58) а что не так с мс скл?
60 МихаилМ
 
14.01.22
15:37
(0)Вам надо локализовать ошибку с точностью до записи таблицы.
но сначала с точностью до таблицы.
для этого можно настроить тж и выяснить инyтрукции выполненные до ошибки.( экстенсивный долгий путь)
либо сгенерировать "маленькую" бд с 1к записей в каждой не служебной таблице  и загрузить её(тк бд маленькая - загрузка быстрая).
если ошибка повториться , то (бысто) её проанализировать с помощью тж. ошибка скорее всего в служебных таблицах.
иначе
сгенерировать огромное кол-во выгрузок (dt) с несколькими таблицами . чтобы выяснить на какой таблице происходит ошибка.
61 ansh15
 
14.01.22
15:47
Месяц назад обновлял платформу с 14-й на 20-ю, снес полностью каталог кластера 1С. ЖР можно сохранить, если нужны.
Выгруженные в dt из 14-й базы прекрасно загрузились в 20-ю, даже совсем старая бухгалтерия бюдж. уч., которой 12 лет и с 8.2 совместимость. Проработало все это время без нареканий.
PostgreSQL тоже менялся, с 11-й редакции на 13-ю. Ничего не екнуло.
62 ansh15
 
14.01.22
15:48
>>очень сильно переписанная база
Такого, конечно, у нас нет.
63 Dmitrii
 
гуру
14.01.22
15:54
(58) Не вижу связи. Или вы тоже балуетесь обновлением MS SQL через dt с одновременной сменой версии платформы? Ну вот честно.
Если вдруг возникает задача смены СУБД, то мало кто станет рисковать и совмещать это с обновлением платформы.
Либо платформу обновят сначала и выполнят полное ТИИ с реструктуризациями и пересчетам итогов, а только потом будут выгружать в dt и загружать на новой СУБД.
Либо наоборот - сначала перенос на новую СУБД и потом обновление платформы.
Зачем нужно скакание на граблях - для меня лично загадка. Трата ресурсов на расследование "проблемы" в условиях, когда нормально работает выгрузка/загрузка на старой версии платформы с последующим её обновлением, тоже вызывает вопросы. Разве что чисто академический интерес для получения ответа, не имеющего почти никакой практической ценности. Для общего развития так сказать.