English

Problem: Using Oracle's import utility with an ST_Geometry attribute generates a warning

Description

When using the Oracle import utility to append data to existing tables, Oracle reports the following warning:

"Note: table contains ROWID column, values may be obsolete".

The following example demonstrates using the Oracle import utility to import the build.exp file with the ignore equals yes option. The ignore option instructs Oracle to ignore the existence of the object and append the rows from the export file to the existing table.

Code:
D:\> imp tb/password file=build.exp tables=(building) ignore=y

. importing TB's objects into TB
. importing TB's objects into TB
. . importing table "BUILDING" 13 rows imported
. . importing table "S158_IDX$"
Note: table contains ROWID column, values may be obsolete 21 rows imported
Import terminated successfully without warnings.


The import utility appends the rows for the st_spatial_index table "S158_IDX" that are invalid rows into the index. The warning message "Note: table contains ROWID column, values may be obsoletes" indicates the rows inserted reference ROWIDs, which are invalid.

Cause

The cause of the problem is the Oracle import utility. The import should not be importing/appending rows to a domain index (st_spatial_index), because the creation of the rows in the table generates the entries in the index.

Solution or Workaround

If the objective is to append rows to an existing table with an ST_Geometry attribute by using the ignore=y option, the Oracle export should be performed without the spatial index on the table being exported.

Note:
If the import with spatial index has already been done, then re-creating/rebuilding the spatial index fixes the problem.