Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
Добрый день!

База просто перестала работать...
Даже простой запрос:
SELECT * FROM Schet WHERE schlID = -9223372036853715322;

(запрос должен вернуть меньше 10 строк) приводит к зависанию. В Activity Monitor запрос идёт со статусом LCK_M_S.
Сейчас с базой работает 1 клиент, хотя до этой ситуации было более 500 клиентов.

Как с это можно побороть? Куда смотреть?


PS. Microsoft SQL Server 2016 (SP1-CU2) (KB4013106) - 13.0.4422.0 (X64) Mar 6 2017 14:18:16 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: ) (Hypervisor)
10 апр 17, 14:06    [20385008]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay,

кто-то не закрыл транзацкию
10 апр 17, 14:08    [20385020]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
TaPaK,

Как можно узнать? Сервер SQL перезагружал
10 апр 17, 14:09    [20385032]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay,
если перезагружали, для начала DBCC CHECKDB WITH NO_INFOMSGS;
10 апр 17, 14:13    [20385065]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
aleks2
Guest
saszay
TaPaK,

Как можно узнать? Сервер SQL перезагружал


Если все так плохо:
0. chkdsk /F/R диск_с_базой:
1. dbcc checkdb('база')
2. sp_updatestat
3. Скока всего записей то в табличке? Терабайт?
10 апр 17, 14:13    [20385066]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
aleks2,

sp_updatestats помогло. Огромное СПАСИБО!

В таблице >1 697 000 строк.

А причина такого поведения известна? За 20 лет работы первый раз столкнулся с этим...
10 апр 17, 14:53    [20385296]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
MacaronicTragedy
Member

Откуда:
Сообщений: 99
saszay,

раз sp_updatestats помог, то очевидно, что проблема в неактуальной статистике. Ее нужно регулярно обновлять.
10 апр 17, 16:45    [20385906]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay
aleks2,

sp_updatestats помогло. Огромное СПАСИБО!

В таблице >1 697 000 строк.

А причина такого поведения известна? За 20 лет работы первый раз столкнулся с этим...

версию сервера не меняли или уровень совместимости?
10 апр 17, 17:00    [20385967]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
TaPaK,

Нечего не трогал. Только ночью обслуживание базы не запускалось, по причине проверки диска.
10 апр 17, 21:22    [20386848]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
aleks2
Guest
saszay
TaPaK,

Нечего не трогал. Только ночью обслуживание базы не запускалось, по причине проверки диска.


Дык, правильно надо формулировать: 20 лет ничо не делал, базу караулил.
11 апр 17, 05:16    [20387411]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
MacaronicTragedy,

