Description:
Hi There,
I'm trying to migrate a large schema from Oracle. Firstly i was wondering why it calls DMS_UTILITY.ANALYZE_SCHEMA (?, 'ESTIMATE', 50, 0, 'FOR TABLES') - is there a way of turning this off?
when the execution runs through I get the following:
Initializing JDBC driver ...
Driver class Oracle Thin JDBC Driver using SID
Opening connection ...
Connection jdbc:oracle:thin:system/password@host:4403:*****
Initializing JDBC driver ...
Driver class Oracle Thin JDBC Driver using SID
Opening connection ...
Connection jdbc:oracle:thin:system/password@host:4403:*****
Getting version information ...
Initializing JDBC driver ...
Driver class Oracle Thin JDBC Driver using SID
Build simple Oracle datatypes.
Call Oracle stored procedure ANALYZE_SCHEMA for PM.
CALL DBMS_UTILITY.ANALYZE_SCHEMA(?, 'ESTIMATE', 50, 0, 'FOR TABLE')
The schema could not be reverse engineered (error: 0).
ReverseEngineeringOracle.reverseEngineer :ORA-01502: index 'PM.RRADIUS_NAV_RAD_PK' or partition of such index is in unusable
state
ORA-06512: at "SYS.DBMS_DDL", line 179
ORA-06512: at "SYS.DBMS_UTILITY", line 331
ORA-06512: at line 1
Details:
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
oracle.jdbc.driver.T4CTTIoer.processError
(T4CTTIoer.java:331)
oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
oracle.jdbc.driver.T4C8Oall.receive
(T4C8Oall.java:745)
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:966)
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1170)
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3339)
oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3445)
com.mysql.grt.modules.ReverseEngineeringOracle.reverseEngineer(ReverseEngineeringOracle.java:121)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
com.mysql.grt.Grt.callModuleFunction(Unknown Source)
How to repeat:
re-run the migration on the particular schema that fails.
Suggested fix:
?