Имя: Пароль:
1C
1С v8
Недостаточно памяти при определении формата картинки
0 fantomrik
 
05.10.18
09:07
Коллеги, привет!
У клиента УТ 10.3 и выгрузка через типовой модуль битрикс на сайт.
В момент определения определенной картинки (Картинка.Формат()) у конкретной номенклатуры выскакивает ошибка "Недостаточно памяти", нажимаешь "ок" и 1с закрывается.
Если в предприятии перейти в файлы, на 2х картнках номенклатуры все ок, при попытке посмотреть 3-юю такая же ситуация.

Смущает что определение формата через попытку проиходит, но все равно вылетает 1С, что можно попробовать?
Пробовал через Картинка.Записать(имя.tmp) записать эту картинку- файл создается, не вылетает при записи.


Картинка = ХранилищеСсылка.Хранилище.Получить();
    
Если ТипЗнч(Картинка) <> Тип("Картинка") Тогда
    Возврат Результат;
КонецЕсли;
    
ФорматКартинкиРазрешен  = Истина;
РасширениеФайлаКартинки = "";

Попытка
    ФорматКартинкиОбъекта = Картинка.Формат();
Исключение
    ФорматКартинкиОбъекта = ФорматКартинки.НеизвестныйФормат;
КонецПопытки;


8.3.8.2197
1 fantomrik
 
05.10.18
09:09
p.s. платформа 8.3.8.2197, ут 10.3.33.1 допиленная, код по выгрузке Битрикс - типовой.
2 Cool_Profi
 
05.10.18
09:09
Попробуй грохнуть эту картинку, сделать тии и заново поставить туда картинку.
3 fantomrik
 
05.10.18
09:18
(2) 15000 номенклатуры, 1 такую картинку нашёл за 6 часов почти методом тыка. Но есть и другие, я с ума сойду все искать так, надо обходное решение какое то
4 Cool_Profi
 
05.10.18
09:19
(3) Цикель написать с получением картинок - 15 минут.
Работать он будет ну пару часов.
5 fantomrik
 
05.10.18
09:23
(4) как я цикелем узнаю на каких картинках падает? Или удалить 15000*3 картинок и сказать клиенту, они вам не нужны)?
6 fantomrik
 
05.10.18
09:24
(4) понял мысль, пробовать формат () и если падает, наша говнокартинка, которую надо удалить
7 fantomrik
 
05.10.18
09:28
А есть ещё варианты? Прошлый запарный, логировать надо все так как при ошибке 1с закрывается и надо открывать и заного запускать
8 Cool_Profi
 
05.10.18
09:35
(7) Логирование - это наименьшее зло в твоей проблеме
Три-4 строчки и всё
9 fantomrik
 
05.10.18
09:40
(8) Спасибо, пошел писать обработку)

Наверно, еще как вариант платформу можно обновить попробовать, обидно что вылетает в попытке а не падает в исключение данная ситуация. Но обновление может и не помочь
10 НЕА123
 
05.10.18
09:43
почитай
Интересный баг платформы 8.3 при работе с картинками

zip. очень похоже.
11 vova1122
 
05.10.18
09:47
А если посмотреть "внутренности" проблемной и обычной картинки. Есть отличие? Может так будет проще выявить все такие картинки.
12 fantomrik
 
05.10.18
09:59
(10) что именно и где почитать?

(11) а как именно посмотреть внутренности? Если проблемную картинку сохранить - открывается она нормально. Я думал будет битый файл, но нет, открылась.
13 vova1122
 
05.10.18
10:01
(12) я имею ввиду посмотркть ХЕХ редактором
14 НЕА123
 
05.10.18
10:04
15 fantomrik
 
05.10.18
10:19
(13) внутри вроде похожи

(14) Интересно спасибо, жаль не помогает в решении проблемы

ночью попробую сделать тестирование и исправление, если оно не поможет, сделаю (6)
16 fantomrik
 
05.10.18
10:25
(13) Кстати, при сохранении картинки в файл (на которой падает при попытке получить Формать()), сам файл номрально открывается как jpeg. Визуально обычная картинка 200кб ни чего криминального.
17 fantomrik
 
06.10.18
10:03
В продолжении эпопеи...

Взял одно фото, на котором у меня ошибка "Недостаточно памяти" при обращении и загрузил его в другу базу УТ так же в справочник "Хранилище дополнительной информации". При попытке открыть в справочнике данное фото такая же ошибка. УТ версий 10.3.33.1 и 10.3.42.1, платформа 8.3.10.2667

Просто фото открывается нормально. Может в фото какая то беда но не знаю как посмотреть. Может кто глянуть, глючное фото https://yadi.sk/d/DHZCyTlpfvSxiQ норм фото https://yadi.sk/d/BUHc7bT746kZiw
18 fantomrik
 
06.10.18
10:07
Если глючное фото открыть в редакторе (я paint использовал) и не изменяя сохранить - при подгрузке в 1С ошибка проходит при его открытии...
19 Сияющий в темноте
 
06.10.18
10:27
Так сравни,что в файле поменялось.
поди,какие то поля нулевые,или наоборот,мусорные.