I want to check the progress of a long DELETE running in the server from another machine. I tried V$SESSION_LONGOPS, but the DELETE is being done row by row, and longops tracks only bulk operations. My test case :

SQL> create table TAB_TEST(c1 number, c2 varchar2(45));

SQL> BEGIN
2 for i in 1..1999999 loop
3 insert into TAB_TEST values(i, 'Linha ' || i);
4 end loop;
5 END;
6 /

SQL> commit;

==> now I will do a long delete :

SQL> update TAB_TEST set c2='x' where c2 like 'Linha 2%';

==> in another session I will consult V$SESSION_LONGOPS :

SQL> select * from v$session_longops where time_remaining > 0;

SQL>

nothing show. Any ideas to do it ? DBMS_APPLICATION_INFO.SET_SESSION_LONGOPS don´t work int this case, AFAIK, only in LOOP operations.

Regards,

Chiappa