Oracle DBMS_STREAMS_TBS_INT_INVOK
Version 21c

General Information
Library Note Morgan's Library Page Header
ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling complimentary technical Workshops on Database Security for the first 30 Oracle Database customers located anywhere in North America, EMEA, LATAM, or APAC that send an email to asra_us@oracle.com. Request a Workshop for your organization today.
Purpose Streams Tablespace Management Utilities
AUTHID CURRENT_USER
Dependencies
ALL_DIRECTORIES DBMS_SQL DBMS_SYS_ERROR
DBA_DATA_FILES DBMS_STANDARD DBMS_UTILITY
DBA_TABLESPACES DBMS_STREAMS_MT KU$_JOBSTATUS
DBMS_DATAPUMP DBMS_STREAMS_RPC KU$_LOGENTRY
DBMS_FILE_GROUP DBMS_STREAMS_TABLESPACE_ADM KU$_LOGLINE1010
DBMS_FILE_GROUP_DECL DBMS_STREAMS_TBS_INT KU$_STATUS
DBMS_FILE_GROUP_UTL_INVOK DBMS_STREAMS_TBS_LIB PLITBLM
DBMS_LOCK DBMS_SYSTEM USER_TABLESPACES
DBMS_LOGREP_UTIL    
Documented No
Exceptions
Error Code Reason
ORA-23609 unable to find directory object for directory <string>
   
First Available Not known
Security Model Owned by SYS with no privileges granted
Source {ORACLE_HOME}/rdbms/admin/prvthsts.plb
{ORACLE_HOME}/rdbms/admin/prvtbsts.plb
Subprograms
 
CHECK_PRIVILEGE
Undocumented

Overload 1
dbms_streams_tbs_int_invok.check_privilege(
canon_directory_object IN VARCHAR2,
operation              IN VARCHAR2);
TBD
Overload 2 dbms_streams_tbs_int_invok.check_privilege(
canon_directory_object IN VARCHAR2,
operation              IN VARCHAR2)
RETURN BOOLEAN;
TBD
 
DQ
Undocumented dbms_streams_tbs_int_invok.dq(token IN VARCHAR2) RETURN VARCHAR2;
TBD
 
GET_DATA_FILE
Undocumented dbms_streams_tbs_int_invok.get_data_file(
canon_tablespace_name  IN  VARCHAR2,
file_number            IN  NUMBER,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2,
file_id                OUT NUMBER);
TBD
 
GET_FILE_GROUP_VERSION_INFO
Undocumented dbms_streams_tbs_int_invok.get_file_group_version_info(
trace_setting          IN  NUMBER,
canon_file_group_owner IN  VARCHAR2,
canon_file_group_name  IN  VARCHAR2,
canon_version_name     IN  VARCHAR2,
version_id             OUT NUMBER,
file_count             OUT NUMBER,
export_platform        OUT VARCHAR2);
TBD
 
GET_SINGLE_DATA_FILE
Undocumented but clearly it is having a bit of an issue with ASM

We cannot think of any reason why this does not qualify as a bug. Surely a more graceful exit could be implemented.
dbms_streams_tbs_int_invok.get_single_data_file(canon_tablespace_name IN VARCHAR2)
RETURN VARCHAR2;
SELECT dbms_streams_tbs_int_invok.get_single_data_file('USERS')
FROM dual;
SELECT dbms_streams_tbs_int_invok.get_single_data_file('USERS')
       *
ERROR at line 1:
ORA-23609: unable to find directory object for directory +DATA/TEST21DB_IAD25G/DATAFILE/
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 694
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 630
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 576
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 566
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 618
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 618
ORA-06512: at "SYS.DBMS_STREAMS_TBS_INT_INVOK", line 685
 
GET_SINGLE_FILE
Undocumented dbms_streams_tbs_int_invok.get_single_file(
canon_tablespace_name  IN  VARCHAR2,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2);
TBD
 
