When browsing for packages, the following query is run by Toad 12.11:
===========================
with PACKAGES as
(Select :own owner, object_name, object_type, decode(status, 'VALID', 'V', 'I') status, last_ddl_time, object_id, created
from sys.user_objects
where 1=1
and object_type in ('PACKAGE', 'PACKAGE BODY'))
SELECT PACKAGES.owner, PACKAGES.object_name, PACKAGES.object_type, PACKAGES.status,
PACKAGES.last_ddl_time, PACKAGES.object_id, PACKAGES.created ,
NVL(pi.AUTHID, 'DEFINER') AUTHID ,NVL(d.debuginfo, 'F') DEBUGINFO
FROM PACKAGES
,(SELECT object_id, authid
FROM sys.user_procedures
WHERE subprogram_id = 0
AND object_type = 'PACKAGE'
GROUP BY object_id, authid) pi
, sys.all_probe_objects d
WHERE PACKAGES.object_id = pi.object_id (+)
AND d.object_id (+) = PACKAGES.object_id
AND d.owner (+) = PACKAGES.owner
order by 3, 2
===========================
If the schema contains many objects (e.g. over 300,000), this statement results in a bad hash join against all_probe_objects and takes a very long time to retrieve data, or appear to hang Toad.
You need to be signed in and under a current maintenance contract to view premium knowledge articles.
© ALL RIGHTS RESERVED. Feedback Terms of Use Privacy Cookie Preference Center