Skip Headers
Oracle® Warehouse Builder Installation and Configuration Guide
10g Release 1 (10.1)

Part Number B12150-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

E Diagnostics and Debugging

This appendix contains reference information to use in the event that you encounter errors or problems with your installation. This appendix includes the following topics:

Debugging

This section includes the following topics:

Log File Locations

  • Warehouse Builder Repository Assistant: OWB_ORACLE_HOME\owb\reposasst\log.txt.0

  • Warehouse Builder Runtime Assistant: OWB_ORACLE_HOME\owb\rtasst\log.txt.0

  • Warehouse Builder Browser Assistant: OWB_ORACLE_HOME\owb\browserasst\owbb_browser_install_log.txt.0

  • Warehouse Builder Runtime Platform Service: OWB_ORACLE_HOME\owb\log\Runtime_Repository_Name\log.0 on the Oracle Database server

  • Warehouse Builder Client: You specify the location in the Preferences screen.

Oracle Warehouse Builder is Frozen, or Hanging

If Warehouse Builder appears to be frozen or hanging, perform a stack trace as follows:

  1. At the DOS command prompt, enter: cd OWB_ORACLE_HOME\owb\bin\win32\

  2. Run owbclient.bat.

  3. When the program hangs, press Ctrl+Break.

    This produces the thread-dump. This information helpS Oracle Support to identify the problem.

Additional Error Logging for Errors and Other Unexpected Behavior

If Warehouse Builder is producing errors or exhibiting other unexpected results, additional error logging can help you or Oracle Support identify the cause.

For additional error logging:

  1. At the command prompt, navigate to:

    For Windows: OWB_ORACLE_HOME\owb\bin\win32

    For UNIX: OWB_ORACLE_HOME/owb/bin/unix

  2. Run one of the following execution files and pipe the output to a log file (for example, owbclient.bat > owbclient.log):

    • OWB Browser Assistant

      For Windows: browserinst.bat

      For UNIX: browserinst.sh

    • OWB Client

      For Windows: owbclient.bat

      For UNIX: owbclient.sh

    • OWB Design Browser

      For Windows: openDB.bat

      For UNIX: openDB.sh

    • OWB MDL File Upgrade Utility

      For Windows: mdlconvertui.bat

      For UNIX: mdlconvertui.sh

    • OWB OMB Plus

      For Windows: OMBPlus.bat

      For UNIX: OMBPlus.sh

    • OWB Repository Assistant

      For Windows: reposinst.bat

      For UNIX: reposinst.sh

    • OWB Runtime Assistant

      For Windows: runtimeinst.bat

      For UNIX: runtimeinst.sh

    • OWB Runtime Audit Browser

      For Windows: openRAB.bat

      For UNIX: openRAB.sh

    • Start Local RTP Service

      For Windows: Run the script OWB_ORACLE_HOME\owb\bin\win32\local_service_login.bat with -startup OWB_ORACLE_HOME as the parameter

      For UNIX: local_service_login.sh -startup OWB_ORACLE_HOME

    • Start OWB OC4J Instance

      For Windows: startOwbbInst.bat

      For UNIX: startOwbbInst.sh

    • Stop Local RTP Service

      For Windows: Run the script ORACLE_HOME\owb\bin\win32\local_service_login.bat with -closedown ORACLE_HOME as the parameter

      For UNIX: local_service_login.sh -closedown ORACLE_HOME

    • Stop OWB OC4J Instance

      For Windows: stopOwbbInst.bat

      For UNIX: stopOWBBInst.sh

  3. Examine the resulting log file.

    Use this log when contacting Oracle Support.

Checking Java Virtual Machine (JVM)

To check, verify, or reinstall the Java Virtual Machine (JVM) server in the database, refer to OracleMetaLink:

  1. In your Web browser, go to: http://metalink.oracle.com.

  2. Log in to OracleMetaLink, or register as a new user.

  3. Type the following terms into the Search field (note that they are separated by semicolons): INITJVM.SQL; INSTALL; JAVAVM; JVM; VERIFY; SERVER; INSTALL; CLEANUP

  4. Press Enter.

This search returns the cleanup notes for the JVM. The number of available documents frequently changes because Oracle Support creates, merges, and deletes various cleanup notes. This string of search words will return the most current and pertinent documents.

Managing the Runtime Platform Service

The Runtime Platform Service is managed automatically by the Oracle Database Server. However, if you need to manually start and stop the service, use the scripts provided with your Warehouse Builder installation for that purpose.

The scripts are in the ORACLE_HOME\owb\rtp\sql directory. To run any of these scripts manually, log on to the Runtime Platform as the Runtime Repository owner. The scripts include:

  • start_service.sql: Use this to start the Runtime Platform Service

  • stop_service.sql: Use this to stop the Runtime Platform Service

  • show_service.sql: Use this to check whether the Runtime Platform Service is available.

  • service_doctor.sql: Use this to check the install status of the Runtime Platform Service components.

To manually start, stop, and check the Runtime Platform Service:

  1. Log on to the Runtime Platform as the Runtime Repository owner.

  2. Run the required script:

    To start the Runtime Platform Service: Run the ORACLE_HOME\owb\rtp\sql\start_service.sql script.

    To stop the Runtime Platform Service: Run the ORACLE_HOME\owb\rtp\sql\stop_service.sql script.

    To check whether the Runtime Platform Service is available: Run the ORACLE_HOME\owb\rtp\sql\show_service.sql script.

    To check the install status of the Runtime Platform Service components: Run the ORACLE_HOME\owb\rtp\sql\service_doctor.sql script.

Detecting Database Server Issues When Installing on HP-UX

It is possible that when you install Warehouse Builder Runtime components on an HP-UX operating system, the following error occurs: INS0022: A spawned program error. This may be a database server issue.

To identify the database server issue:

  1. From SQL*Plus, connect to a SYS user.

    Create user test_lj identified by test_lj;
    Grant connect, resource to test_lj;
     
    
  2. Create ORACLE_HOME/owb/bin/unix/test.sh with the following contents:

    ../unix/loadjava -thin -verbose -order -resolve -user 
    'test_lj/test_lj@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hpdgpa3)(PORT=1522))(CONNECT_DATA=(SERVICE_NAME=dgpadw)))' 
    ../../lib/int/rtpserver.jar 
    
  3. Change directory to ORACLE_HOME/owb/bin/unix/.

  4. Run test.sh.

Diagnostics

This section includes the following topics:

SYS user does not have SYSDBA privileges.
Cause: In a standard database installation, the SYS user has SYSDBA credentials. You can verify this from SQL*Plus by issuing the following connect statement:

connect sys/<<sys_password>>@TNS_NAME_OF_DB as sysdba;

In a standard database installation, the preceding connect statement works because REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE and the default password file is created by the installation process.

Action: If your database is configured with REMOTE_LOGIN_PASSWORDFILE=NONE, then the statement connect sys/<<sys_password>>@TNS_NAME_OF_DB as sysdba; will fail. In this case, you have the following options:
  • Reconfigure your database with REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE and create a password file if none exists.

  • If the preceding is not an option, reconfigure your database with O7_DICTIONARY_ACCESSIBILITY=TRUE. With this setting, connect sys/<<sys_password>>@TNS_NAME_OF_DB will work, which enables Warehouse Builder Assistants to connect to SYS user.

INS0034: The Database Server needs to be configured by running Runtime Repository option locally.
You can encounter this message when running Oracle Warehouse Builder Runtime Assistant.
Cause: You do not have a database server local to the machine on which you are running Oracle Warehouse Builder Runtime Assistant.
Action: Run the Oracle Warehouse Builder Server Side installation on the machine where your Oracle database server is located and then launch the Runtime Assistant.
API5022: Cannot Connect to the Specified Repository
This error occurs when you try to connect to the Design Repository after having performed a database export or import from the Warehouse Builder repository schema.
Cause: The package NAMESPACESERVICEIMPL may be invalid. This occurs after a database export or import from the Warehouse Builder Design Repository schema if the repository owner has no SELECT privilege on SYS.V_$SESSION. You can diagnose the cause as follows:
  1. In SQL*Plus, connect to the Warehouse Builder Design Repository schema.

  2. Enter the following command at the SQL prompt:

    ALTER PACKAGE NAMESPACESERVICEIMPL compile body; 
    
  3. If Warning: Package body altered with compilation errors appears, enter the following command at the SQL prompt:

    show errors;
    
  4. The following errors mean that the Warehouse Builder repository owner has no SELECT privilege on SYS.V_$SESSION.

    PL/SQL: SQL statement ignored
    PLS-00201: Identifier 'SYS.V_$SESSION' must be declared
     
    
Action:
  1. In SQL*Plus, connect as the SYS user.

  2. At the SQL prompt, enter the following command:

    grant select on V_$SESSION to Warehouse Builder_Repository_Owner;
    
  3. Connect to the Design_Repository_Owner.

  4. Enter the following command at the SQL prompt:

    alter package NAMESPACESERVICEIMPL compile;
    
Runtime Assistant fails with LoadJava Error.
Cause: This can occur if the Oracle Database does not have the JServer option installed.
Action: Make sure that the Oracle Database has JServer option installed.
Error when specifying a SYSDBA user.
Oracle Warehouse Builder Assistants require you to provide SYSDBA credentials when installing the Oracle Warehouse Builder Design Repository or Runtime components.
Cause: In a standard database installation, the SYS user has SYSDBA credentials. You can verify this from SQL*Plus by issuing the following connect statement: connect sys/sys_password@TNS_NAME_OF_DB as sysdba;

In a standard database installation, the preceding connect statement works because REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE and the default password file is created by the installation process.

If your database is configured with REMOTE_LOGIN_PASSWORDFILE=NONE, then the statement connect sys/sys_password@TNS_NAME_OF_DB as sysdba; will fail. In this case, you have two options.

Action: Reconfigure your database with REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE and create a password file if none exists.
Action: If the preceding is not an option, reconfigure your database with O7_DICTIONARY_ACCESSIBILITY=TRUE. With this setting, the statement connect sys/sys_password@TNS_NAME_OF_DB will work, which enables the Warehouse Builder Assistants to connect to SYS user.
Regional Name and Address Data Libraries Are Not Available.
Cause: The Name and Address regional data libraries may not have been installed in the correct location.
Action: Ensure that you have successfully extracted regional data to the NAS_DATA directory.
  1. From your OWB_ORACLE_HOME, start the Name and Address Server:

    For Windows: Run owb\bin\win32\NAStart.bat.

    For UNIX: Run owb/bin/unix/NASTART.sh.

  2. Open the log file: owb\bin\admin\NASvr.log.

    The log should contain a list of installed countries.

    If there is no such list, verify that you have extracted the regional library data to the correct location. If you have extracted the data to the wrong location, you can either reinstall the data, or modify the owb\bin\admin\NameAddr.properties file to indicate the correct file path. If you modify the NameAddr.properties file, stop and restart the Name and Address Server as follows:

    For Windows: Start the server by running owb\bin\win32\NAStart.bat. Stop the server by running owb\bin\win32\NAStop.bat.

    For UNIX: Start the server by running owb/bin/unix/NAStart.sh. Stop the server by running owb/bin/unix/NAStop.sh.

  3. Once you have verified the installation, you can stop the Name and Address Server if you wish, because it is automatically started at the execution of any mapping that employs the Name and Address operator.

Lineage and impact analysis reports: Extensive tablespace requirements for materialized views.
The first time you refresh a materialized view, it is populated from the Oracle Warehouse Builder repository. The materialized view can occupy up to twice the amount of space allocated to the entire Warehouse Builder Runtime Repository.
Cause: Insufficient space has been allocated to the Warehouse Builder Runtime Repository schema.
Action: If the Warehouse Builder Runtime Repository schema is created in a tablespace that is dedicated to its use, these issues are easier to monitor. Ensure that sufficient free space exists on the physical drive for tablespace expansion. Within Oracle Enterprise Manager, ensure that the tablespace is set to Autoextend On.
Java out of memory error occurs during a batch operation.
Operations requiring large amounts of memory can result in a Java out of memory error, if the system resources (such as virtual memory) are constrained.
Cause: There is not enough virtual memory. The Warehouse Builder client runs with a maximum heap size of 384MB, as defined by the -mx parameter in the owbclient.bat file. The -Dlimit parameter in the owbclient.bat file specifies the memory threshold (80% of Dlimit) at which OWB memory manager begins to assist Java garbage collection. If you change the -mx parameter value, set the -Dlimit parameter to the same value, or at least to 90% of the value. Note that setting the -Dlimit to a low value can have a negative impact on the performance of Warehouse Builder.
Action: Increase the -Dlimit parameter in Warehouse Builder as follows:
  1. Exit Warehouse Builder.

  2. Open this file in a text editor:

    For Windows: Open the $OWBHOME\bin\win32\ombplus.bat.

    For UNIX: Open the $OWBHOME\bin\win32\owbclient.sh.

  3. Change the -Dlimit parameter to 334.

  4. Save and close the file.

  5. Restart Warehouse Builder.

