when pl/sql Developer Start, it execute some sql statements, Among them, below statement show bad performance and use high cpu resources.
.
select s.synonym_name object_name, o.object_type
from sys.all_synonyms s, sys.all_objects o
where s.owner in ('PUBLIC', user)
and o.owner = s.table_owner
and o.object_name = s.table_name and o.object_type in ('TABLE', 'VIEW', 'PACKAGE','TYPE'
, 'PROCEDURE', 'FUNCTION'
, 'SEQUENCE')
.
According to Oracle, in 10.1.0.5 or higher version, all_synonyms & all_objects have more complex plan than ealier version because of functional & security reason.
.
Oracle offer an workaround to create another view whose source is that of 10.1.0.4 or lower version DB, create private synonym for the user executing these statements, and use this private synonym instaed of public synonym.
.
but the workaround oracle offerd does'nt work in case of PL/SQL Developer Starting SQL Statement 'cause this use sys.all_objects, sys.all_synonyms.
.
I was wondering if the are any way of changing this sql statements PL/SQL Developer execute when it starts, bypassing or using dba views instead of all views??
.
.
select s.synonym_name object_name, o.object_type
from sys.all_synonyms s, sys.all_objects o
where s.owner in ('PUBLIC', user)
and o.owner = s.table_owner
and o.object_name = s.table_name and o.object_type in ('TABLE', 'VIEW', 'PACKAGE','TYPE'
, 'PROCEDURE', 'FUNCTION'
, 'SEQUENCE')
.
According to Oracle, in 10.1.0.5 or higher version, all_synonyms & all_objects have more complex plan than ealier version because of functional & security reason.
.
Oracle offer an workaround to create another view whose source is that of 10.1.0.4 or lower version DB, create private synonym for the user executing these statements, and use this private synonym instaed of public synonym.
.
but the workaround oracle offerd does'nt work in case of PL/SQL Developer Starting SQL Statement 'cause this use sys.all_objects, sys.all_synonyms.
.
I was wondering if the are any way of changing this sql statements PL/SQL Developer execute when it starts, bypassing or using dba views instead of all views??
.