Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Time-out occurred while waiting for buffer latch type 3 for page (1:2204356), database ID  [new]
biolog1
Member

Откуда:
Сообщений: 2
Добрый день

Третий месяц "борюсь" с ошибкой
Time-out occurred while waiting for buffer latch type 3 for page (1:2204356), database ID 14. (Microsoft SQL Server, Error: 845)
Возникает при бэкапе.

Последнее, что удалось с ней сделать - DBCC CHECKDB с результатами
CHECKDB found 0 allocation errors and 3 consistency errors in database 'WWWBron'.
repair_rebuild is the minimum repair level for the errors found by DBCC CHECKDB (WWWBron).
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Сразу после этого чудесным образом удалось сделать бэкап и шринк.
На следующие сутки снова ошибка бэкапа.

CHECKDB в режиме repair_rebuild выполнялся 3 суток, после чего пришлось его отменить.

Рестарт сервера не помогает, после рестарта (каждого) эта база в состоянии "in recovery", из которого выходит за 2-4 часа.

Пытаюсь понять какой процесс блокирует, инфа из sysprocess
spid kpid blocked waittype waittime lastwaittype waitresource dbid uid cpu physical_io memusage login_time last_batch ecid open_tran status sid hostname program_name hostprocess cmd nt_domain nt_username net_address net_library loginame context_info sql_handle stmt_start stmt_end request_id
15 3740 27 0x0033 36231 PAGELATCH_UP 14:1:2204356 14 1 31 1 0 21.12.2011 23:18 21.12.2011 23:18 0 0 background 0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 CHECKPOINT sa 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0x0000000000000000000000000000000000000000 0 0 0

При попытке kill процесса 15 естественно пишет что он системный

Размер базы Дата - 100 Гб, Лог - 400 гб

Система W2008 R2 Enterprise 2*Xeon 5620 2.4 Ghz, RAM 48 Gb, 4*SAS Raid1 500 Gb
Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64) Jul 9 2008 14:17:44 Copyright (c) 1988-2008 Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )

Помогите пж. идеями, что еще попробовать?

В схожих темах ничего не нашел https://www.sql.ru/forum/actualthread.aspx?tid=597507
26 дек 11, 12:59    [11825931]     Ответить | Цитировать Сообщить модератору
 Re: Time-out occurred while waiting for buffer latch type 3 for page (1:2204356), database ID  [new]
biolog1
Member

Откуда:
Сообщений: 2
Хэппиэнд оказался до скучного банален

В ночь с 1 на 2 января, когда нагрузка на сервер была близкой к 0 выполнил следующие действия

1. Зашедулил проверку дисков, перегрузил сервак

2. Остановил все джобы и заоффлайнил другие базы

3.
alter database [DbName] set single_user with rollback immediate
go
DBCC CHECKDB([DbName], REPAIR_REBUILD)
go
alter database [DbName] set multi_user
go

проверка прошла быстро, CHECKDB fixed 0 allocation errors and 272 consistency errors in database

после этого все заработало в нормальном режиме.

4. В процессе пользовался классным скриптом, показывающим процент выполнения проверки

SELECT
r.[session_id],
c.[client_net_address],
s.[host_name],
c.[connect_time],
[request_start_time] = s.[last_request_start_time],
[current_time] = CURRENT_TIMESTAMP,
r.[percent_complete],
[estimated_finish_time] = DATEADD
(
MILLISECOND,
r.[estimated_completion_time],
CURRENT_TIMESTAMP
),
current_command = SUBSTRING
(
t.[text],
r.[statement_start_offset]/2,
COALESCE(NULLIF(r.[statement_end_offset], -1)/2, 2147483647)
),
module = COALESCE(QUOTENAME(OBJECT_SCHEMA_NAME(t.[objectid], t.[dbid]))
+ '.' + QUOTENAME(OBJECT_NAME(t.[objectid], t.[dbid])), '<ad hoc>')
FROM
sys.dm_exec_requests AS r
INNER JOIN
sys.dm_exec_connections AS c
ON r.[session_id] = c.[session_id]
INNER JOIN
sys.dm_exec_sessions AS s
ON r.[session_id] = s.[session_id]
CROSS APPLY
sys.dm_exec_sql_text(r.[sql_handle]) AS t
WHERE
r.[percent_complete] <> 0;
10 янв 12, 10:50    [11877141]     Ответить | Цитировать Сообщить модератору
 Re: Time-out occurred while waiting for buffer latch type 3 for page (1:2204356), database ID  [new]
step_ks
Member

Откуда:
Сообщений: 936
а сервиспаки накатить все равно не помешало бы.
10 янв 12, 11:53    [11877536]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить