Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
User_132
Member

Откуда:
Сообщений: 11
Доброго всем дня. Есть сервер Windows 2003 EE x64 с установленным на нем SQL 2005. Последние два дня при шринке базы выводится сообщение:
time-out occurred while waiting for buffer latch type 4 for page (1:1427368), database ID 7. [SQLSTATE 42000] (Error 845) BACKUP LOG is terminating abnormally. [SQLSTATE 42000] (Error 3013). The step failed.

Пока удалось найти только описание решение для SQL 2000, и оно связано с установкой 2 SP. То есть, не совсем для нашей ситуации.

Кто может подсказать, куда копать?
22 сен 08, 10:03    [6211014]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Crimean
Member

Откуда:
Сообщений: 13147
а зачем делать сразу шринк + бакап лога? ну и, обычно, это сообщение говорит о неадекватном поведении оборудования - в евентлогах бы покопать
22 сен 08, 20:27    [6214860]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
somebody
Member

Откуда: Москва
Сообщений: 708
автор
buffer latch type
автор
куда копать?

Нехватка ресурсов сервера?.. Посмотрите в Performance дисковые очереди по физ. дискам.
23 сен 08, 09:07    [6215634]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Lelek
Member

Откуда:
Сообщений: 170
Здравствуйте, коллеги.

Возникла сходная ситуация на такой конфигурации:
Microsoft SQL Server 2008 R2 (SP1) - 10.50.2425.0 (X64) Apr 6 2011 21:03:25 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 5.2 <X64> (Build 3790: Service Pack 2)

Ошибка:
Msg 845, Level 17, State 1, Line 1
Time-out occurred while waiting for buffer latch type 2 for page (3:33114992), database ID 7.

Причём нельзя сказать, что сервер сильно загружен. Пока на нём выполняется только одна задача, в которой такие ошибки и возникают (в разных местах, иногда на простейших SELECT).

Поиск в сети выдаёт намёки на нехватку дисковых ресурсов или проблемы дисковой системы.

somebody
Нехватка ресурсов сервера?.. Посмотрите в Performance дисковые очереди по физ. дискам.


Посмотрел, действительно, возникают здоровые очереди, причём резкими пиками.
Админы проводят некие тесты и говорят, что диски не виноваты (цитирую: "максимальная скорость записи/чтения достигает 300 mBps, что свидетельствует о нормальном функционировании дисковой стойки")

Возникают вопросы:
1. Какова механика возникновения этой ошибки?
2. Что мешает MSSQL дождаться рассасывания очереди, вместо того, чтобы вываливать exeption?
3. В тексте ошибки фигурирует сочетание Time-out, возможно, где-то можно выставить значение какого-то параметра на неограниченное ожидание?
4. Есть одна интересная особенность дисковой системы: это пять логических дисков по 1Tb, выделенных на массиве HP EVA, объёдинённых в один том средствами Windows. Может ли такая конфигурация быть источником проблем?
16 июн 11, 16:46    [10823337]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Lelek
Member

Откуда:
Сообщений: 170
И снова здравствуйте, коллеги.

Предыдущее сообщение писал почти год назад, тогда удалось забыть о проблеме, переместившись на другое железо.
Но недавно наши серверы переехали на новую, свежекупленную стойку, и проблема снова всплыла.

Версия MSSQL изменилась:
Microsoft SQL Server 2008 (SP2) - 10.0.4000.0 (X64) Sep 16 2010 19:43:16 Copyright (c) 1988-2008 Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

Теперь была возможность потестировать на дисках с разных стоек: на одной стойке ошибки нет, на другой есть, при прочих равных условиях (изменение - переснос файла данных БД).

Из вопросов актуальны только эти:
1. Какова механика возникновения этой ошибки?
2. Что мешает MSSQL дождаться рассасывания очереди, вместо того, чтобы вываливать exeption?
3. В тексте ошибки фигурирует сочетание Time-out, возможно, где-то можно выставить значение какого-то параметра на неограниченное ожидание?
12 мар 12, 16:57    [12233400]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Glory
Member

Откуда:
Сообщений: 104751
BOL

A process was waiting to acquire a latch, but the process waited until the time limit expired and failed to acquire one. This can occur if an I/O operation takes too long to complete, usually as a result of other tasks blocking system processes. In some instances, this error may be the result of hardware failure.

User Action
Performing the following tasks may prevent this error:

- Reduce the workload.
- Verify whether there are associated I/O failures in the error log or event log. I/O failures are typically caused by disk malfunction.
- Check error log for non-yielding tasks and other critical errors.
- If critical errors such as asserts frequently occur, resolve these problems.



This message can usually be ignored; however, if you receive repeated messages where the wait time increases, it may indicate an internal server problem. Contact your system administrator. The system administrator should check the waittype, waittime, lastwaittype, and the waitresource columns of sysprocesses to see what activities each SPIDs is performing.
12 мар 12, 17:03    [12233474]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10803
Блог
Lelek,

Таймаутами неисправное железо не вылечить...
12 мар 12, 17:07    [12233520]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Lelek
Member

Откуда:
Сообщений: 170
Александр,

а что по механике возникновения ошибки?

Админы не видят никаких критических ошибок, и клянутся, что с полкой всё в порядке.
22 мар 12, 14:52    [12295658]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10803
Блог
Lelek,

Совершенно не обязательно, что виновата сама полка, есть ещё промежуточное оборудование. Нужно отслеживать все пути к файлу. Заодно обновите все дрова и фирмвари...
22 мар 12, 14:57    [12295713]     Ответить | Цитировать Сообщить модератору
 Re: SQL 2005 (timeout occurred while waiting for buffer latch type 4)  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
Погонять диски с помощью SQLIOSim, если диски будут тормозить, то в логах будут аналогичные сообщения. У нас подобное было на EVA с одним неисправным контроллером, были нерегулярные тормоза при активной работе SQL Server с дисками и при этом ошибок в логах железа не было.
22 мар 12, 15:02    [12295756]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить