Oracle KUPP$PROC
Version 26ai

General Information
Library Note Morgan's Library Page Header
The best Oracle News for FY2026

Oracle Database 26ai is now availble. If you haven't you downloaded already: Why?
Purpose DataPump Support Utilities
AUTHID CURRENT_USER
Dependencies SELECT name FROM dba_dependencies WHERE referenced_name = 'KUPP$PROC' UNION
SELECT referenced_name FROM dba_dependencies WHERE name = 'KUPP$PROC' ORDER BY 1;


Returns 65 objects
Documented No
First Available 10.1
Security Model Owned by SYS with execute granted to the EXECUTE_CATALOG_ROLE role.

Access to some subpograms prevented by an Accessible By clause.
Source {ORACLE_HOME}/rdbms/admin/prvthpp.plb
Subprograms
 
ANY_DEBUG_TRACE_INFO
Returns TRUE if any debug trace information has been generated kupp$proc.any_debug_trace_info RETURN BOOLEAN;
set serveroutput on

BEGIN
  IF kupp$proc.any_debug_trace_info THEN
    dbms_output.put_line('TRUE');
  ELSE
    dbms_output.put_line('FALSE');
  END IF;
END;
/
FALSE

PL/SQL procedure successfully completed.
 
APPLY_TRACE_DEBUG_RULES
Undocumented kupp$proc.apply_trace_debug_rules(debug_flags IN BINARY_INTEGER) RETURN BINARY_INTEGER;
SELECT kupp$proc.apply_trace_debug_rules(-1);

KUPP$PROC.APPLY_TRACE_DEBUG_RULES(-1)
-------------------------------------
                           -1.074E+09


SELECT kupp$proc.apply_trace_debug_rules(0);

KUPP$PROC.APPLY_TRACE_DEBUG_RULES(0)
------------------------------------
                                   0


SELECT kupp$proc.apply_trace_debug_rules(1);

KUPP$PROC.APPLY_TRACE_DEBUG_RULES(1)
------------------------------------
                                   1
 
CHANGE_USER
Undocumented but allow changing the user's identity. Requires the BECOME USER privilege kupp$proc.change_user(username IN VARCHAR2);
SELECT user;

USER
------------------------------
SYS


SELECT sys_context('USERENV', 'CURRENT_SCHEMA');

SYS_CONTEXT('USERENV','CURRENT_SCHEMA')
----------------------------------------
SYS


exec sys.kupp$proc.change_user('UWCLASS');
     *
ORA-31625: Schema UWCLASS is needed to import this object, but is unaccessible
 
CHECK_FOR_INTERRUPT
Undocumented kupp$proc.check_for_interrupt;
exec kupp$proc.check_for_interrupt;

PL/SQL procedure successfully completed.
 
CHECK_WORKER_STATUS
Undocumented and protected by an ACCESIBLE BY Clause kupp$proc.check_worker_status;
exec kupp$proc.check_worker_status;
     *
PLS-00904: insufficient privilege to access object CHECK_WORKER_STATUS
 
CREATE_MASTER_PROCESS
Undocumented kupp$proc.create_master_process(
master_exec_spec IN VARCHAR2,
username         IN VARCHAR2,
job_name         IN VARCHAR2,
wait_init_done   IN BOOLEAN)
RETURN BINARY_INTEGER;
TBD
 
CREATE_WORKER_PROCESSES
Undocumented kupp$proc.create_worker_processes(
num_workers      IN BINARY_INTEGER,
worker_exec_spec IN VARCHAR2,
worker_seed      IN BINARY_INTEGER,
wait_init_done   IN BOOLEAN)
RETURN BINARY_INTEGER;
TBD
 
DEFAULT_DOP
Undocumented

Protected by an ACCESSIBLE BY clause
kupp$proc.default_dop RETURN BINARY_INTEGER;
SELECT kupp$proc.default_dop;
       *
ORA-06553: PLS-904: insufficient privilege to access object DEFAULT_DOP
 
DELETE_WORKER_PROCESSES
Undocumented kupp$proc.delete_worker_processes;
exec kupp$proc.delete_worker_processes;
     *
ORA-39110: error deleting worker processes
ORA-31610: cannot call this function from a non-master process
 
DISABLE_MULTIPROCESS
Undocumented kupp$proc.disable_multiprocess RETURN BINARY_INTEGER;
SELECT kupp$proc.disable_multiprocess;

DISABLE_MULTIPROCESS
--------------------
                   1
 
ENABLE_FLASHBACK_DMLS
Undocumented kupp$proc.enable_flashback_dmls;
exec kupp$proc.enable_flashback_dmls;

PL/SQL procedure successfully completed.
 
ENABLE_MULTIPROCESS
Undocumented kupp$proc.enable_multiprocess RETURN BINARY_INTEGER;
SELECT kupp$proc.enable_multiprocess;

ENABLE_MULTIPROCESS
-------------------
                  1
 
GET_CIT_FLAG
Undocumented kupp$proc.get_cit_flag RETURN BINARY_INTEGER;
SELECT kupp$proc.get_cit_flag;

GET_CIT_FLAG
------------
           0
 
GET_DPUGA_FLAG (new 23ai)
Undocumented kupp$proc.get_dpuga_flag RETURN BINARY_INTEGER;
SELECT kupp$proc.get_dpuga_flag;

GET-DPUGA_FLAG
--------------
             1
 
GET_NLS_ALTER_SESSION
Undocumented kupp$proc.get_nls_alter_session RETURN VARCHAR2;
SELECT kupp$proc.get_nls_alter_session;

GET_NLS_ALTER_SESSION
----------------------
 
 
GET_TRACE_DEBUG
Undocumented kupp$proc.get_trace_debug RETURN BINARY_INTEGER;
SELECT kupp$proc.get_trace_debug;

GET_TRACE_DEBUG
---------------
              0
 
GET_WORKER_EXCEPTION
Undocumented kupp$proc.get_worker_exception(
worker_id        OUT BINARY_INTEGER,
worker_name      OUT VARCHAR2,
worker_name_size IN  BINARY_INTEGER,
error_code       OUT BINARY_INTEGER,
error_stack      OUT VARCHAR2,
error_stack_size IN  BINARY_INTEGER);
TBD
 
INIT_DONE
Undocumented kupp$proc.init_done;
exec kupp$proc.init_done;

PL/SQL procedure successfully completed.
 
IS_INSTANCE_ALIVE (new 23ai)
Undocumented kupp$proc.is_instance_alive(instance_id IN BINARY_INTEGER) RETURN BINARY_INTEGER;
exec kupp$proc.is_instance_alive(1);
     *
ORA-06553: PLS-904: insufficient privilege to access object IS_IONSTANCE_ALIVE
 
IS_MULTIPROCESS_ENABLED
Returns a 1 if multiprocess is enable, otherwise 0

See ENABLE_MULTIPROCESS and DISABLE_MULTIPROCESS on this page
kupp$proc.is_multiprocess_enabled RETURN BINARY_INTEGER;
SELECT kupp$proc.is_multiprocess_enabled;

IS_MULTIPROCESS_ENABLED
-----------------------
                      1
 
IS_PVF_ORACLE_MAINTAINED (new 23ai)
Undocumented kupp$proc.is_pvf_oracle_maintained(pvf_name IN VARCHAR2) RETURN BOOLEAN;
TBD
 
JOB_ALIVE
Undocumented kupp$proc.job_alive(jobser IN BINARY_INTEGER) RETURN BINARY_INTEGER;
TBD
 
KILL_WORKER
Deletes the identified worker process kupp$proc.kill_worker(worker_id IN BINARY_INTEGER);
exec kupp$proc.kill_worker(1);
     *
ORA-39110: error deleting worker processes
ORA-31610: cannot call this function from a non-master process
 
