(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Причина ошибки Timeout expired при загрузке файла, база на SQL Server 2008

Источник: dvprofessionals
Михаил Захаров

База данных внутреннего сервера DocsVision переводилась на новую машину. С Microsoft SQL Server 2005 32bit на Microsoft SQL Sever 2008 64 bit.
После перевода обнаружено следующее поведение. При добавлении файла любого размера в карточку возникает ошибка Timeout expired.

В журнале StorageServer фиксировалась следующая ошибка:

StorageServerRuntime Error: 0 : Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. Method name: StorageServer.FileWrite

Больше никаких ошибок в журналах DocsVision, и в системных журналах ОС не было. С производительностью сервера так же было все в порядке.

Детальное исследование нашим разработчиком показало, что вызов команды, которая выполняет загрузку бинарных данных в таблицу dvsys_binaries выполняется очень долго (несколько минут).

Внедряйте СЭД DocsVision с меньшими затратами! Компания "Интерфейс" совместно с DocsVision предлагает специальные условия по внедрению системы электронного документооборота (СЭД) DocsVision. Подробнее "

С помощью административных представлений (Dynamic Management Views) sys.dm_tran_active_transactions, sys.dm_exec_requests и sys.dm_exec_sql_text было обнаружено, что SQL Server дополнительно запускает следующий запрос:

SELECT StatMan([SC0], [LC0]) FROM ( SELECT TOP 100 PERCENT CONVERT([varbinary](200), SUBSTRING([Data], 1, 100)++ SUBSTRING([Data], CASE WHEN LEN([Data])<=200 THEN 101 ELSE LEN([Data])-99 END, 100) ) AS [SC0] ,DATALENGTH([Data]) AS [LC0] FROM [dbo].[dvsys_binaries] WITH (READUNCOMMITTED) ORDER BY [SC0] ) AS _MS_UPDSTATS_TBL

Эта команда получает первые и последние 100 байт из Data в колонку SC0, длину Data в колонку LC0 для каждой записи в dvsys_binaries, потом направляет полученные данные в функцию StatMan. Это крайне неэффективный запрос, он приводит к перечитыванию большого количества данных (в нашем случае это 11Гб). Осталось неясным, почему SQL Server 2008, при выполнении команды частичного обновления данных в BLOB-колонке для одной записи (указана по первичному ключу), запускает такой длительный запрос для анализа статистики.

Чтобы обойти проблему была выполнена команда:

EXEC sp_dboption 'MyBase', 'auto create statistics', 'false'

В результате отключено автоматическое создание статистики для нашей базы данных MyBase.

В процессе исследования проблемы были внесены следующие изменения:

1. Указан FILEGROWTH=100Mb - был 1 Мб. Столь малый показатель приводит к частым операциям по увеличению объема базы (дорогостоящая операция) и повышает общую фрагментированность данных.

2. Указан режим совместимости COMPATIBILITY_LEVEL = 100 - совместимость с форматом SQL Server 2008

Результат. Если после перевода базы на SQL Server 2008 появляется ошибка превышения таймаута при загрузке файла (создании карточки файла), то попробуйте отключить ведение статистики.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 18.03.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
ABBYY Lingvo x6 Многоязычная Профессиональная версия, электронный ключ
Oracle Database Standard Edition 2 Named User Plus License
EMS Data Export for PostgreSQL (Business) + 1 Year Maintenance
Oracle Database Personal Edition Named User Plus Software Update License & Support
Zend Studio Commercial License 1 Year Free Upgrades
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Мастерская программиста
Компьютерная библиотека: книги, статьи, полезные ссылки
Corel DRAW - от идеи до реализации
Краткие описания программ и ссылки на них
ЕRP-Форум. Творческие дискуссии о системах автоматизации
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Как в IBM Rational DOORS сделать заголовки не жирным шрифтом? (3)
Измучился уже, когда идет иерархия уровнем ниже, чем Х.Х., мне нужно, чтобы заголовки не...
 
проблемы с установкой Rational Rose Enterprise Edition (11)
Привет! Есть проблема, прошу совета. Скачал с rational.com Rational Rose Enterprise Edition,...
 
Бесплатные видео-уроки по работе в AutoCAD (3)
Бесплатные видео-уроки по работе в AutoCAD http://store.techcourses.ru/ad/152929/
 
помогите Config spec ClearCase (2)
Добрый день! Мальчики, пожалуйста, объясните для блондинки, очень силюсь понять, но...
 
Настройка e-mail уведомлений. Аутентификация (1)
Добрый день! Надеюсь на вашу помощь в поиске решения моей проблемы. Не получается настроить...
 
 
 



    
rambler's top100 Rambler's Top100