|
|
|
Непонятное поведение при прерывании Retieve'a
|
|||
|---|---|---|---|
|
#18+
Уважаемые коллеги, вот пришла беда. Всегда использовал схему прерывания Retrieve'а и проблем не было. Однако случилось. Окружение: OS: Windows XP 2002 SP 2 PB: Enterprise 9.0.3 Build 8836 DBMS: Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) May 3 2005 23:18:38 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2) PB Driver: Native MSS Microsoft SQL Server Задача: Прервать Retrieve Есть окно. На окне лежит кнопка (cb_stop), datawidow (DW) и st_row В DW есть аттрибуты: boolean ib_STOP и time it_Start Далее код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. В DW кладу 'легкий' запрос Select ... from Table1 Table1 'узкая' таблица 100,000 записей Вызываю Retieve, нажимаю cb_Stop. Retrieve прерывается, управление передается приложению. Все идет в штатном режиме, как и ожидалось. В DW кладу 'тяжелый' запрос ( select ... from ... left Join, ... group by ...) Без прерывания Retrieve отрабатывает за 20 сек., возвращая 7000 записей. Повторяю вызов. На 200ой записи нажимаю cb_Stop. Приложение зависает. Счетчик записей (st_row) не обновляется. FETCH не идет (смотрел по трассе ) Через 19 сек. все отмирает. MessageBox выдает, что получено 200 записей за 19 секунд. Создается впечатление, что не смотря на прерывание Retrive'a, сервер продолжает выполнять запрос, хотя клиент уже не читает recordset. Вопрос: Как победить эту ситуацию или, хоть понять, что происходит. Заранее спасибо за любые отклики. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2008, 12:02 |
|
||
|
Непонятное поведение при прерывании Retieve'a
|
|||
|---|---|---|---|
|
#18+
Аффтор жжот ) обсуждалось ранее, поиск рулит ;), самому искать в падлу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2008, 12:36 |
|
||
|
|

start [/forum/topic.php?fid=15&fpage=46&tid=1336763]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
76ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 425ms |

| 0 / 0 |

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