ORA-01925: Maximum of 30 enabled roles exceeded
This error occurs when you are installing a Design Repository, a Runtime Repository, a Target Schema, or a Runtime User.
Cause: The maximum number of enabled roles in the database has been exceeded. When you create a Design Repository, Runtime Repository, Target Schema, or a Runtime User, new roles are created in the database assigned to the schema in question. When the number of roles exceeds the value of the MAX_ENABLED_ROLES parameter, this error occurs.
Action: Increase the value of the MAX_ENABLED_ROLES parameter in the init.ora file. When you deinstall a Design Repository, Runtime Repository, Target Schema, or Runtime User, delete the associated roles as well.
java.lang.UnsatisfiedLinkError: no ocijdbc9 in java.library.path
Internal Server Error java.lang.UnsatisfiedLinkError: no ocijdbc9 in java.library.pathat java.lang.ClassLoader.loadLibrary(ClassLoader.java:1349)at java.lang.Runtime.loadLibrary0(Runtime.java:749) This error occurs in the Repository Selection page of the Runtime Audit Browser (Oracle9iAS-integrated version) when you try to view reports for a Runtime Repository using a Net Service-based database link.
Cause: The OWB Browser OC4J instance is not configured with the correct additional environment variable.
Action: Ensure that you have followed all the steps in Chapter 2.
Internal Server Error
This is a Runtime Audit Browser Portlet Error returned by the listener.
Cause: This can occur if your Warehouse Builder Runtime Audit Browser portlet provider is not working because of your Data Source definition or your portlet provider definition.
Action: Check whether the Warehouse Builder Runtime Audit Browser portlet provider is working at the following URL:
http://hostname:port_number/owbb/providers/

For example:

http://dwlin12.us.oracle.com:7778/owbb/providers/

The following text should display:

"Congratulations! You have successfully reached your Provider's Test Page." 
Checking for components: 
Portlets are: 
Warehouse Builder Runtime Audit Browser

Verify your Data Source definition for the following regardless of whether you see the preceding text:

  • For Oracle Application Server Release 2 (9.0.2) only: Remove uix2.jar and shar.jar from the Default application library path as described in Chapter 2.

  • The Warehouse Builder Data Source must be defined with the OWBB application, and not the Default application.

  • For Data Source Class, use com.evermind.sql.OrionCMTDataSource for the Oracle Data Source.

  • Check your JDBC URL. Typically if you use something like "jdbc:oracle:thin:@dwlin12:1521:iasdb", you will be using JDBC thin driver, and "iasdb" can only be an existing SID, not Service Name. Also note there is a colon preceding "@" sign. If you must use Service Name in the JDBC URL, try a full TNS string such as "(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = dwlin16)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = ora920.us.oracle.com) ) )"

  • If you make any changes to your Data Source definition, or if you re-deploy the application, you must restart the application.

  • Check your portlet provider definition. Make sure it is defined exactly as instructed in Chapter 2.

  • Check your OC4J log under the Oracle Portal ORACLE_HOME. For example, a typical path on UNIX for a deployed OWBB application named OWBB is /usr/iasv2_portal/j2ee/owbb/log/owbb_default_island_1:

    default-web-access.log

    global-application.log

    jms.log

    rmi.log

    server.log

INS0009: Unable to connect to the database. Verify the connect information.
This error occurs when you try to connect to a database.
ORA-12154: TNS: Could not resolve service name.
This error occurs when you try to connect to a database.
ORA-12514: TNS: listener could not resolve SERVICE_NAME given in connect descriptor.
This error occurs when you try to connect to a database.
Cause: If you used the Oracle Net Easy Configuration or Oracle Net Assistant tools to create the Net Service Name entry, and you used the default option (Service Name) on the newly created Net Service Name, the parameter SERVICE_NAME is added to the TNSNAMES.ORA as a subclause to the CONNECT_DATA section in the Net Service Name entry. This replaces the (SID=<SIDname>) subclause in the previous versions of Oracle Database8i (8.1.x).
Action: Implement the TNSNAMES.ORA file as follows:
  1. Use the GLOBAL_DBNAME parameter in the LISTENER.ORA for each SID that you want to identify as a separate service. Use the value of this parameter as the value of the SERVICE_NAME parameter. You will need to activate any changes you make to LISTENER.ORA for this purpose by stopping and restarting the listener process.

  2. Use the values of the parameters existing in the INIT.ORA, namely SERVICE_NAMES and DB_DOMAIN, to determine the value of the SERVICE_NAME that you must use in TNSNAMES.ORA. The valid construction of this value is <SERVICE_NAMES>.<DB_DOMAIN> with the period separating the two INIT.ORA values. If your SERVICE_NAMES is BIKES and your DB_DOMAIN is COM, then your SERVICE_NAME is BIKES.COM.

  3. If there is no DB_DOMAIN parameter set in your INIT.ORA, or if there is no GLOBAL_DBNAME in the LISTENER.ORA, then you can use the SERVICE_NAMES from the INIT.ORA in your TNSNAMES.ORA for the SERVICE_NAME parameter.

    For example, if INIT.ORA contains SERVICE_NAMES = "TEST817" and db_domain is not set, then the TNSNAMES.ORA entry is: CONNECT_DATA =(SERVICE_NAME = "TEST817")).

  4. If you have multiple values specified in the SERVICE_NAMES parameter in the init.ora, you can use one of them. If SERVICE_NAMES is not set, then you can use DB_NAME.DB_DOMAIN parameters from the INIT.ORA file.

  5. If SERVICE_NAMES and DB_DOMAIN is not set in the INIT.ORA and there is no GLOBAL_DBNAME in the LISTENER.ORA,then your SERVICE_NAME in TNSNAMES.ORA file is be DB_NAME.

