Thanks pwoneill
I ran the following , and still the sql plus hangs.

declare
cursor cur is select col1, col5, col3
from tableB b, tableC
c where b.col4=c.col4;
i NUMBER;
begin
i := 0;
for rec in cur loop
insert into tableA values (rec.col1, rec.col5, rec.col3);
if ( mod(1 ,1000) = 0 ) then
commit;
end if;
i := i+1;
end loop;
commit;
end;

Should I try to assign a bigger rbs?
Presently I have 4 rbs of 4mb each.
Thanks
manjunath