Имя: Пароль:
1C
 
При помещении во временное хранилище - ошибка при обращении к серверу
↓ (Волшебник 21.08.2024 14:27)
0 RomaH
 
20.08.24
14:13
Обработка "СкрытиеКонфиденциальнойИнформации"

там дерево метаданных помещается во временное хранилище на сервере


и вот если дерево очень большое, то ...
если в режиме отладки - т.е. не через фоновое задание, то при первом обращении с клиента на сервер падает с ошибкой

(там есть команда - в коде вызывается серверная процедура с контекстом - падает на вызове процедуры)

Параметр сеанса отсутствует или удален ID=(ГУИД) ... Prm...File...

Если через длительные операции - то просто возвращает неопределено из временного хранилища


Обработка типовая, рабочая
На другом сервере 1С работает
Если ограничить помещаемое дерево - то тоже работает (например только документы, или справочники - по одиночке отрабатывает, а оба сразу - нет)

Что может быть?
1 Мультук
 
20.08.24
14:14
(0)
>> если в режиме отладки

Конфигуратор/клиент в режиме 32 бит ?



P.S.
Сервис 1С 32 бит ?
2 RomaH
 
20.08.24
14:16
64x - все в C:\Program Files\1cv8\\bin
3 lEvGl
 
20.08.24
14:25
может памяти просто не хватает?
4 RomaH
 
20.08.24
14:28
память 23 из 60
5 lEvGl
 
20.08.24
14:32
а до помещения ДЗ в ВХ
аа это дерево метаданных.. есть такой объект, да?
6 RomaH
 
20.08.24
14:41
(5) родишься баобабом...
дерево метаданных читается и в дерево значений пишется, потом ДЗ помещается во временное хранилище
7 lEvGl
 
20.08.24
14:46
(6)
родишься баобабом...

и будешь всех такими же считать

писать нормально надо, чтобы было понятно, что ты вобще адекватен в своих действиях. С деревьями, хранилищами или еще чем то
8 H A D G E H O G s
 
20.08.24
15:05
В старых релизах платформы можно было помещать в ВХ не больше 1 Гб вроде. Какой релиз?
9 lEvGl
 
20.08.24
15:15
(8) у него при следующем обращении к серверу краш происходит
Параметр сеанса отсутствует или удален

после этих движений серверный процесс типа валится что ли, как минимум неадекватно себя ведет. Ну может это из за превышения размера, если при этом платформа штатного исключения не гененерит и пускает дальше на авось, как получится
10 arsik
 
20.08.24
15:48
Ну может у тебя ограничение в настройках сервера
Тут у тебя что стоит?
11 RomaH
 
20.08.24
17:10
(10) - аналогично - по умолчанию
12 RomaH
 
20.08.24
17:10
(8) 8.3.24.1368
13 Garykom
 
20.08.24
20:15
(0) Передача между клиентом и сервером (и обратно) файлов больше 1 гига - приводит к их побитию
Тестил на архивах, прилетают битые
14 Garykom
 
20.08.24
20:17
(13)+ На любых версиях платформы
Точнее от 1 гига вероятность что будут ошибки превышает 50%
2 гига и более - 100%
15 RomaH
 
20.08.24
20:16
(13) но! на другом сервере работает
16 Garykom
 
20.08.24
20:18
(15) Это пока размер/объем еще не увеличился ))
17 RomaH
 
20.08.24
20:18
и наврятли ДЗ с деревом метаданных выйдет в 1ГБ
и тут не файл передается - ДЗ помещается во временное хранилище - и все

дальше - если это было в том же сеансе - я возвращаю на клиента адрес
а потом просто с клиента вызываю серверную процедуру - и ... падает

если в другом (фоновое) - то не падаю, но получить из временного по этому адресу - получаю неопределено
18 RomaH
 
20.08.24
20:21
можно поэксперементировать, конечно, с файлом, что бы объем выяснить точный
19 lEvGl
 
20.08.24
20:25
да с паматью дела)
что то про сериализацию было
20 RomaH
 
20.08.24
20:25
(19) еще раз - это ТИПОВАЯ обработка, она РАБОТАЕТ с этой же конфой, но на другом сервере

она работает с этой же конфой на этом сервере (где падает) но с меньшим объемом

Справочники+Документы - работает
Справочники+Документы+РегистрыСведений - падает
Справочники+РегистрыСведений - работает
21 lEvGl
 
20.08.24
20:28
это ТИПОВАЯ обработка, она РАБОТАЕТ с этой же конфой, но на другом сервере

100 пудов в конкретной машине дело
22 RomaH
 
20.08.24
20:29
а вот что на машине может быть такого что бы вот?
23 lEvGl
 
20.08.24
20:51
Примечание. Объем данных, перемещаемых между клиентом и сервером, за один вызов метода ПоместитьВоВременноеХранилище(), не должен превышать 4 Гбайт (в сериализованном виде).

Внимание! При помещении во временное хранилище фактическая сериализация значения не выполняется. Помещается ссылка на значение, которое хранится в кеше в течение 20 минут. По истечении этого периода значение сериализуется, записывается на диск (в хранилище сеансовых данных) и удаляется из кеша.

это к 8.3.13. Ну там писанины немало, что то из обозначенного
зы. а может как всегда кэш что нибудь не такой? + свап какой нибудь, + файловая система или права или еще чего, вариантов миллион
24 lEvGl
 
20.08.24
20:50
При использовании системы требуется некоторое место в файловой системе, где можно хранить различные файловые данные, которые с одной стороны являются временными, а с другой ‑ должны храниться достаточно длительное время. К таким файлам можно отнести черновики для систем управления документооборотом, внешние компоненты, работающие на стороне клиентского компьютера и т. д.

///////////////////////

В механизме работы с временным хранилищем есть возможность передать данные из фонового задания в сеанс, инициировавший фоновое задание. Для такой передачи следует в родительском сеансе поместить во временное хранилище пустое значение (с помощью метода ПоместитьВоВременноеХранилище()), указав какой-либо идентификатор создаваемого временного хранилища (параметр Адрес). Затем полученный адрес передать в фоновое задание через параметры фонового задания. Далее, если в фоновом задании этот адрес использовать в качестве значения параметра Адрес метода ПоместитьВоВРеменноеХранилище(), то результат будет скопирован в сеанс, из которого было запущено фоновое задание.

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

и т д и т д
25 Garykom
 
20.08.24
20:54
(18) Угу
На том сервере где работает, попробуй дерево метаданных в 10 раз увеличить дублированием/копированием

Либо большой файлик с диска во временное хранилище помещать
С проверкой его хеша до и после
26 RomaH
 
21.08.24
14:18
в общем перезагрузка агента сервера 1с помогло...
27 Волшебник
 
21.08.24
14:27
(26) Дурдомите...
Закон Брукера: Даже маленькая практика стоит большой теории.