GET_TABLESPACE_FILES
Undocumented dbms_streams_tbs_int_invok.get_tablespace_files(
canon_tablespace_names IN sys.dbms_streams_tablespace_adm.tablespace_set,
canon_database_link    IN VARCHAR2)
RETURN sys.dbms_streams_tablespace_adm.file_set;
TBD
 
GET_TABLESPACE_STATUS
Undocumented dbms_streams_tbs_int_invok.get_tablespace_status(canon_tablespace_name IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
IS_TABLESPACE_READONLY
Undocumented dbms_streams_tbs_int_invok.is_tablespace_readonly(canon_tablespace_name IN VARCHAR2)
RETURN BOOLEAN;
BEGIN
  IF dbms_streams_tbs_int_invok.is_tablespace_readonly('UWDATA') THEN
    dbms_output.put_line('T');
  ELSE
    dbms_output.put_line('F');
  END IF;
END;
/
F

PL/SQL procedure successfully completed.
 
IS_TABLESPACE_READWRITE
Undocumented dbms_streams_tbs_int_invok.is_tablespace_readwrite(canon_tablespace_name IN VARCHAR2)
RETURN BOOLEAN;
BEGIN
  IF dbms_streams_tbs_int_invok.is_tablespace_readwrite('UWDATA') THEN
    dbms_output.put_line('T');
  ELSE
    dbms_output.put_line('F');
  END IF;
END;
/
T

PL/SQL procedure successfully completed.
 
MAKE_TABLESPACE_READONLY
Undocumented dbms_streams_tbs_int_invok.make_tablespace_readonly(canon_tablespace_name IN VARCHAR2);
SELECT tablespace_name, status
FROM dba_tablespaces
ORDER BY 1;

TABLESPACE_NAME                STATUS
------------------------------ ---------
AUDIT_TBSP                     ONLINE
CDBROOT_TEMP                   ONLINE
ISBD_TBS                       ONLINE
SYSAUX                         ONLINE
SYSTEM                         ONLINE
TEMP                           ONLINE
UNDOTBS1                       ONLINE
USERS                          ONLINE
UWDATA READ                    ONLINE


exec dbms_streams_tbs_int_invok.make_tablespace_readonly('UWDATA');

PL/SQL procedure successfully completed.

SELECT tablespace_name, status
FROM dba_tablespaces
ORDER BY 1;

TABLESPACE_NAME                STATUS
------------------------------ ---------
AUDIT_TBSP                     ONLINE
CDBROOT_TEMP                   ONLINE
ISBD_TBS                       ONLINE
SYSAUX                         ONLINE
SYSTEM                         ONLINE
TEMP                           ONLINE
UNDOTBS1                       ONLINE
USERS                          ONLINE
UWDATA                         READ ONLY
 
MAKE_TABLESPACE_READWRITE
Undocumented dbms_streams_tbs_int_invok.make_tablespace_readwrite(canon_tablespace_name IN VARCHAR2);
SELECT tablespace_name, status
FROM dba_tablespaces
ORDER BY 1;

TABLESPACE_NAME                STATUS
------------------------------ ---------
AUDIT_TBSP                     ONLINE
CDBROOT_TEMP                   ONLINE
ISBD_TBS                       ONLINE
SYSAUX                         ONLINE
SYSTEM                         ONLINE
TEMP                           ONLINE
UNDOTBS1                       ONLINE
USERS                          ONLINE
UWDATA                         READ ONLY

exec dbms_streams_tbs_int_invok.make_tablespace_readwrite('UWDATA');

PL/SQL procedure successfully completed.

SELECT tablespace_name, status
FROM dba_tablespaces
ORDER BY 1;

TABLESPACE_NAME                STATUS
------------------------------ ---------
AUDIT_TBSP                     ONLINE
CDBROOT_TEMP                   ONLINE
ISBD_TBS                       ONLINE
SYSAUX                         ONLINE
SYSTEM                         ONLINE
TEMP                           ONLINE
UNDOTBS1                       ONLINE
USERS                          ONLINE
UWDATA READ                    ONLINE
 
PARSE
Undocumented dbms_streams_tbs_int_invok.parse(
file_string            IN  VARCHAR2,
is_asm                 IN  BOOLEAN,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2);
TBD
 
PRINT_ANY_ERROR
Undocumented dbms_streams_tbs_int_invok.print_any_error(
status          IN public.ku$_status,
raise_exception IN BOOLEAN);
desc ku$_status

Name             Null? Type
---------------- ----- -----------------
MASK                   NUMBER
WIP                    KU$_LOGENTRY1010
JOB_DESCRIPTION        KU$_JOBDESC1220
JOB_STATUS             KU$_JOBSTATUS1220
ERROR                  KU$_LOGENTRY1010
 
PULL_ALTER_TABLESPACE
Undocumented dbms_streams_tbs_int_invok.pull_alter_tablespace(
trace_setting   IN NUMBER,
tablespace_name IN VARCHAR2,
alter_option    IN VARCHAR2);
TBD
 
PULL_PLATFORM
Undocumented dbms_streams_tbs_int_invok.pull_platform(
trace_setting IN  NUMBER,
platform      OUT VARCHAR2);
TBD
 
PULL_TABLESPACE_FILE_INFO
Undocumented dbms_streams_tbs_int_invok.pull_tablespace_file_info(
trace_setting          IN  NUMBER,
tablespace_name        IN  VARCHAR2,
file_number            IN  NUMBER,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2);
TBD
 
PULL_TABLESPACE_INFO
Undocumented dbms_streams_tbs_int_invok.pull_tablespace_info(
trace_setting   IN  NUMBER,
tablespace_name IN  VARCHAR2,
file_count      OUT NUMBER,
alter_needed    OUT VARCHAR2);
TBD
 
PULL_TBS_FILE_NAME_ID
Undocumented dbms_streams_tbs_int_invok.pull_tbs_file_name_id(
trace_setting          IN  NUMBER,
tablespace_name        IN  VARCHAR2,
file_number            IN  NUMBER,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2,
file_id                OUT NUMBER);
TBD
 
RPC_PULL_TABLESPACE_FILE_INFO
Undocumented dbms_streams_tbs_int_invok.rpc_pull_tablespace_file_info(
database_link          IN  VARCHAR2,
tablespace_name        IN  VARCHAR2,
file_number            IN  NUMBER,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2);
TBD
 
RPC_PULL_TABLESPACE_INFO
Undocumented dbms_streams_tbs_int_invok.rpc_pull_tablespace_info(
database_link   IN  VARCHAR2,
tablespace_name IN  VARCHAR2,
file_count      OUT NUMBER,
alter_needed    OUT BOOLEAN);
TBD
 
RPC_PULL_TBS_FILE_NAME_ID
Undocumented dbms_streams_tbs_int_invok.rpc_pull_tabs_file_name_id(
database_link          IN  VARCHAR2,
tablespace_name        IN  VARCHAR2,
file_number            IN  NUMBER,
canon_directory_object OUT VARCHAR2,
file_name              OUT VARCHAR2,
file_id                OUT NUMBER);
TBD
 
TABLESPACES_EXIST_NUM
Undocumented dbms_streams_tbs_int_invok.tablespaces_exist_num(
canon_tbs_names_str IN  VARCHAR2,
exist_num           OUT NUMBER);
DECLARE
 ctns   dbms_id := 'UWDATA';
 outVal NUMBER;
BEGIN
  dbms_streams_tbs_int_invok.tablespaces_exist_num(ctns, outVal);
­  dbms_output.put_line(outVal);
END;
/
2

PL/SQL procedure successfully completed.
 
WAIT_FOR_TERMINATION
Undocumented dbms_streams_tbs_int_invok.wait_for_termination(
dp   IN NUMBER,
mask IN NUMBER);
TBD

Related Topics
Built-in Functions
Built-in Packages
Database Security
DBMS_STREAMS
DBMS_STREAMS_TBS_INT
What's New In 21c
What's New In 23c

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