|
|
|
all threads are blocked
|
|||
|---|---|---|---|
|
#18+
Добрый день, коллеги :) Подскажите, кто как исправил ошибку sybase : all threads are blocked. В доке написано, что она связана с тем, что я читаю или пишу, а кто-то другой заблокировал эти данные. Но программа работала на протяжении нескольких лет и сейчас база вообще юзается несколькими сервисами. Поэтому предположил 1) что кто-то запустил что-то новое на серваке (маловероятно) ИЛИ 2) уменьшили кол-во потоков. читал про опцию THREAD_COUNT. Но не могу найти ее и как изменить. стоит ASA Anywhere 12 СПАСИБО. p.s. параллельно сейчас конвертирую log файл dbtran может там что-то увижу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2014, 10:59 |
|
||
|
all threads are blocked
|
|||
|---|---|---|---|
|
#18+
Все доброго дня см. параметры запуска dbsrv -gt -gtc но может оказаться так что это НЕ поможет ... если на сервер существенно выросла нагрузка и количество допустимых коннектов не лимитировано (ну например вы указали при установке 10000 коннектов) то изучайте куда девается "процессорное время" .. короче оптимизируйте процедуры, запросы и тд. и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2014, 15:33 |
|
||
|
all threads are blocked
|
|||
|---|---|---|---|
|
#18+
_Drive_, переписал работу с таблицами в процедуре. Заменил на заполнение временной таблицы и работой уже с ней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2014, 12:15 |
|
||
|
all threads are blocked
|
|||
|---|---|---|---|
|
#18+
Доброго дня, Проанализируйте время исполнения всех операторов (или блоков) процедуры. Я например делал так: declare iExecTime integer; declare dt datetime; set dt = now(); insert into ... select .... set iExecTime = datediff(millisecond, dt, now()); set dt = now(); message '(',@@spid,') usp_myproc:: 1 exec time ',iExecTime,' ms' to console; create index ... on ...(...) update ... set ... from ... set iExecTime = datediff(millisecond, dt, now()); set dt = now(); message '(',@@spid,') usp_myproc:: 2 exec time ',iExecTime,' ms' to console; select ..... from ... where ... set iExecTime = datediff(millisecond, dt, now()); set dt = now(); message '(',@@spid,') usp_myproc:: 3 exec time ',iExecTime,' ms' to console; В результате выявлялся кусок на который тратится больше всего времени ... вот его и оптимизируешь. PS: у нас больше всего съедало времени - insert into proxy_table ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2014, 11:38 |
|
||
|
|

start [/forum/search_topic.php?author=Barbarian&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
| others: | 488ms |
| total: | 758ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...