Опять возникла такая проблема :(
Причём если раньше можно было кивать на не обновлённую статистику, то сейчас нет: ночью вся статистика обновилась MaintenancePlan и когда сегодня возникла проблема - сразу запустил
EXEC sp_updatestats
Результатов это не дало :(
Заметил проявление проблемы:
есть запрос:
SELECT SchetL.shID, schtID, IIF(SchetL.viUID IS NULL, 0, 1), schlFOplat, schlSkid
    FROM SchetL WITH(UPDLOCK, ROWLOCK, HOLDLOCK)
WHERE SchetL.ID = -92232036853715049;

он не выполняется. А запрос:
SELECT SchetL.shID, schtID, IIF(SchetL.viUID IS NULL, 0, 1), schlFOplat, schlSkid
    FROM SchetL WITH(NOLOCK)
WHERE SchetL.ID = -92232036853715049;

выполняется на 0 сек.

В чём может быть проблема?
12 апр 17, 12:07    [20393396]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
o-o
Guest
сам же выше писал, что запрос висит с LCK_M_S
так чего удивляться, что он с nolock выполняется?
надо смотреть, кто же ему не дает получить LCK_M_S
12 апр 17, 12:18    [20393501]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
o-o,

Сейчас блокировка LCK_M_U
12 апр 17, 12:19    [20393512]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay,

ну вы же сами повесили UPDLOCK вот теперь и LCK_M_U. LCK_M_U он на что просит? может эскалирует до таблицы? И вообщем-то это упирается в неверную оценку в основном из-за статистики
12 апр 17, 12:29    [20393595]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
TaPaK,

А почему "портится" статистика? Причём не у всех таблиц...
Каждый раз блокировки возникают на разных таблица.
12 апр 17, 12:33    [20393617]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay
TaPaK,

А почему "портится" статистика? Причём не у всех таблиц...
Каждый раз блокировки возникают на разных таблица.
так вопрос что вы делаете с ними, это к вопросу о статистике. auto_create_statistics включен? или сами создаёте статистики, индексы?
12 апр 17, 12:37    [20393638]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
o-o
Guest
saszay
o-o,

Сейчас блокировка LCK_M_U

что значит "сейчас блокировка"?
наложена или ждет?
что в sys.dm_os_waiting_tasks для вашей сессии?
12 апр 17, 13:10    [20393868]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
Auto Create Incremental Statistics - false
Auto Create Statistics - true
Auto Update Incremental Statistics - false
Auto Update Statistics - true

Индексы сам создаю
12 апр 17, 13:11    [20393873]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
Проблема повторилась, хотя в этот раз обслуживание базы происходило по плану...
13 июн 17, 12:23    [20560015]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay
Проблема повторилась, хотя в этот раз обслуживание базы происходило по плану...

что там dm_os_waiting_tasks
13 июн 17, 12:24    [20560020]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
wait_type
2 LCK_M_S
2 BROKER_TRANSMITTER
2 CLR_AUTO_EVENT
1 BROKER_RECEIVE_WAITFOR
1 XE_DISPATCHER_WAIT
1 SP_SERVER_DIAGNOSTICS_SLEEP
1 FT_IFTSHC_MUTEX
1 BROKER_TO_FLUSH
1 LAZYWRITER_SLEEP
1 BROKER_EVENTHANDLER
1 KSOURCE_WAKEUP
1 XE_TIMER_EVENT
1 SQLTRACE_INCREMENTAL_FLUSH_SLEEP
1 LCK_M_U
1 CHECKPOINT_QUEUE
1 BROKER_TASK_STOP
1 WAIT_XTP_HOST_WAIT
1 FT_IFTS_SCHEDULER_IDLE_WAIT
1 DIRTY_PAGE_POLL
1 HADR_FILESTREAM_IOMGR_IOCOMPLETION
1 QDS_PERSIST_TASK_MAIN_LOOP_SLEEP
1 LOGMGR_QUEUE
1 ONDEMAND_TASK_QUEUE
1 REQUEST_FOR_DEADLOCK_SEARCH
1 XTP_PREEMPTIVE_TASK
1 QDS_ASYNC_QUEUE
13 июн 17, 12:31    [20560042]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay,

какое из них ваше угадать? session_id отфильтруйте
13 июн 17, 12:35    [20560054]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
TaPaK,
session_id, wait_duration_ms, wait_type

1 29 LOGMGR_QUEUE
2 60 DIRTY_PAGE_POLL
3 126 LAZYWRITER_SLEEP
4 1951780 KSOURCE_WAKEUP
5 2763 REQUEST_FOR_DEADLOCK_SEARCH
6 1955363 BROKER_TRANSMITTER
7 1957400 WAIT_XTP_HOST_WAIT
9 482 SQLTRACE_INCREMENTAL_FLUSH_SLEEP
10 158459 SP_SERVER_DIAGNOSTICS_SLEEP
12 1927132 ONDEMAND_TASK_QUEUE
13 1956709 FT_IFTSHC_MUTEX
14 19796 CHECKPOINT_QUEUE
22 347032 BROKER_EVENTHANDLER
23 1955363 BROKER_TRANSMITTER
24 841 SLEEP_TASK
25 498 HADR_FILESTREAM_IOMGR_IOCOMPLETION
27 1997 XE_TIMER_EVENT
28 8496 XE_DISPATCHER_WAIT
39 3153 BROKER_TASK_STOP
13 июн 17, 12:52    [20560100]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
saszay,

ну теперь скажите какой же ид вашей сессии которая висит
13 июн 17, 12:53    [20560106]     Ответить | Цитировать Сообщить модератору
 Re: Проблема работы с базой  [new]
saszay
Member

Откуда: Тольятти
Сообщений: 454
Опять чудеса - начало опять всё нормально работать
13 июн 17, 14:21    [20560552]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить