Oracle DBMS_STREAMS_TBS_INT_INVOK
Version 21c

General Information
Library Note Morgan's Library Page Header
Which has the higher priority in your organization: Deploying a new database or securing the ones you already have? Looking for a website, and resources, dedicated solely to securing Oracle databases? Check out DBSecWorx.
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 19c
What's New In 20c-21c

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-2021 Daniel A. Morgan All Rights Reserved
  DBSecWorx