Hi,
I am stuck in a situation and need to use your help to make an educated decision.
I am running an Insert..Select which inserts around 1,300,000 records from a normal table to a partitioned table. I executed the following commands prior to my Insert.
- ALTER SESSION FORCE PARALLEL DML;
- ALTER TABLE <DESTINATION TABLE> NOLOGGING;
I am also using the append and parallel hints in my Insert.
INSERT /*+ parallel(4) append */ INTO <DESTINATION TABLE NAME> SELECT /*+ parallel(4) */ * FROM <SOURCE TABLE NAME>;
My partitioned table has 5 partitions that is why I use 4 DOP. The query is running for a long time and I am running out of time. I need to decide whether I should kill the session or let it run. but I don't have any clue that how far the query executed. I checked the waits and locks and I am certain that query is not stuck. There is nothing in long ops as well.
Now I have two questions:
- How and where I can gather some information about how far the query executed? Estimated remaining time, etc.
- The big part of the problem is the indexes on the destination table which I forget to drop before running the insert. What could I do now? Is there any way to mark them unusable or drop them now?
Best regards,
Shahram