Недостаточно кэша процедур для запуска этой процедуры, Sybase ASE, C#

StackOverflow https://stackoverflow.com/questions/3064834

  •  28-09-2019
  •  | 
  •  

Вопрос

У меня возникла небольшая проблема с загрузкой файла ~ 50meg в базу данных.К сожалению, и прежде чем мы спросим, зачем я это делаю, мне нужно добавить эту функцию для устаревших целей.Столбец настроен как тип Изображение это означает, что я, к сожалению, не могу загружать данные порциями и объединять их (поскольку sybase не разрешает это для столбцов типа изображения)

В настоящее время я создаю свой параметр из DbProviderFactory, используя DbType.Binary.Я пробовал другие типы, но ничего не помогает.

Я получаю следующую ошибку:

Недостаточно кэша процедур для запуска этой процедуры, триггера или пакета SQL.Повторите попытку позже или попросите ваш SA перенастроить ASE с дополнительным кэшем процедур.

Кэш процедур на сервере установлен равным 100meg.

Дополнительная информация:

  1. Это работает с файлами размером ~ 35 мегабайт
  2. Старый код (написанный на PB) использует UPDATEBLOB, и он работает там.

Есть какие-нибудь предложения?

Это было полезно?

Решение

100 МБ кэша процедур - это довольно мало.Особенно, если у вас есть одна процедура, которая, как вы знаете, займет более 50 МБАЙТ.Это общий кэш процедур для всего экземпляра базы данных, а не для каждого сеанса или для каждой процедуры.

Я бы посоветовал вам увеличить размер кэша ваших процедур.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top