create table tab1 (i number);
insert into tab1 values (10);
commit;

Fine. Now :

select rownum from dba_objects a,(select i from tab1) b where rownum<=i

doesn't stop after 10 rows. It selects everything from dba_objects. Is this expected in 806 ?

This works fine in 9i...the query does indeed return just 10 rows.