As stated in the documentation :
DEBUG
It has the same effect as PLSQL_OPTIMIZE_LEVEL=1- it creates a PL / SQL compiler to create and store code for use by the PL / SQL debugger. Oracle recommends using PLSQL_OPTIMIZE_LEVEL=1DEBUG instead.
, , , , . , SQL Developer , PLSQL_DEBUG true. :
create or replace package p42 as
function f return number;
end p42;
/
create or replace package body p42 as
function f return number is
begin
return 42;
end f;
end p42;
/
select name, type, plsql_optimize_level, plsql_debug
from user_plsql_object_settings where name = 'P42';
NAME TYPE PLSQL_OPTIMIZE_LEVEL PLSQL_DEBUG
P42 PACKAGE 2 FALSE
P42 PACKAGE BODY 2 FALSE
alter session set plsql_optimize_level = 1;
alter session set plsql_debug = true;
exec dbms_utility.compile_schema(user);
select name, type, plsql_optimize_level, plsql_debug
from user_plsql_object_settings where name = 'P42';
NAME TYPE PLSQL_OPTIMIZE_LEVEL PLSQL_DEBUG
P42 PACKAGE 1 TRUE
P42 PACKAGE BODY 1 TRUE
, , , , , , , , . , :
DBMS_UTILITY.COMPILE_SCHEMA(schema => user, reuse_settings => true);
... :
DBMS_UTILITY.COMPILE_SCHEMA(schema => user, compile_all => false, reuse_settings => true);