PL/SQL: ORA-04052: Error occurred when looking up remote object
This error occurs when you have upgraded to Oracle Database 10g and are trying to redeploy mappings without first redeploying connectors.
Cause: While upgrading to Oracle Database 10g, you moved your database to a new computer. Your old and new database instances do not have the same domain name. You can verify the cause by logging into SQL*Plus as a SYS user and entering the following command: SELECT * FROM GLOBAL_NAME; If the Global Name of the old database does not match that of the new database, then a domain mismatch is causing this error.
Action: Either add the domain name to the Global Name in your new database by issuing a command similar to the following statement: ALTER DATABASE RENAME GLOBAL_NAME TO xxx10G.US.ORACLE.COM; or redeploy your connectors. Refer to the Oracle Warehouse Builder User's Guide for information on deploying connectors.
IMP-00003: ORACLE error 30371 encounteredORA-30371: column cannot define a level in more than one dimension
This error occurred when you were importing your Target Schema during migration.
Cause: The Warehouse Builder Target Schema is created with the select_catalog_role privilege privilege. If you have the same dimension object defined in multiple Warehouse Builder Target Schemas, then Oracle Export creates duplicates in the export file, and this error occurs when you import.
Action: Connect as a SYS user to your prior version of Oracle Database, from which you exported the Target Schemas. Enter the following statement in SQL*Plus: revoke select_catalog_role from OLD_Target_Schema;Export the Target Schema into an Oracle .DMP file again, and then import the file into Oracle Database 10g.
Unable to connect to SQL*Plus in Oracle Database 10g
Cause: Your Oracle home or Path is not set correctly, or your Net Service Names are not configured.
Action: Ensure your Oracle home and Path are set correctly, and your Net Service Names are configured in Oracle Database 10g.
  • Ensure that ORACLE_HOME and PATH are set correctly in Oracle Database 10g. Your Oracle home directory must to point to the OWB_ORACLE_HOME. Set your PATH variable to include the OWB_ORACLE_HOME\bin directory before any other Oracle products.

  • Ensure that the TNSNames.ora file is configured correctly:

    For Windows: From the Oracle Database 10g program group, start Net Configuration Assistant and select Local Net Service Name Configuration to configure TNSNames.ora.

    For UNIX: Set ORACLE_HOME and PATH to the OWB_ORACLE_HOME for Warehouse Builder 10g Release 1 (10.1), then execute OWB_ORACLE_HOME/bin/netca to start Net Configuration Assistant. Select Local Net Service Name Configuration to configure TNSNames.ora.

ORA-04020 deadlock detected while trying to lock object or ORA-04021 timeout occurred while waiting to lock object
When creating runtime objects, the Runtime Assistant halts and produces these errors in the error log when trying to lock sys.dbms_aq.
Cause: User sessions may be pinning Advanced Queue objects.
Action: First, log in to SQL*Plus as a SYS user and run a query to identify which user sessions are pinning the Advanced Queue packages, using the following query as an example:

column s.sid format a5;column s.serial# format a8;column s.username format a10;column objectname format a10;select distinct s.sid, s.serial#, s.username, x.kglnaobj as objectname from dba_kgllock l, v$session s, x$kgllk x where l.kgllktype = 'Pin' and s.saddr = l.kgllkuse and s.saddr = x.kgllkuse and x.kglnaobj in ('DBMS_AQ', 'DBMS_AQADM');

The following is an example of the output you receive:

SID SERIAL# USERNAME OBJECTNAME

--- ------- -------- ----------

9 29623 RTU_4942 DBMS_AQ

Noting the SID and Serial Number, issue the following command to kill the user sessions:

ALTER SYSTEM KILL SESSION 'SIDNoted, SerialNumberNoted';

For example, type the following to kill the session listed in the sample output for this error:

ALTER SYSTEM KILL SESSION '9,29623';