прогресс выполнения

Alexus12
Дата: 24.09.2004 16:17:25
запускается долгий процесс
(update на миллион записей и т.д)
можно где-то смотреть прогресс выполнения?
как?
понятно, что пока все не отработает, изменений нет
но неужели даже админ не видит, что повисло, а что шевелится и на какой стадии?
_Nikotin_
Дата: 24.09.2004 16:42:20
Да, хороший вопрос. Я тоже как-то бился над этим вопросом, но так ничего и не нашел..... :(
Калина
Дата: 24.09.2004 17:09:58
Админ видит, шевелится или нет
micp
Дата: 24.09.2004 17:10:44
DBMS_APPLICATION_INFO
смотреть прогресс из другой сессии через v$session
Azef
Дата: 24.09.2004 17:15:14
А попробуй так
сначала узнай сколько строк тебе предстоит например вставить
затем отслеживай скоклько вставилось
select substr(sql_text,instr(sql_text,'INSERT "'),100) table_name,rows_processed
from sys.v_$sqlarea
where command_type = 2;

Только напиши потом как прошло
Калина
Дата: 24.09.2004 17:28:31
Azef
А попробуй так
сначала узнай сколько строк тебе предстоит например вставить
затем отслеживай скоклько вставилось
select substr(sql_text,instr(sql_text,'INSERT "'),100) table_name,rows_processed
from sys.v_$sqlarea
where command_type = 2;

Только напиши потом как прошло

Самое интересное, что ничего ты так не узнаешь , узнаешь только когда закончится!
Калина
Дата: 24.09.2004 17:36:11
тогда уж проще в тойже сессии смотреть SQL%ROWCOUNT
RusVol
Дата: 24.09.2004 17:43:48
а если вот так:

select sid, serial#, opname, to_char(start_time, 'HH24:MI:SS') "START", sofar/totalwork*100 "PERCENT_COMPLETE"
from v$session_longops
SY
Дата: 24.09.2004 17:50:29
Калина
тогда уж проще в тойже сессии смотреть SQL%ROWCOUNT


Worse. Even your session can not get it until UPDATE is done. There is no direct way (at least I am not aware of it) to do it. You could create an autonomous transaction row level trigger and populate some table with session audit id and row count (via package global variable), however it is a huge overhead.

SY.
Калина
Дата: 24.09.2004 17:55:52
не имелось ввиду что это доступно в процессе.
кстати
select sid, serial#, opname, to_char(start_time, 'HH24:MI:SS') "START", sofar/totalwork*100 "PERCENT_COMPLETE"
from v$session_longops wheку SID= and serial#= ;
вернет помоему много строк, что будем смотреть?