|
подвисает запрос
|
|||
---|---|---|---|
#18+
решил как-то воспользоваться отрубом продолжительного запроса для Firebird 3 попробовал использовать для этого пользовательские переменные, аналогично генераторам. не выходит. Фетч конечно приостанавливается, но на этом зависает. Пробовал IBExpert, так и IBX: Для начала стартую: SELECT RDB$SET_CONTEXT('USER_SESSION','D1363D9B6BA947ADB970E802E2380960','1') FROM RDB$DATABASE SELECT * FROM BIG_TABLE WHERE RDB$GET_CONTEXT('USER_SESSION','D1363D9B6BA947ADB970E802E2380960')='1' И завершаю: SELECT RDB$SET_CONTEXT('USER_SESSION','D1363D9B6BA947ADB970E802E2380960','0') FROM RDB$DATABASE ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 11:40 |
|
подвисает запрос
|
|||
---|---|---|---|
#18+
guestnewguest, нафига придумывать всякую ерунду если есть штатное средство delete from mon$statements? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 11:41 |
|
подвисает запрос
|
|||
---|---|---|---|
#18+
Симонов Денис, ну т.е. это стандартное поведение? фича? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 11:52 |
|
подвисает запрос
|
|||
---|---|---|---|
#18+
guestnewguest, какая фича? Таблицы мониторинга эта штатная фича. Есть ещё асинхронный отмен оператора через API ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 11:59 |
|
подвисает запрос
|
|||
---|---|---|---|
#18+
guestnewguestSELECT * FROM BIG_TABLE WHERE RDB$GET_CONTEXT('USER_SESSION','D1363D9B6BA947ADB970E802E2380960')='1' И завершаю: SELECT RDB$SET_CONTEXT('USER_SESSION','D1363D9B6BA947ADB970E802E2380960','0') FROM RDB$DATABASE Дай угадаю: ты "завершающий" запрос посылаешь в другом потоке?.. Тупо прекратить фетчить и закрыть запрос - путь не для самураев? Для вызова fb_cancel нужен программист, а под рукой ни одного нет?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 13:57 |
|
подвисает запрос
|
|||
---|---|---|---|
#18+
guestnewguestну т.е. это стандартное поведение? Чудак, у Firebird ни оптимизатор, ни тем более рантайм не умеют constant expression elimination. То, что ты установил переменную, проверяемую во WHERE, не остановит запрос. Он будет продолжать шерстить всю таблицу, просто перестанет отдавать найденное. И ты мог бы и сам об этом догадаться если бы задействовал мозг вместо копипаста: трюк с генератором не отменяет запрос, а осуществляет выход из цикла, поскольку используется исключительно в PSQL. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2018, 14:13 |
|
|
start [/forum/search_topic.php?author=MaksimKlyu&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
others: | 785ms |
total: | 947ms |
0 / 0 |