MAX_DOP
Undocumented

Protected by an ACCESSIBLE BY clause
kupp$proc.max_dop(curr_max IN BINARY_INTEGER) RETURN BINARY_INTEGER;
SELECT kupp$proc.max_dop(4);
       *
ORA-06553: PLS-904: insufficient privilege to access object MAX_DOP
 
OPTION_ENABLED
Undocumented

The only value that returns TRUE in my tests is one (1)
kupp$proc.option_enabled(optval IN BINARY_INTEGER) RETURN BOOLEAN;
set serveroutput on

BEGIN
  IF kupp$proc.option_enabled(-1) THEN
    dbms_output.put_line('-1');
  END IF;
END;
/
*
ORA-01426: numeric overflow


BEGIN
  IF kupp$proc.option_enabled(0) THEN
     dbms_output.put_line('0');
  END IF;
END;
/

PL/SQL procedure successfully completed.

BEGIN
  IF kupp$proc.option_enabled(1) THEN
     dbms_output.put_line('1');
  END IF;
END;
/
1

PL/SQL procedure successfully completed.


BEGIN
  IF kupp$proc.option_enabled(999999999) THEN
    dbms_output.put_line('999999999');
  END IF;
END;
/

PL/SQL procedure successfully completed.

BEGIN
  IF kupp$proc.option_enabled(9999999999) THEN
    dbms_output.put_line('9999999999');
  END IF;
END;
/
*
ORA-01426: numeric overflow
 
SEC_TT_LOADED
Undocumented kupp$proc.sec_tt_loaded;
exec kupp$proc.sec_tt_loaded;
     *
ORA-00600: internal error code, arguments: [600], [], [], [], [], [], [], [], [], [], [], []
ORA-31610: cannot call this function from a non-master process
 
SEC_TT_UNLOADED
Undocumented kupp$proc.sec_tt_unloaded;
exec kupp$proc.sec_tt_unloaded;
     *
ORA-00600: internal error code, arguments: [600], [], [], [], [], [], [], [], [], [], [], []
ORA-31610: cannot call this function from a non-master process
 
SET_CIT_FLAG
Undocumented

Protected by an ACCESSIBLE BY clause
kupp$proc.set_cit_flag(newval IN BINARY_INTEGER);
exec kupp$proc.set_cit_flag(1);
     *
PLS-00904: insufficient privilege to access object SET_CIT_FLAG
 
SET_DPUGA_FLAG (new 23ai)
Undocumented kupp$proc.set_dpuga_flag(newval IN BINARY_INTEGER);
exec kupp$proc.set_dpuga_flag(1);
     *
PLS-00904: insufficient privilege to access object SET_DPUGA_FLAG
 
SET_PROFILING
Undocumented kupp$proc.set_profiling(on_flag IN BOOLEAN);
exec kupp$proc.set_profiling(FALSE);

PL/SQL procedure successfully completed.
 
SET_REMOTE_WORKER
Undocumented kupp$proc.set_remote_worker(worker_id IN NUMBER);
exec kupp$proc.set_remote_worker(9);

PL/SQL procedure successfully completed.
 
SET_TRACE_DEBUG
Undocumented kupp$proc.set_trace_debug(
debug_flags IN BINARY_INTEGER,
caller_type IN BINARY_INTEGER,
remote_op   IN BOOLEAN);
TBD
 
SHUTDOWN_IN_PROGRESS
Returns TRUE if the container is in the process of shutting down kupp$proc.shutdown_in_progress RETURN BOOLEAN;
BEGIN
  IF kupp$proc.shutdown_in_progress THEN
    dbms_output.put_line('Shutdown In Progress');
  ELSE
    dbms_output.put_line('Shutdown Is Not In Progress');
  END IF;
END;
/
Shutdown Is Not In Progress

PL/SQL procedure successfully completed.
 
