My Oracle Support Banner

IMP-3 ORA-23308 Errors During Import While Setting Trigger Firing Property (Doc ID 731911.1)

Last updated on MARCH 07, 2019

Applies to:

Oracle Database - Enterprise Edition - Version 10.2.0.4 and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Cloud Exadata Service - Version N/A and later
Information in this document applies to any platform.

Symptoms

The import of a trigger fails with errors:

IMP-00017: following statement failed with ORACLE error 23308:
"BEGIN DBMS_DDL.SET_TRIGGER_FIRING_PROPERTY('"<SCHEMA_NAME>"', '"<TRIGGER_NAME>"', FALSE); END;"
IMP-00003: ORACLE error 23308 encountered
ORA-23308: object <SCHEMA_NAME>.<TRIGGER_NAME> does not exist or is invalid
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.DBMS_DDL_INTERNAL", line 41
ORA-06512: at "SYS.DBMS_DDL", line 335
ORA-06512: at line 1


All the following conditions need to be met so that the errors to occur: 

1. In the source database the firing property was set to FALSE (default is TRUE) for the trigger with:

BEGIN
  DBMS_DDL.SET_TRIGGER_FIRING_PROPERTY ('<SCHEMA_NAME>', '<TRIGGER_NAME>', FALSE);
END;


With the DBMS_DDL.SET_TRIGGER_FIRING_PROPERTY procedure you can control how a trigger fires for:

- changes applied by a Streams apply process; and
- changes made by executing one or more Streams apply errors using the EXECUTE_ERROR or EXECUTE_ALL_ERRORS procedure in the DBMS_APPLY_ADM package.

If the fire_once parameter (third parameter) is set to TRUE for a trigger, then the trigger does not fire for these types of changes. If the fire_once parameter is set to FALSE for a trigger, then the trigger fires for these types of changes.

2. The import is made with clauses FROMUSER ... TOUSER and the users are different:

For example:

#> imp system/<PASSWORD> fromuser=<USER_NAME> touser=<USER_NAME1> file=exp.dmp log=imp_test.log


3. The user in FROMUSER clause does not exist in the target database.

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.