General Information
Library Note
Morgan's Library Page Header
Purpose
Streams R emote P rocedure C all Support
Streams was deprecated 03-Jan-2018 but this package still exists in 23ai but it is not installed by default
AUTHID
CURRENT_USER
Dependencies
DBMS_ASSERT
DBMS_STANDARD
DBMS_STREAMS_TBS_INT
DBMS_CAPTURE_ADM_INTERNAL
DBMS_STREAMS_ADM_IVK
DBMS_STREAMS_TBS_INT_INVOK
DBMS_CAPTURE_ADM_IVK
DBMS_STREAMS_ADM_UTL_INVOK
DBMS_SYS_ERROR
DBMS_CAPTURE_SWITCH_ADM
DBMS_STREAMS_DATAPUMP
DBMS_UTILITY
DBMS_CAPTURE_SWITCH_INTERNAL
DBMS_STREAMS_MT
DBMS_XSTREAM_GG_ADM
DBMS_LOGREP_UTIL
DBMS_STREAMS_PUB_RPC
DBMS_XSTREAM_UTL_IVK
DBMS_RECO_SCRIPT_INT
DBMS_STREAMS_RPC_INTERNAL
PLITBLM
DBMS_RECO_SCRIPT_INVOK
DBMS_STREAMS_TABLESPACE_ADM
V$PARAMETER
Documented
No
Exceptions
Error Code
Reason
ORA-02039
connection description for remote database not found
ORA-31541
Supplemental logging is not enabled in CDB$ROOT
PLS-00201
identifier '<database_link_name>' must be declared
PLS-00352
Unable to access another database 'TESTLINK'
First Available
Not known
Security Model
Owned by SYS with EXECUTE granted to the EXECUTE_CATALOG_ROLE, OGG_APPLY, OGG_CAPTURE, XSTREAM_APPLY and XSTREAM_CAPTURE roles.
Source
{ORACLE_HOME}/rdbms/admin/prvtsrp.plb
{ORACLE_HOME}/rdbms/admin/prvtbsrp.plb
Subprograms
BUILD
Undocumented
Must be in archive log mode to use this procedure
dbms_streams_rpc.build(
invoker IN VARCHAR2,
dblink IN VARCHAR2,
first_scn OUT NUMBER,
wait_for_inflight_txns IN VARCHAR2);
TBD
BUILD_RC
Undocumented
dbms_streams_rpc.build_rc(
first_scn OUT NUMBER,
wait_for_inflight_txns IN VARCHAR2);
TBD
CONVERT_FILE_AT_SOURCE
Undocumented
dbms_streams_rpc.convert_file_at_source(
dblink IN VARCHAR2,
input_dir_object IN VARCHAR2,
input_filenumber IN BINARY_INTEGER,
input_platform_id IN BINARY_INTEGER,
output_dir_object IN VARCHAR2,
output_filename IN VARCHAR2,
output_platform_id IN BINARY_INTEGER,
convert_fq_file_name OUT VARCHAR2);
TBD
CONVERT_FILE_AT_SOURCE_RC
Undocumented
dbms_streams_rpc.convert_file_at_source_rc(
input_dir_object IN VARCHAR2,
input_filenumber IN BINARY_INTEGER,
input_platform_id IN BINARY_INTEGER,
output_dir_object IN VARCHAR2,
output_filename IN VARCHAR2,
output_platform_id IN BINARY_INTEGER,
convert_fq_file_name OUT VARCHAR2);
TBD
DROP_SCRIPT
Undocumented
dbms_streams_rpc.drop_script(
script_id IN RAW,
force IN BOOLEAN);
TBD
GET_CHARACTER_SET
Returns the character set in the database at the database link
dbms_streams_rpc.get_character_set(
dblink IN VARCHAR2,
charset OUT VARCHAR2);
DECLARE
outVal dbms_id;
BEGIN
dbms_streams_rpc.get_character_set ('TESTLINK', outVal);
dbms_output.put_line(outVal);
END;
/
GET_DATABASE_SCNS
Undocumented
dbms_streams_rpc.get_database_scns(
dblink IN VARCHAR2,
currentscn OUT NUMBER,
minstartscn OUT NUMBER,
message OUT VARCHAR2);
DECLARE
curscn NUMBER;
minscn NUMBER;
msg dbms_id;
BEGIN
dbms_streams_rpc.get_database_scns ('TESTLINK', curscn, minscn, msg);
dbms_output.put_line(TO_CHAR(curscn));
dbms_output.put_line(TO_CHAR(minscn));
dbms_output.put_line(msg);
END;
/
GET_DATABASE_SCNS_RC
Undocumented
dbms_streams_rpc.get_database_scns_rc(
currentscn OUT NUMBER,
minstartscn OUT NUMBER,
message OUT VARCHAR2);
DECLARE
curscn NUMBER;
minscn NUMBER;
msg dbms_id;
BEGIN
dbms_streams_rpc.get_database_scns_rc (curscn, minscn, msg);
dbms_output.put_line(TO_CHAR(curscn));
dbms_output.put_line(TO_CHAR(minscn));
dbms_output.put_line(msg);
END;
/
72297291
72297291
Switch to use apply-state ckpt: No active trnasactions, use the current SCN (72297291) for the new oldest SCN.
PL/SQL procedure successfully completed.
GET_EXPORT_DML_SCN
Undocumented
dbms_streams_rpc.get_export_dml_scn(
canon_dblink IN VARCHAR2,
canon_schema IN VARCHAR2,
canon_tablename IN VARCHAR2,
cookie IN VARCHAR2,
flashback_scn IN NUMBER)
RETURN NUMBER;
TBD
GET_OLDEST_SCN
Returns the oldest SCN at the database link for the identified apply process
dbms_streams_rpc.get_oldest_scn(
dblink IN VARCHAR2,
canon_apply_name IN VARCHAR2)
RETURN NUMBER;
TBD
GET_OLDEST_SCN_RC
Returns the oldest SCN for the identified apply process
dbms_streams_rpc.get_oldest_scn_rc(
canon_apply_name IN VARCHAR2,
oldest_scn OUT NUMBER);
TBD
GET_SYSTEM_CHANGE_NUMBER
Undocumented
dbms_streams_rpc.get_system_change_number(
invoker IN VARCHAR2,
dblink IN VARCHAR2,
scn OUT NUMBER);
TBD
GET_SYSTEM_CHANGE_NUMBER_RC
Undocumented
dbms_streams_rpc.get_system_change_number_rc(scn OUT NUMBER);
SELECT current_scn FROM v$database;
CURRENT_SCN
-----------
72297296
DECLARE
outVal NUMBER;
BEGIN
dbms_streams_rpc.get_system_change_number_rc (outVal);
dbms_output.put_line(TO_CHAR(outVal));
END;
/
72297296
PL/SQL procedure successfully completed.
GET_UNDO_BLOCK
Undocumented
dbms_streams_rpc.get_undo_block(
script_id IN RAW,
block_num IN NUMBER,
undo_block OUT VARCHAR2,
canon_undo_dblink OUT VARCHAR2);
TBD
LOCAL_EXECUTE_BLOCK
Undocumented
dbms_streams_rpc.local_execute_block(
script_id IN RAW,
block_num IN NUMBER,
block IN CLOB,
remote_state IN CLOB);
TBD
MIN_SUPP_LOGGING_ENABLED
Returns TRUE if minimum supplemental logging is enabled at the dblink
dbms_streams_rpc.min_supp_logging_enabled(canon_dblink IN VARCHAR2) RETURN BOOLEAN;
BEGIN
IF dbms_streams_rpc.min_supp_logging_enabled ('TESTLINK') THEN
dbms_output.put_line('Enabled');
ELSE
dbms_output.put_line('Not Enabled');
END IF;
END;
/
*
PLS-00352: Unable to access another database 'TESTLINK.SUB06101709240,ASRAVCN.ORACLEVCN.COM'
PLS-00201: identifier 'SYS@TESTLINK.SUB06101709240,ASRAVCN.ORACLEVCN.COM' must be declared
NEED_SCN
Undocumented
dbms_streams_rpc.need_scn(
canon_dblink IN VARCHAR2,
dblink_param IN VARCHAR2,
interest OUT BOOLEAN,
cookie IN OUT VARCHAR2);
TBD
PREPARE_GLOBAL_INSTANTIATION
Undocumented
dbms_streams_rpc.prepare_global_instantiation(
invoker IN VARCHAR2,
dblink IN VARCHAR2,
container IN VARCHAR2);
TBD
PREPARE_GLOBAL_INSTANTIATION_R
Undocumented
dbms_streams_rpc.prepare_global_instantiation_r(container IN VARCHAR2);
exec dbms_streams_rpc.prepare_global_instantiation_r ('ASRA23AI_PDB1');
*
ORA-31541: Supplemental logging is not enabled in CDB$ROOT.
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
Database altered.
exec dbms_streams_rpc.prepare_global_instantiation_r ('ASRA23AI_PDB1');
PL/SQL procedure successfully completed.
PREPARE_SCHEMA_INSTANTIATION
Undocumented
dbms_streams_rpc.prepare_schema_instantiation(
schema_name IN VARCHAR2,
invoker IN VARCHAR2,
dblink IN VARCHAR2,
container IN VARCHAR2);
TBD
PREPARE_SCHEMA_INSTANTIATION_R
Undocumented
dbms_streams_rpc.prepare_schema_instantiation_r(
schema_name IN VARCHAR2,
container IN VARCHAR2);
exec dbms_streams_rpc.prepare_schema_instantiation_r ('UWCLASS', 'PDBDEV');
PL/SQL procedure successfully completed.
PREPARE_TABLE_INSTANTIATION
Undocumented
dbms_streams_rpc.prepare_table_instantiation(
table_name IN VARCHAR2,
invoker IN VARCHAR2,
dblink IN VARCHAR2,
container IN VARCHAR2);
TBD
PREPARE_TABLE_INSTANTIATION_RC
Undocumented
dbms_streams_rpc.prepare_table_instantiation_rc(
table_name IN VARCHAR2,
container IN VARCHAR2);
exec dbms_streams_rpc.prepare_table_instantiation_rc ('SERVERS', 'PDBDEV');
PL/SQL procedure successfully completed.
PULL_ALTER_TABLESPACE
Undocumented
dbms_streams_rpc.pull_alter_tablespace(
trace_setting IN NUMBER,
tablespace_name IN VARCHAR2,
alter_option IN VARCHAR2);
TBD
PULL_PLATFORM
10046 and 10053 function the same as trace settings for this proc.
dbms_streams_rpc.pull_platform(
trace_setting IN NUMBER,
platform OUT VARCHAR2);
DECLARE
outVal dbms_id;
BEGIN
dbms_streams_rpc.pull_platform (10046, outVal);
dbms_output.put_line(outVal);
END;
/
Linux x86 64-bit
PL/SQL procedure successfully completed.
PULL_TABLESPACE_FILE_INFO
Undocumented
dbms_streams_rpc.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_rpc.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_rpc.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
SET_OLDEST_SCN
Undocumented
dbms_streams_rpc.set_oldest_scn(
dblink IN VARCHAR2,
canon_apply_name IN VARCHAR2,
scn IN NUMBER,
is_range IN BOOLEAN);
TBD
SET_OLDEST_SCN_RC
Undocumented
dbms_streams_rpc.set_oldest_scn_rc(
canon_apply_name IN VARCHAR2,
scn IN NUMBER,
is_range IN VARCHAR2);
TBD
TABLESPACES_EXIST_NUM
Undocumented
dbms_streams_rpc.tablespaces_exist_num(
database_link IN VARCHAR2,
tbs_names IN dbms_streams_tablespace_adm.tablespace_set);
TBD
TABLESPACES_EXIST_NUM_RC
Undocumented
dbms_streams_rpc.tablespaces_exist_num_rc(
tbs_names_str IN VARCHAR2,
exist_num OUT NUMBER);
DECLARE
outVal NUMBER;
BEGIN
dbms_streams_rpc.tablespaces_exist_num_rc ('SYSTEM', outVal);
dbms_output.put_line(outVal);
END;
/
3
PL/SQL procedure successfully completed.
WAIT_FOR_INFLIGHT_TXN
Undocumented
dbms_streams_rpc.wait_for_inflight_txn(
invoker IN VARCHAR2,
dblink IN VARCHAR2,
current_scn IN NUMBER);
TBD
WAIT_FOR_INFLIGHT_TXN_RC
Undocumented
dbms_streams_rpc.wait_for_inflight_txn_rc(current_scn IN NUMBER);
DECLARE
cscn v$database.current_scn%TYPE;
BEGIN
SELECT current_scn+10
INTO cscn
FROM v$database;
dbms_streams_rpc.wait_for_inflight_txn_rc (cscn);
END;
/
PL/SQL procedure successfully completed.