TOTAL_WORKERS_ALIVE
Undocumented kupp$proc.total_workers_alive(worker_exceptions_queued OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;
DECLARE
 ret PLS_INTEGER;
 weq PLS_INTEGER;
BEGIN
  ret := kupp$proc.total_workers_alive(weq);
  dbms_output.put_line(ret);
  dbms_output.put_line(weq);
END;
/
*
ORA-39003: unable to get count of total workers alive
ORA-31610: cannot call this function from a non-master process
 
WHATS_MY_ID
Returns the current user's user_id from USER$ kupp$proc.whats_my_id RETURN BINARY_INTEGER;
sho user
USER is "SYS"

SELECT user_id
FROM dba_users
WHERE username = 'SYS';

   USER_ID
----------
         0


SELECT kupp$proc.whats_my_id;

WHATS_MY_ID
-----------
          0
 
WHATS_MY_NAME
Outputs the name of a Data Pump process based on process name size kupp$proc.whats_my_name(
process_name      OUT VARCHAR2,
process_name_size IN  BINARY_INTEGER);
DECLARE
 outVal VARCHAR2(30);
BEGIN
  kupp$proc.whats_my_name(outVal, 14);
  dbms_output.put_line(outVal);
END;
/
*
ORA-39160: error on whats my name call
ORA-39159: cannot call this function from a non-Data Pump process
 
WHAT_AM_I
Undocumented but seems to always return zero (0) kupp$proc.what_am_id RETURN BINARY_INTEGER;
SELECT kupp$proc.what_am_i;

 WHAT_AM_I
----------
         0
 
WHAT_ORACLE_PRODUCT
Undocumented: Oracle Enterprise Edition version 11.2.0.3 and 12.1.0.2 both return 8 kupp$proc.what_oracle_product RETURN BINARY_INTEGER;
SELECT kupp$proc.what_oracle_product;

WHAT_ORACLE_PRODUCT
-------------------
                  8
 
WORKER_EXTTBL_ACTIVE
Undocumented kupp$proc.worker_exttbl_active;
exec kupp$proc.worker_exttbl_active;
     *
ORA-00600: internal error code, arguments: [600], [], [], [], [], [], [], [], [], [], [], []
ORA-39159: cannot call this function from a non-Data Pump process
 
WORKER_EXTTBL_FULLNAME
Undocumented kupp$proc.worker_exttbl_fullName(
exttbl_schema IN VARCHAR2,
exttbl_name   IN VARCHAR2);
exec kupp$proc.worker_exttbl_fullName('C##SH', 'SALES');
     *
ORA-00600: internal error code, arguments: [600], [], [], [], [], [], [], [], [], [], [], []
ORA-39159: cannot call this function from a non-Data Pump process
 
WORKER_EXTTBL_INACTIVE
Undocumented kupp$proc.worker_exttbl_inactive;
exec kupp$proc.worker_exttbl_inactive;
     *
ORA-00600: internal error code, arguments: [600], [], [], [], [], [], [], [], [], [], [], []
ORA-39159: cannot call this function from a non-Data Pump process
 
WORKER_PROCESS_INIT
Undocumented kupp$proc.worker_process_init(
max_workers IN BINARY_INTEGER,
use_cluster IN BINARY_INTEGER,
svcname     IN VARCHAR2);
TBD
 
WORKER_SERVICE_INIT
Undocumented kupp$proc.worker_service_init(svcnam IN VARCHAR2);
SELECT DISTINCT name
FROM v$active_services;

exec kupp$proc.worker_service_init('SYS$USERS');
     *
ORA-31686: error creating worker processes
ORA-39159: cannot call this function from a non-Data Pump process

Related Topics
Built-in Functions
Built-in Packages
Datapump Executable
DBMS_DATAPUMP
DBMS_DATAPUMP_UTL
What's New In 21c
What's New In 26ai

Morgan's Library Page Footer
This site is maintained by Daniel Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2026 Daniel A. Morgan All Rights Reserved