Home | Contact Us | Submit Troubleshooting Info | Search | Help


    Output | Software Solutions | Proofing | Color, Screening and Calibration | Scanning | Digital Photography | Consumables | POS


Oracle log file, creoAlrt.log, shows error "KCF: write/open error block=0xnnnnn online=1"


Product

  Prinergy Connect 2.1 ; Prinergy Direct 2.1 ; Prinergy Access 2.1 ; Prinergy Powerpack 2.1

Platform

 

Intel

Operating system

 

Windows 2000


Error

 

The following error appears in the D:\Ora816\Rdbms\Trace\creoAlrt.log file:

KCF: write/open error block=0xf7b38 online=1

file=3 J:\ORANT\ORACLE\DATA\USR1CREO.ORA

error=27069 txt: 'OSD-04026: Invalid parameter passed. (OS 1014584)'

Automatic datafile offline due to write error on

file 3: J:\ORANT\ORACLE\DATA\USR1CREO.ORA

KCF: write/open error block=0xb000a online=0

file=3 J:\ORANT\ORACLE\DATA\USR1CREO.ORA

error=27069 txt: 'OSD-04026: Invalid parameter passed. (OS 720906)'


Symptoms

 

Prinergy crashes with database errors.

The Orant\Oracle\Data\Usr1creo.ora datafile is just slightly smaller than 4, 8, 12, or 16 GB in size.


Cause

  Oracle is taking the datafile offline when it is attempting to extend the datafile onto a 4 GB boundary. The system has encountered the Oracle bug # 1668488.

Solution

 

1. Perform a point-in-time database recovery(this must be done by an Oracle expert in the Creo Response Center).

2. Update the DBCS_CompressDatabase package so that Oracle will extend 4 MB beyond the 4 GB boundary. See your local RSS2 for the updated file.

If the only database backup you have was created after the problem occurred, you can still attempt to restore it. You must then drop the last object in the database and then shrink the datafile below the 4 GB boundary and install the new DBCS_CompressDatabase.sql package. After that re-create the dropped object.

1. Restore the database from the last backup. Perform a point-in-time recovery.

2. Find what object owns the last extent in the datafile.

- In SQLPLUS, enter: SELECT segment_type, segment_name FROM dba_extents WHERE block_id in (SELECT MAX(block_id) FROM dba_extents);

- The result will be the last object within the datafile. If the object is an INDEX, you can drop the object and recreate it. If the object is a table, contact your local Oracle database SME.

3. To drop an index, enter: DROP INDEX <index_name>;

4. Copy the DBCS_CompressDatabase.sql into %AraxiHome%\CreoAraxi\Setup\Config\Sql\Packages.

5. Load the new DBCS_CompressDatabase.sql package.

- In a command prompt window, change to the %AraxiHome%\CreoAraxi\Setup\Config\Sql\Packages directory.

- In SQLPLUS, connected as the user Prinergy, enter: @DBCS_CompressDatabase.sql

6. Shrink the datafile.

- In SQLPLUS, enter: EXEC DBCS_CompressDatabase.ShrinkAllTablespaces;

7. Recreate the dropped object. Look in the %AraxiHome%\CreoAraxi\Setup\Config\Sql\Gen_Sql\createTables.sql for the commands to create the object. If you cannot find it in that file, do a search through the %AraxiHome%\CreoAraxi\Setup\Config\Sql folder.

To prevent this problem from occurring in the future, install 2.1.0.20/2.2.1.1 as a minimum, and 2.1.0.21/2.2.1.3 when they are released.

Permanent fix:


See also

 


Keywords

 

oracle


Technical contact(s)
 

Stan Yoshida

Submitted by
 

Stan Yoshida

Date submitted
 

9 May 2003


    Copyright © 2005 Creo Inc. All rights reserved. Confidential. Back to top.