Недостаточно кэша процедур для запуска этой процедуры, Sybase ASE, C#
-
28-09-2019 - |
Вопрос
У меня возникла небольшая проблема с загрузкой файла ~ 50meg в базу данных.К сожалению, и прежде чем мы спросим, зачем я это делаю, мне нужно добавить эту функцию для устаревших целей.Столбец настроен как тип Изображение это означает, что я, к сожалению, не могу загружать данные порциями и объединять их (поскольку sybase не разрешает это для столбцов типа изображения)
В настоящее время я создаю свой параметр из DbProviderFactory, используя DbType.Binary.Я пробовал другие типы, но ничего не помогает.
Я получаю следующую ошибку:
Недостаточно кэша процедур для запуска этой процедуры, триггера или пакета SQL.Повторите попытку позже или попросите ваш SA перенастроить ASE с дополнительным кэшем процедур.
Кэш процедур на сервере установлен равным 100meg.
Дополнительная информация:
- Это работает с файлами размером ~ 35 мегабайт
- Старый код (написанный на PB) использует UPDATEBLOB, и он работает там.
Есть какие-нибудь предложения?
Решение
100 МБ кэша процедур - это довольно мало.Особенно, если у вас есть одна процедура, которая, как вы знаете, займет более 50 МБАЙТ.Это общий кэш процедур для всего экземпляра базы данных, а не для каждого сеанса или для каждой процедуры.
Я бы посоветовал вам увеличить размер кэша ваших процедур.