Monday, May 26, 2008

Oracle parameter audit_trail and "alter database open read only"

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

=================================================================

! Oracle database auditing has to be turned off before altering the database in READ ONLY mode.
1. Got ORA-16006 when running "alter database open read only":
Error: ORA-16006
Text: audit_trail destination incompatible with database open mode
---------------------------------------------------------------------------
Cause: The audit_trail initialization parameter was set to "DB" (or TRUE),
which is incompatible with a database opened for read-only access.
Action: When the database is opened for read-only access, the audit_trail
initialization parameter can only be set to "OS" or "NONE" (FALSE).
.
2. change the value of audit_trail=none in initnanprod1.ora
audit_trail = none
3. open the database in read only mode
sqlplus /nolog
SQL*Plus: Release 10.2.0.3.0 - Production on Mon May 26 13:26:43 2008
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
SQL> conn / as sysdba;
Connected to an idle instance.
SQL> startup nomount;
ORACLE instance started.
Total System Global Area 178227688 bytes
Fixed Size 104936 bytes
Variable Size 110841856 bytes
Database Buffers 67108864 bytes
Redo Buffers 172032 bytes
SQL> alter database mount;
Database altered.
SQL> alter database open read only;
Database altered.
4. log in as system
create user test identified by aaa;
ORA-00604: error occurred at recursive SQL level 1
ORA-00372: file 1 cannot be modified at this time
ORA-01110: data file 1: '/fs/u01/oracle_data/testdb/system01.dbf'

Tuesday, May 6, 2008

Solaris tip web sites

The following web pages contain very good stuff for Solaris tips.

http://www.pcnetcom.net/solaris.htm: Solaris tips

http://www.columbia.edu/~rtt2101/iaoq/: Solaris Infrequently Asked and Obscure Questions

http://www.bolthole.com/solaris/solaris_hints.html: Solaris hints

/dev/null 2>&1

In UNIX environment, the following situation happens frequently:
script.sh > /dev/null 2>&1

What is this for?

"> /dev/null" means send standard output to the 'bit bucket" or in other words, throw it away.

"2>&1" means "redirect standard error (2) to the same place as standard output (1.)

Friday, March 21, 2008

2008 ESRI Developer Summit (DevSummit)

I went to Palm Springs to attend the 2008 ESRI Developer Summit (DevSummit) this week March 16-20. This is the first time I attended developer summit, and the first time to the United States.

The conference provided tons of information through various sessions. I really enjoyed it.

Session details can be found at the following link. Some powperpoints have been available to download:
Developer Summit 2008 Details

James Fee posted his reflection on the 2008 ESRI Developer Summit (DevSummit):
Reflection on the 2008 ESRI Developer Summit

Since I am not a developer, I really do not have too much interest in those technically detailed coding sessions. But I had the chance to talk with ESRI product engineers and developers about my problems and concerns. They were happy to help and log my issues. Another good thing I enjoyed is the chance to meet those GIS professionals from all over the world and chat about what they are doing with ESRI products.

I liked the Microsoft SQL Server session, which was informative, vivid, interesting, beers, T-shirts, one of the best session I ever had.

Thursday, March 20, 2008

FME Worldwide User Conference 2008

I attended the FME Worldwide User Conference 2008 in Vancouver during March 6-7. It was a very productive event. I enjoyed the sessions.

Safe has post the presentatins on the web: FME USER CONFERENCE PRESENTATIONS.

There are two blog postings:
FME User Conference report
KML Goodness from the FME User Conference

Tuesday, January 22, 2008

SDO_GEOMETRY Layers and -g Option in ArcSDE Commands

“-g” option in some ArcSDE administration commands is used to specify particularities for creating a spatial index, such as “sdelayer -o add”.

For ArcSDE to store geometries in Oracle Spatial’s SDO_GEOMETRY data type, there are three types of spatial indexes: RTREE, FIXED and HYBRID. Oracle and ESRI recommend using RTREE spatial indexes since Oracle 9i. So “-g RTREE” is used in ArcSDE commands that accept “-g” option.

SDO_GEOMETRY layers cannot use the grid-based spatial index used with ArcSDE compressed binary storage.

Examples:

-- load shapefile to a layer of SDO_GEOMETRY
shp2sde -o create -l sdo_layer,shape -f shape_file -a all -g RTREE -e a -u SDE_USER

-- register a SDO_GEOMETRY table as an ArcSDE layer
sdelayer -o register -l sdo_layer,GEOM -e a+ -g RTREE -C OBJECTID,USER -R 2 -i 5151 -s sde_server -u sde_user

Refer to ESRI Technical Article 26511.

Get Area and Length of Features Stored in Oracle Spatial

The area and length of features are not pre-calculated and stored by Oracle’s SDO_GEOMETRY data type constructor functions. SDO_GEOMETRY type does not have places to store area and length values.

Geometric functions SDO_GEO.SDO_AREA and SDO_GEOM.SDO_LENGTH can be used to calculate the values in SQL queries when needed.

-- calculate the area
SELECT OBJECTID, SDO_GEOM.SDO_AREA(SHAPE, 0.005) FROM THE_LAYER;

-- calculate the length
SELECT OBJECTID, SDO_GEOM.SDO_LENGTH(SHAPE, 0.005) FROM THE_LAYER;

0.005 is the tolerance.

Saturday, January 19, 2008

Notes on Auditing in Oracle Database

Notes on Auditing in Oracle Database (10g)

Auditing purposes:
--auditing what kinds of privileges are being used to uncover abuse or misuse of privileges
--auditing what objects are being accessed


Auditing location depending on initialization parameter AUDIT_TRAIL (SYS.AUD$, OS file):
--NONE, FALSE: disable auditing
--OS: enable auditing. Send audit results to an OS file
--DB, TRUE: enable auditing and send to SYS.AUD$
--DB_EXTENDED: enable auditing and send results to SYS.AUD$, store additional info in BLOB columns SQLBIND and SQLTEXT.


Auditing types

1. Statement auditing: audit SQL statements by the type of statement regardless of the specific schema objects being accessed. One or more users can be specified to be audited for a particular statement.

AUDIT sql_statement_clause BY {SESSION ACCESS} WHENEVER [NOT] SUCCESSFUL;
--ACCESS: every time
--SESSION: once, default
--WHENEVER SUCCESSFUL: successful action, statement did not generate an error
--WHENEVER NOT SUCCESSFUL: unsuccessful action, statement fails for insufficient privilege, syntax error, running out of space in the tablespace
--statement option:
--all, includes CLUSTER, CONTEXT, DATABASE_LINK, DIMENSION, DIRECTORY, INDEX, MATERIALIZED VIEW, NOT EXISTS, PROCEDURE, PROFILE, PUBLIC SYNONYM, ROLE, ROLLBACK SEGMENT, SEQUENCE, SESSION, SYNONYM, SYSTEM AUDIT, SYSTEM GRANT, TABLE, TABLESPACE, TRIGGER, TYPE, USER, VIEW.
--explicitly specified statements: ALTER SEQUENCE, ALTER TABLE, COMMENT TABLE, DELETE TABLE, EXECUTE PROCEDURE, GRANT DIRECTORY, GRANT PROCEDURE, GRANT SEQUENCE, GRANT TABLE, GRANT TYPE, INSERT TABLE, LOCK TABLE, SELECT SEQUENCE, SELECT TABLE, UPDATE TABLE

--example 1: audit index by scott
SQL>audit index by scott whenever successful;
SQL>select username, to_char(timestamp, 'MM/DD/YY HH24:MI') timestamp, obj_name, action_name, sql_text from dba_audit_trail where username='SCOTT';
SQL>noaudit index by scott;

--example 2: login audit
SQL>audit session whenever successful;
SQL>audit session whenever not successful;
SQL>select username, to_char(timestamp, 'MM/DD/YY HH24:MI') timestamp, obj_name, returncode, action_name, sql_text from dba_audit_trail where action_name in ('LOGON','LOGOFF') order by timestamp desc;

--example 3: Oracle database startup and shutdown audit
--shutdown immediate in SYS.AUD$
--startup: folder $ORACLE_HOME/rdbms/audit/ (determined by init parameter audit_file_dest)

--example: protect audit trail
SQL>audit all on sys.aud$ by access;


2. Privilege auditing: audit system privileges, such as CREATE TABLE, ALTER INDEX. Can specify one or more particular users as target of the audit.
--audit SYSDBA and SYSOPER privilege:
--set initialization parameter audit_sys_operations=true
--audit OS files sent to audit_file_dest

--example 1: audit every time
SQL>audit ALTER TABLESPACE by access whenever successful;


3. Schema object auditing: audit specific statements operating on a specific schema object (UPDATE). Applies to all users in the database.
--AUDIT schema_audit_clause BY {SESSION ACCESS} WHENEVER [NOT] SUCCESSFUL;
--schema_audit_clause: ALTER, AUDIT, COMMENT, DELETE, FLASHBACK, GRANT, INDEX, INSERT, LOCK, READ, RENAME, SELECT, UPDATE

--example 1:
SQL>audit insert, update on hr.jobs by access whenever successful;


4. Fine-grained auditing (FGA): audit table access and privileges based on the contents of the objects being accessed. DBMS_FGA to set up a policy.
--ADD_POLICY, DROP_POLICY, DISABLE_POLICY, ENABLE_POLICY
--DBA_FGA_AUDIT_TRAIL

--example: audit access to salary column
begin
dbms_fga.add_policy(
object_schema => 'HR',
object_name => 'EMPLOYESS',
policy_name => 'SAL_SELECT_AUDIT',
audit_condition => 'instr(job_id, ''_MAN'') > 0',
audit_column => 'SALARY'
);
end;



Auditing-related dictionary views
AUDIT_ACTIONS
DBA_AUDIT_OBJECT
DBA_AUDIT_POLICIES
DBA_AUDIT_SESSION
DBA_AUDIT_STATEMENT
DBA_AUDIT_TRAIL
DBA_FGA_AUDIT_TRAIL
DBA_COMMON_AUDIT_TRAIL
DBA_OBJ_AUDIT_OPTS
DBA_PRIV_AUDIT_OPTS
DBA_STMT_AUDIT_OPTS



Notes:
1. A non-DBA user within an Oracle database cannot enable the auditing features.

2. If auditing has been enabled, there are data dictionary views that anyone can use to view the audit trail.

3. The single audit trail table: SYS.AUD$.

4. USER_AUDIT_TRAIL: all audit records for many different types of actions, many of the columns may be inapplicable for any given row.
USER_AUDIT_OBJECT: for statements concerning objects
USER_AUDIT_SESSION: for connections and disconnections
USER_AUDIT_STATEMENT: for grant, revoke, audit, noaudit, and alter system commands issued by the user

DBA_AUDIT_TRAIL:
DBA_AUDIT_OBJECT: for statements concerning objects
DBA_AUDIT_SESSION: for connections and disconnections
DBA_AUDIT_STATEMENT: for grant, revoke, audit, noaudit, and alter system commands

5. View audit options:
DBA_OBJ_AUDIT_OPTS: describes auditing options on all objects.
USER_OBJ_AUDIT_OPTS: describes auditing options on all objects owned by the current user. This view does not display the OWNER column.
ALL_DEF_AUDIT_OPTS: contains default object-auditing options that will be applied when objects are created.
-/-: no default auditing
S/-: auditing whenever successful
-/S: auditing whenever not successful

6. View commands that can be audited:
AUDIT_ACTIONS: describes audit trail action type codes. This table can be used to map action type numbers to action type names.

7. DBA views without USER counterparts:
DBA_AUDIT_EXISTS:
DBA_PRIV_AUDIT_OPTS:
DBA_STMT_AUDIT_OPTS:
STMT_AUDIT_OPTION_MAP:


Reference: Oracle 10g DBA Handbook

Wednesday, January 16, 2008

ORA-06550

 Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

===================================================================

ORA-06550: line string, column string:string

Cause: A PL/SQL compilation error has occurred. The numbers given for line and column are the location in the PL/SQL block where the error occurred.

Action: Refer to the following PL/SQL messages for more information about the error.

sde.log:

db_sda_execute_stmt::OCIStmtExecute (6550)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-04044

ORA-04044: procedure, function, package, or type is not allowed here

Cause: A procedure, function, or package was specified in an inappropriate place in a statement.

Action: Make sure the name is correct or remove it.

sde.log:

[01/15/2008 13:52:40;SdeId=5924336;Client=gispc] db_describe_select describe error (4044), column 1.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02201

ORA-02201: sequence not allowed here

Cause: An attempt was made to reference a sequence in a from-list.

Action: A sequence can only be referenced in a select-list.

sde.log:

[01/15/2008 13:52:26;SdeId=5924336;Client=gispc] db_describe_select describe error (2201), column 1.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02019

ORA-02019: connection description for remote database not found

Cause: An attempt was made to connect or log in to a remote database using a connection description that could not be found.

Action: Specify an existing database link. Query the data dictionary to see all existing database links. See your operating system-specific Net8 documentation for valid connection descriptors.

sde.log:
[01/15/2008 13:52:49;SdeId=5924336;Client=gispc] db_describe_select describe error (2019), column 1.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01543

ORA-01543: tablespace 'string' already exists

Cause: Tried to create a tablespace which already exists

Action: Use a different name for the new tablespace

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01502

ORA-01502: index 'string.string' or partition of such index is in unusable state

Cause: An attempt has been made to access an index or index partition that has been marked unusable by a direct load or by a DDL operation

Action: DROP the specified index, or REBUILD the specified index, or REBUILD the unusable index partition

Metalink:
Note:281500.1
-- initialization parameter SKIP_UNUSABLE_INDEXES in Oracle Database
-- Setting this parameter to TRUE disables error reporting of indexes and index partitions marked UNUSABLE.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01119

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.


===============================================================
ORA-01119: error in creating database file 'string'

Cause: Usually due to not having enough space on the device.

Action: none

imp.log:
. importing SYSTEM's objects into SYSTEM
IMP-00017: following statement failed with ORACLE error 1119:
"CREATE TABLESPACE "RBSBIG" DATAFILE '/fs/u02/oracle_data/mydb/rbsbig01"
".dbf' SIZE 629145600 , '/fs/u02/oracle_data/mydb/rbsbig02.dbf' SIZ"
"E 629145600 , '/fs/u02/oracle_data/mydb/rbsbig03.dbf' SIZE 8388608"
"00 DEFAULT STORAGE(INITIAL 2097152 NEXT 2097152 MINEXTENTS 2 MAXEXTE"
"NTS 2147483645 PCTINCREASE 1) ONLINE PERMANENT "
IMP-00003: ORACLE error 1119 encountered
ORA-01119: error in creating database file '/fs/u02/oracle_data/mydb/rbsbig01.dbf'
ORA-27040: file create error, unable to create file
SVR4 Error: 2: No such file or directory

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00980

ORA-00980: synonym translation is no longer valid

Cause: The synonym used is based on a table, view, or synonym that no longer exists.

Action: Replace the synonym with the name of the object it references or re-create the synonym so that it refers to a valid table, view, or synonym.

sde.log:
[01/15/2008 13:52:40;SdeId=5924336;Client=GISPC] db_describe_select describe error (980), column 1.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00907

ORA-00907: missing right parenthesis ")"

Cause: A left parenthesis has been entered without a closing right parenthesis, or extra information was contained in the parentheses. All parentheses must be entered in pairs.

Action: Correct the syntax and retry the statement.

sde.log
db_sda_execute_stmt::OCIStmtExecute (907)
.
[01/08/2008 06:57:27;SdeId=5794874;Client=GISPC] db_array_fetch_attrs OCI Fetch Error (907)
[01/08/2008 06:57:27;SdeId=5794874;Client=GISPC] load_buffer error -51

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00439

ORA-00439: feature not enabled: string

Cause: The specified feature is not enabled.

Action: Do not attempt to use this feature.


All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

Saturday, January 12, 2008

ORA-04063

ORA-04063: %s has errors

Cause: Attempt to execute a stored procedure or use a view that has errors. For stored procedures, the problem could be syntax errors or references to other, non-existent procedures. For views, the problem could be a reference in the view’s defining query to a non-existent table. Can also be a table which has references to non-existent or inaccessible types.

Action: Fix the errors and/or create referenced objects as necessary.

sde.log
[12/02/2007 06:09:17;SdeId=5502900;Client=GISServer] db_describe_select describe error (4063), column 1.


All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

Sunday, December 30, 2007

ORA-13032

ORA-13032: Invalid NULL SDO_GEOMETRY object

Cause: There are invalid SDO_POINT_TYPE or SDO_ELEM_INFO_ARRAY or SDO_ORDINATE_ARRAY fields in the SDO_GEOMETRY object.

Action: Verify that the geometries have valid fields. To specify a NULL geometry, specify the whole SDO_GEOMETRY as NULL instead of setting each field to NULL.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13031

ORA-13031: Invalid Gtype in the SDO_GEOMETRY object for point object

Cause: There is an invalid SDO_GTYPE in the SDO_GEOMETRY object where the VARRAYs are NULL but the SDO_GTYPE is not of type POINT.

Action: Verify that the geometries have valid gtypes.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13030

ORA-13030: Invalid dimension for the SDO_GEOMETRY object

Cause: There is a mismatch between the dimension in the SDO_GTYPE and dimension in the SDO_GEOM_METADATA for the SDO_GEOMETRY object.

Action: Verify that the geometries have valid dimensionality.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13029

ORA-13029: Invalid SRID in the SDO_GEOMETRY object

Cause: There is an invalid SDO_SRID in the SDO_GEOMETRY object. The specified SRID may be outside the valid SRID range.

Action: Verify that the geometries have valid SRIDs.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13028

ORA-13028: Invalid Gtype in the SDO_GEOMETRY object

Cause: There is an invalid SDO_GTYPE in the SDO_GEOMETRY object.

Action: Verify that the geometries have valid gtypes.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13027

ORA-13027: unable to read dimension definition from string

Cause: There was a problem reading the dimension definition from the _SDODIM table.

Action: Verify that the _SDODIM table exists and that the appropriate privileges exist on the table. Address any other errors that might appear with the message.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13026

ORA-13026: unknown element type for element string.string.string

Cause: The SDO_ETYPE column in the _SDOGEOM table contains an invalid geometric element type value.

Action: Redefine the geometric element type in the _SDOGEOM table for the specified geometric element using one of the supported SDO_ETYPE values. See the Oracle Spatial documentation for an explanation of SDO_ETYPE and its possible values.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13025

ORA-13025: polygon does not close

Cause: The coordinates defining a polygonal geometric element represent an open polygon.

Action: Redefine the coordinates of the polygon.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13024

ORA-13024: polygon has less than three segments

Cause: The coordinates defining a polygonal geometric element represent less than three segments.

Action: Redefine the coordinates for the polygon.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13023

ORA-13023: interior element interacts with exterior element

Cause: An interior element of a geometric object interacts with the exterior element of that object.

Action: Redefine coordinates for the geometric elements.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13022

ORA-13022: polygon crosses itself

Cause: The coordinates defining a polygonal geometric element represent crossing segments.

Action: Redefine coordinates for the polygon.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13021

ORA-13021: element not continuous

Cause: The coordinates defining a geometric element are not connected.

Action: Redefine coordinates for the geometric element.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13020

ORA-13020: coordinate is NULL

Cause: A vertex coordinate has a NULL value.

Action: Redefine vertex coordinate to have non-NULL value.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13019

ORA-13019: coordinates out of bounds

Cause: Vertex coordinates lie outside the valid range for specified dimension.

Action: Redefine vertex coordinates within specified boundaries.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13017

ORA-13017: unrecognized line partition shape

Cause: The shape of a 2-D line partition could not be determined.

Action: This is an internal error. Contact Oracle Support Services.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13016

ORA-13016: specified topology [string] is invalid

Cause: The specified topology did not exist in the database, or some components of the topology were missing from the database.

Action: Check the specified topology by executing the SDO_TOPO.validate_topology function.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13014

ORA-13014: a topology identifier outside the range of 1 to 8 was specified

Cause: A topology identifier outside the range of 1 to 8 was specified.

Action: Specify a topology in the range of 1 to 8.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13013

ORA-13013: the specified topology was not INTERIOR or BOUNDARY

Cause: A topology was specified that was not INTERIOR or BOUNDARY.

Action: Make sure that INTERIOR or BOUNDARY is used to describe an HHCODE’s topology.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13012

ORA-13012: an invalid window type was specified

Cause: An invalid window type was specified.

Action: Valid window types are RANGE, PROXIMITY, POLYGON.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13011

 Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

===================================================================

ORA-13011: value is out of range

Cause: A specified dimension value is outside the range defined for that
dimension.

Action: Make sure that all values to be encoded are within the defined dimension range.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13010

ORA-13010: an invalid number of arguments has been specified

Cause: An invalid number of arguments was specified for an SDO function.
Action: Verify the syntax of the function call.

Note: Oracle Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

Thursday, December 27, 2007

Oracle errors

I compiled a list of Oracle errors I encountered while I worked with Oracle database. Some of the Oracle errors appeared in ArcSDE sde log file and giomgr log file. So I put them together in one post.

ORA-13032
ORA-13031
ORA-13030
ORA-13029
ORA-13028
ORA-13027
ORA-13026
ORA-13025
ORA-13024
ORA-13023
ORA-13022
ORA-13021
ORA-13020
ORA-13019
ORA-13017
ORA-13016
ORA-13014
ORA-13013
ORA-13012
ORA-13011
ORA-13010
ORA-28000
ORA-13226
ORA-06550
ORA-04063
ORA-04044
ORA-04031
ORA-03135
ORA-03127
ORA-03114
ORA-03106
ORA-02441
ORA-02391
ORA-02292
ORA-02275
ORA-02266
ORA-02264
ORA-02260
ORA-02201
ORA-02035
ORA-02019
ORA-01795
ORA-01950
ORA-01917
ORA-01861
ORA-01858
ORA-01847
ORA-01843
ORA-01779
ORA-01775
ORA-01752
ORA-01749
ORA-01747
ORA-01927
ORA-01756
ORA-01758
ORA-01722
ORA-01720
ORA-01659
ORA-01658
ORA-01653
ORA-01652
ORA-01650
ORA-01543
ORA-01536
ORA-01502
ORA-01455
ORA-01441
ORA-01427
ORA-01405
ORA-01403
ORA-01400
ORA-01149
ORA-01119
ORA-01089
ORA-01036
ORA-01034
ORA-01031
ORA-01008
ORA-01003
ORA-01000
ORA-00980
ORA-00959
ORA-00947
ORA-00942
ORA-00936
ORA-00933
ORA-00923
ORA-00920
ORA-00918
ORA-00917
ORA-00908
ORA-00907
ORA-00904
ORA-00903
ORA-00604
ORA-00439
ORA-00054
ORA-00001

All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

More Oracle DBA tips, please visit Oracle DBA Tips 

ArcSDE Errors

While using ESRI's spatial database engine ArcSDE, I encountered some ArcSDE errors in the sde log file and the giomgr log file. I took the error codes from ESRI, added my comments about reasons or solutions and posted here. Hopefully it is useful.

ArcSDE error codes (-1000 to -1018)
ArcSDE error codes (-431 to -444)
ArcSDE error codes (-421 to -430)
ArcSDE error codes (-410 to -420)
ArcSDE error codes (-401 to -409)
ArcSDE error codes (-391 to -400)
ArcSDE error codes (-381 to -390)
ArcSDE error codes (-371 to -380)
ArcSDE error codes (-361 to -370)
ArcSDE error codes (-351 to -360)
ArcSDE error codes (-341 to -350)
ArcSDE error codes (-331 to -340)
ArcSDE error codes (-321 to -330)
ArcSDE error codes (-311 to -320)
ArcSDE error codes (-301 to -310)
ArcSDE error codes (-291 to -300)
ArcSDE error codes (-281 to -290)
ArcSDE error codes (-271 to -280)
ArcSDE error codes (-261 to -270)
ArcSDE error codes (-251 to -260)
ArcSDE error codes (-241 to -250)
ArcSDE error codes (-231 to -240)
ArcSDE error codes (-221 to -230)
ArcSDE error codes (-211 to -220)
ArcSDE error codes (-201 to -210)
ArcSDE error codes (-191 to -200)
ArcSDE error codes (-181 to -190)
ArcSDE error codes (-171 to -180)
ArcSDE error codes (-161 to -170)
ArcSDE error codes (-151 to -160)
ArcSDE error codes (-141 to -150)
ArcSDE error codes (-131 to -140)
ArcSDE error codes (-121 to -130)
ArcSDE error codes (-111 to -120)
ArcSDE error codes (-101 to -110)
ArcSDE error codes (-91 to -100)
ArcSDE error codes (-81 to -90)
ArcSDE error codes (-71 to -80)
ArcSDE error codes (-61 to -70)
ArcSDE error codes (-51 to -60)
ArcSDE error codes (-41 to -50)
ArcSDE error codes (-30 to -40)
ArcSDE error codes (-21 to -30)
ArcSDE error codes (-11 to -20)
ArcSDE error codes (0 to -10)

More Oracle DBA tips, please visit Oracle DBA Tips 

ORA-28000

 Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

====================================================================
 

ORA-28000: the account is locked

Cause: The user has entered wrong password consequently for maximum number of times specified by the user's profile parameter FAILED_LOGIN_ATTEMPTS, or the DBA has locked the account

Action: Wait for PASSWORD_LOCK_TIME or contact DBA

Sde.log:
[05/07/2007 15:29:47;SdeId=0;Client=GIOMGR] Error (-51):Couldn't Start Server Task.
DB_open_instance()::db_connect (OCI8) error: 28000
CAN'T OPEN INSTANCE: ESRI_SDE.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-13226

ORA-13226: interface not supported without a spatial index

Cause: The geometry table does not have a spatial index.

Action: Verify that the geometry table referenced in the spatial operator has a spatial index on it.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-03127

ORA-03127: no new operations allowed until the active operation ends

Cause: An attempt was made to execute a new operation before the active non-blocking operation completed or a new operation was attempted before all the pieces of a column were inserted or fetched.

Action: Execute the new operation after the non-blocking operation completes. If piecewise binds/defines were done, execute the new operation after all the pieces have been inserted or fetched.

sde log:
db_array_fetch_attrs OCI Fetch Error (3127)
load_buffer error -51
db_sda_execute_stmt::OCIStmtExecute (3127)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-03114

ORA-03114: not connected to ORACLE

Cause: A call to Oracle was attempted when no connection was established. Usually this happens because a user-written program has not logged on. It may happen if communication trouble causes a disconnection. In addition, this message could occur when ALTER SYSTEM KILL SESSION or ALTER SYSTEM DISCONNECT SESSION were issued with the IMMEDIATE qualifier because, in those cases, the client's connection to the database is terminated without waiting for the client to issue a request.

Action: Try again. If the message recurs and the program is user written, check the program.

sde log:
Describe Cache Table [SDE.GDB_ObjectClasses] Reg_Id [4] NumCols [2]
[02/28/2006 12:28:18;SdeId=432;Client=GISPC] SDE_Oracle Error: 3114 ORA-03114: not connected to ORACLE
[02/28/2006 12:28:18;SdeId=432;Client= GISPC] db_array_fetch_attrs OCI Fetch Error (3114)
[02/28/2006 12:28:18;SdeId=432;Client= GISPC] SDE_Oracle Error: 3114 ORA-03114: not connected to ORACLE

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-03106

 Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

===================================================================


ORA-03106: fatal two-task communication protocol error

Cause: The communication path between Oracle and the user task has stopped. This is an internal error message not usually issued.

Action: Contact Oracle Support Services.

Note: There is an ESRI whitepaper about this error.
Subject: Converting from LONG RAW to BLOB in an ArcSDE for Oracle geodatabase
http://support.esri.com/index.cfm?fa=knowledgebase.whitepapers.viewPaper&PID=66&MetaID=1272

The errors can be seen in the sde error log (with SDEVERBOSE turned on).

[Thu Jul 06 12:39:27 2006] [1360] [olive] db_sda_execute_stmt::OCIStmtExecute (3106)
.[Thu Jul 06 12:39:27 2006] [1360] [olive] SDE_Oracle Error: 3106 ORA-03106: fatal two-task communication protocol error
[Thu Jul 06 12:39:27 2006] [1360] [olive] db_array_fetch_spix_recs OCI Fetch Error (3106)
[Thu Jul 06 12:39:27 2006] [1360] [olive] SDE_Oracle Error: 3106 ORA-03106: fatal two-task communication protocol error
[Thu Jul 06 12:39:27 2006] [1360] [olive] db_get_spix_fidlist Fetch Error

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02441

ORA-02441: Cannot drop nonexistent primary key

Cause: alter table drop primary key - primary key does not exist.

Action: None

Note: get the error in sde.log when deleting a layer without a primary key in ArcCatalog
db_sda_execute_stmt::OCIStmtExecute (2441)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02391

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.
==================================================================
 


ORA-02391: exceeded simultaneous SESSIONS_PER_USER limit

Cause: An attempt was made to exceed the maximum number of concurrent sessions allowed by the SESSION_PER_USER clause of the user prfile.

Action: End one or more concurrent sessions or ask the database administrator to increase the SESSION_PER_USER limit of the user profile.

Sde.log:
Instance initialized for GISUSER . . .
DB_open_instance()::db_connect (OCI8) error: 2391
CAN'T OPEN INSTANCE: ESRI_SDE.
Spatial Engine Connection Failed (-51).
Cannot Get Access to Instance ESRI_SDE

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02292

ORA-02292: integrity constraint violated - child record found

Cause: You tried to DELETE a record from a parent table (as referenced by a foreign key), but a record in the child table exists.

Action: The options to resolve this Oracle error are:
This error commonly occurs when you have a parent-child relationship established between two tables through a foreign key. You then have tried to delete a value into the parent table, but the corresponding value exists in the child table.
To correct this problem, you need to update or delete the value into the child table first and then you can delete the corresponding value into the parent table.

Sde.log:
db_sda_execute_stmt::OCIStmtExecute (2292)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02275

ORA-02275: such a referential constraint already exists in the table

Cause: Self-evident.

Action: Remove the extra constraint.

Sde.log:
db_sda_execute_stmt::OCIStmtExecute (2275)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02266

ORA-02266: unique/primary keys in table referenced by enabled foreign keys

Cause: An attempt was made to truncate a table with unique or primary keys referenced by foreign keys enabled in another table. Other operations not allowed are dropping/truncating a partition of a partitioned table or an ALTER TABLE EXCHANGE PARTITION.

Action: Before performing the above operations the table, disable the foreign key constraints in other tables. You can see what constraints are referencing a table by issuing the following command:

SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME = "tabnam";

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02264

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

I have stopped updating the blog.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.
==================================================================
 
ORA-02264: name already used by an existing constraint

Cause: The specified constraint name has to be unique.

Action: Specify a unique constraint name for the constraint

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02260

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

I have stopped updating the blog.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.
==================================================================
 
ORA-02260: table can have only one primary key

Cause: Self-evident.

Action: Remove the extra primary key.

Sde.log:
db_sda_execute_stmt::OCIStmtExecute (2260)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-02035

ORA-02035: illegal bundled operation combination

Cause: User requested that the UPI bundled execution call perform an illegal combination of operations.

Action: See documentation for legal operation combinations.

Note: There are some discussions about this error in the following link:
Subject: -2035 is a low-level "self-intersecting" error
http://forums.esri.com/Thread.asp?c=2&f=1720&t=152985&mc=4

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01795

ORA-01795: maximum number of expressions in a list is 1000

Cause: More than 254 columns or expressions were specified in a list.

Action: Remove some of the expressions from the list.

Sde.log:
Instance initialized for GISUSER . . .
db_sda_execute_stmt::OCIStmtExecute (1795)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01950

ORA-01950: no privileges on tablespace "name"

Cause: You tried to give the user a tablespace quota, but it failed because the user does not have the necessary system privileges. Most likely, the user has no quota granted on the tablespace in which he wants to create a table or index.

Action: The options to resolve this Oracle error are:
Grant the user the necessary system privileges to create objects in the tablespace.
Grant the user a specific space resource in the tablespace.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01917

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

I have stopped updating the blog.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.
==================================================================
 


ORA-01917: user or role 'string' does not exist

Cause: There is not a user or role by that name.

Action: Re-specify the name.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01843

Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.
==================================================================


ORA-01843: not a valid month

Cause: A date specified an invalid month. Valid months are: January-December, for format code MONTH, and Jan-Dec, for format code MON.

Action: Enter a valid month value in the correct format.

Sde.log:
Instance initialized for csat . . .
db_sda_execute_stmt::OCIStmtExecute (1405)
.
db_sda_execute_stmt::OCIStmtExecute (1843)
.
[04/02/2007 12:56:26;SdeId=625;Client=GISPC] db_array_fetch_attrs OCI Fetch Error (1843)
[04/02/2007 12:56:26;SdeId=625;Client= GISPC] load_buffer error -51
db_sda_execute_stmt::OCIStmtExecute (1843)
.
[04/02/2007 12:56:37;SdeId=625;Client= GISPC] db_array_fetch_attrs OCI Fetch Error (1843)
[04/02/2007 12:56:37;SdeId=625;Client= GISPC] load_buffer error -51
db_sda_execute_stmt::OCIStmtExecute (936)
.
[04/02/2007 13:19:34;SdeId=625;Client= GISPC] db_array_fetch_attrs OCI Fetch Error (936)
[04/02/2007 13:19:34;SdeId=625;Client= GISPC] load_buffer error -51

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01779

ORA-01779: cannot modify a column which maps to a non key-preserved table

Cause: An attempt was made to insert or update columns of a join view which map to a non-key-preserved table.

Action: Modify the underlying base tables directly.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01775

ORA-01775: looping chain of synonyms

Cause: Through a series of CREATE synonym statements, a synonym was defined that referred to itself. For example, the following definitions are circular:
CREATE SYNONYM s1 for s2 CREATE SYNONYM s2 for s3 CREATE SYNONYM s3 for s1

Action: Change one synonym definition so that it applies to a base table or view and retry the operation.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01752

ORA-01752: cannot delete from view without exactly one key-preserved table

Cause: The deleted table either had no key perserved tables, had more than one key-preserved table, or the key-preserved table was an unmerged view or a table from a read-only view.

Action: Redefine the view or delete it from the underlying base tables.

ORA-01749

 Thank you for visiting Spatial DBA - Oracle and ArcSDE.

I have stopped updating the blog.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

====================================================================
 
ORA-01749: you may not GRANT/REVOKE privileges to/from yourself

Cause: Grantor is not allowed to grant or revoke object or system privileges to self.

Action: Issue the GRANT or REVOKE of system privileges from another database administrator account.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01747

ORA-01747: invalid user.table.column, table.column, or columns specification

Cause: You tried to reference a column name, but the column name used is a reserved word in Oracle.

Action:
The options to resolve this Oracle error are:
Try redefining your table so that none of your column names are reserved words.
Try enclosing the reserved word in double quotes.
For example, if you had a supplier table with a column named number, and you
tried to update this field as follows:
UPDATE suppliers
SET number = 10000;
You would receive the following error message.
You could correct this error by enclosing the column name in double quotes as follows:
UPDATE suppliers
SET "number" = 10000;

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01927

ORA-01927: cannot REVOKE privileges you did not grant

Cause: You can only revoke privileges you granted.

Action: Don't revoke these privileges.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01756

ORA-01756: quoted string not properly terminated

Cause: A quoted string must be terminated with a single quote mark (').

Action: Insert the closing quote and retry the statement.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01758

ORA-01758: table must be empty to add mandatory (NOT NULL) column

Cause: It is not possible to define a new column as NOT NULL if rows already exist in the table being modified.

Action: Retry the statement without the NOT NULL specification.

Note: ESRI Technical Article 26456
http://support.esri.com/index.cfm?fa=knowledgebase.techarticles.articleShow&d=26456

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01722

ORA-01722: invalid number

Cause: The attempted conversion of a character string to a number failed because the character string was not a valid numeric literal. Only numeric fields or character fields containing numeric data may be used in arithmetic functions or expressions. Only numeric fields may be added to or subtracted from dates.

Action: Check the character strings in the function or expression. Check that they contain only numbers, a sign, a decimal point, and the character "E" or "e" and retry the operation.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01720

ORA-01720: grant option does not exist for "string.string"

Cause: A grant was being performed on a view and the grant option was not present for an underlying object.

Action: Obtain the grant option on all underlying objects of the view.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01658

ORA-01658: unable to create INITIAL extent for segment in tablespace string

Cause: Failed to find sufficient contiguous space to allocate INITIAL extent for segment being created.

Action: Use ALTER TABLESPACE ADD DATAFILE to add additional space to the tablespace or retry with a smaller value for INITIAL

Note: That error is a "disk full" message, which will require the DBA to correct, either by increasing the tablespace allocation or specifying a different default tablespace.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01653

ORA-01653: unable to extend table string.string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a table segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

sde.log:
db_sda_execute_stmt::OCIStmtExecute (1653)

giomgr.log:
Tue Feb 13 09:50:41 2007 - SDE Server Pid 17028 Registered, User: GISUSER.
Tue Feb 13 09:58:31 2007 - SDE Server 17028 went down on signal 11
Tue Feb 13 09:58:31 2007 - SDE Server Pid 17028 Stopped, User: GISUSER.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01652

ORA-01652: unable to extend temp segment by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a temporary segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

Note: When you try to create a new table or index in a tablespace, it is first created as a temporary segment inside the tablespace before the actual segment is created. There was not enough space left inside the tablespace to successfully complete the creation

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01536

ORA-01536: space quota exceeded for tablespace "string"

Cause: The space quota for the segment owner in the tablespace has been exhausted and the operation attempted the creation of a new segment extent in the tablespace.

Action: Either drop unnecessary objects in the tablespace to reclaim space or have a privileged user increase the quota on this tablespace for the segment owner.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01455

ORA-01455: converting column overflows integer datatype

Cause: The converted form of the specified expression was too large for the specified datatype.

Action: Define a larger datatype or correct the data.

Sde.log: try to set objectid > 2 147 483 647
[03/13/2007 11:24:43;SdeId=33417;Client=GISUSER] db_array_fetch_spix_recs OCI Fetch Error (1455)
[03/13/2007 11:24:43;SdeId=33417;Client=GISUSER] load_buffer error -51
db_sda_execute_stmt::OCIStmtExecute (1455)

ORA-01427

ORA-01427: single-row subquery returns more than one row

Cause:
You tried to execute an SQL statement that contained a subquery that returns more than one row.

Action:
The options to resolve this Oracle error are:
Rewrite your query so that the subquery only returns one row.
Change your query to use one of the following functions against your subquery results:
ANY, ALL, IN, NOT IN

sde log:
db_array_fetch_attrs OCI Fetch Error (1427)
load_buffer error -51

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01405

 Thank you for visiting Spatial DBA - Oracle and ArcSDE.

Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.

===================================================================

ORA-01405: fetched column value is NULL

Cause:
The INTO clause of a FETCH operation contained a NULL value, and no indicator was used. The column buffer in the program remained unchanged, and the cursor return code was +2. This is an error unless you are running Oracle with DBMS=6, emulating version 6, in which case it is only a warning.

Action:
You may do any of the following:
-Use the NVL function to convert the retrieved NULL to another value, such as zero or blank. This is the simplest solution.
-Use an indicator to record the presence of the NULL. You probably should use this option when you want a specific action to be taken when a NULL arises.
-Revise the cursor definition so that no columns possibly containing NULL values are retrieved.

sde.log: db_sda_execute_stmt::OCIStmtExecute (1405)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01403

ORA-01403: no data found

Cause:
You tried one of the following:
You executed a SELECT INTO statement and no rows were returned.
You referenced an uninitialized row in a table.
You read past the end of file with the UTL_FILE package.

Action:
The options to resolve this Oracle error are:
Terminate processing of the data.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01400

ORA-01400: cannot insert NULL into (string)

Cause:
An attempt was made to insert a NULL into the column "USER"."TABLE"."COLUMN".

Action:
Retry the operation with a value other than NULL.

SDE.log
Instance initialized for GISUSER . . .
[02/15/2007 14:19:35;SdeId=3470990;Client=GISPC] Attempting to reset ids for layer 1008.
db_sda_execute_stmt::OCIStmtExecute (1400)
.
[02/15/2007 14:19:36;SdeId=3470990;Client=GISPC] DB_execute_insert_table OCI Execute Error (1400).

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01036

ORA-01036: illegal variable name/number

Cause: Unable to find bind context on user side

Action: Make sure that the variable being bound is in the sql statement.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01034

ORA-01034: ORACLE not available

Cause:
Oracle was not started up. Possible causes include the following:
- The SGA requires more space than was allocated for it.
- The operating-system variable pointing to the instance is improperly defined.

Action:
Refer to accompanying messages for possible causes and correct the problem mentioned in the other messages. If Oracle has been initialized, then on some operating systems, verify that Oracle was linked correctly. See the platform specific Oracle documentation.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01031

ORA-01031: insufficient privileges

Cause: An attempt was made to change the current username or password without the appropriate privilege. This error also occurs if attempting to install a database without the necessary operating system privileges. When Trusted Oracle is configure in DBMS MAC, this error may occur if the user was granted the necessary privilege at a higher label than the current login.

Action: Ask the database administrator to perform the operation or grant the required privileges. For Trusted Oracle users getting this error although granted the the appropriate privilege at a higher label, ask the database administrator to regrant the privilege at the appropriate label.

Sde.log:
[03/07/2007 11:11:06;SdeId=33266;Client=GISPC] DB_table_create_view() Execute Error (1031)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01008

ORA-01008: not all variables bound

Cause: You tried to execute an SQL statement that contained substitution variables where all variables were not bound.

Action: The options to resolve this Oracle error are:
In OCI, try using an OBIND or OBINDN call to substitute the values.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01003

ORA-01003: no statement parsed

Cause: A host language program call referenced a cursor with no associated parsed SQL statement. A SQL call (for example, OSQL3) must be used to pass a SQL statement to Oracle and to associate the statement with an open cursor. A cursor must already have an associated SQL statement if referenced in any of the following calls: DESCRIBE, NAME, DEFINE, BIND, EXECUTE, and FETCH.

Action: Do the SQL call, for example, OSQL, to pass the required SQL statement before referencing the cursor.

Sde log:
db_sda_execute_stmt::OCIStmtExecute (1003)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-01000

ORA-01000: maximum open cursors exceeded

Cause: A host language program attempted to open too many cursors. The initialization parameter OPEN_CURSORS determines the maximum number of cursors per user.

Action: Modify the program to use fewer cursors. If this error occurs often, shut down Oracle, increase the value of OPEN_CURSORS, and then restart Oracle.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00959

ORA-00959: tablespace 'string' does not exist

Cause: A statement specified the name of a tablespace that does not exist.

Action: Enter the name of an existing tablespace. For a list of tablespace names, query the data dictionary.

ArcSDE:
shp2sde returns the following error without using -k option:
SDE code 959: *** INVALID_ERROR_CODE ***

The reason is that in $SDEHOME/etc/dbtune.sde, in the #DEFAULTS keyword section, one of the tablespace names is not spelled correctly, that is, it does not match the name of the desired tablespace name.

Refer to http://support.esri.com/index.cfm?fa=knowledgebase.techarticles.articleShow&d=13763

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00947

ORA-00947: not enough values

Cause: This error occurs when a SQL statement requires two sets of values equal in number, but the second set contains fewer items than the first set. This can occur in a WHERE or HAVING clause in which a nested SELECT returns too few columns as in WHERE (A,B) IN (SELECT C FROM ...). Another common cause of this error is an INSERT statement in which the VALUES or SELECT clause does not contain enough values needed for the INSERT, as in INSERT INTO EMP(EMPNO,ENAME) VALUES('JONES')

Action: Check the number of items in each set and change the SQL statement to make them equal.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00942

ORA-00942: table or view does not exist

Cause: The table or view entered does not exist, a synonym that is not allowed here was used, or a view was referenced where a table is required. Existing user tables and views can be listed by querying the data dictionary. Certain privileges may be required to access the table. If an application returned this message, the table the application tried to access does not exist in the database, or the application does not have access to it.

Action: Check each of the following:
the spelling of the table or view name.
that a view is not specified where a table is required.
that an existing table or view name exists.
Contact the database administrator if the table needs to be created or if user or application privileges are required to access the table.
Also, if attempting to access a table or view in another schema, make certain the correct schema is referenced and that access to the object is granted.

ArcSDE:
Verify whether the reported tables or view really exist or not. If not, remove those entries from the table TABLE_REGISTRY and see if you are still getting the error.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

More Oracle DBA tips, please visit Oracle DBA Tips 

ORA-00936

ORA-00936: missing expression

Cause: A required part of a clause or expression has been omitted. For example, a SELECT statement may have been entered without a list of columns or expressions or with an incomplete expression. This message is also issued in cases where a reserved word is misused, as in SELECT TABLE.

Action: Check the statement syntax and specify the missing component.

Sde.log
Instance initialized for GISUSER . . .
db_sda_execute_stmt::OCIStmtExecute (936)
.
[03/27/2007 13:31:22;SdeId=4107103;Client=GISPC] db_array_fetch_spix_recs OCI Fetch Error (936)
[03/27/2007 13:31:22;SdeId=4107103;Client=GISPC] load_buffer error -51

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00933

ORA-00933: SQL command not properly ended

Cause: The SQL statement ends with an inappropriate clause. For example, an ORDER BY clause may have been included in a CREATE VIEW or INSERT statement. ORDER BY cannot be used to create an ordered view or to insert in a certain order.

Action: Correct the syntax by removing the inappropriate clauses. It may be possible to duplicate the removed clause with another SQL statement. For example, to order the rows of a view, do so when querying the view and not when creating it. This error can also occur in SQL*Forms applications if a continuation line is indented. Check for indented lines and delete these spaces.

ORA-00923

ORA-00923: FROM keyword not found where expected

Cause: In a SELECT or REVOKE statement, the keyword FROM was either missing, misplaced, or misspelled. The keyword FROM must follow the last selected item in a SELECT statement or the privileges in a REVOKE statement.

Action: Correct the syntax. Insert the keyword FROM where appropriate. The SELECT list itself also may be in error. If quotation marks were used in an alias, check that double quotation marks enclose the alias. Also, check to see if a reserved word was used as an alias.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00920

ORA-00920: invalid relational operator

Cause: You tried to execute an SQL statement, but the WHERE clause contained an invalid relational operator.

Action: The options to resolve this Oracle error are:
Correct the WHERE clause. Valid relational operators are as follows:
= != ^= <> < <= > >= ALL ANY
BETWEEN NOT BETWEEN EXISTS NOT EXISTS IN NOT IN IS NULL
IS NOT NULL LIKE NOT LIKE

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00918

ORA-00918: column ambiguously defined

Cause: A column name used in a join exists in more than one table and is thus referenced ambiguously. In a join, any column name that occurs in more than one of the tables must be prefixed by its table name when referenced. The column should be referenced as TABLE.COLUMN or TABLE_ALIAS.COLUMN. For example, if tables EMP and DEPT are being joined and both contain the column DEPTNO, then all references to DEPTNO should be prefixed with the table name, as in EMP.DEPTNO or E.DEPTNO.

Action: Prefix references to column names that exist in multiple tables with either the table name or a table alias and a period (.), as in the examples above.

sde.log
Instance initialized for GISUSER . . .
db_sda_execute_stmt::OCIStmtExecute (918)
.
[10/23/2007 10:26:57;SdeId=5256998;Client=GISPC] db_array_fetch_spix_recs OCI Fetch Error (918)
[10/23/2007 10:26:57;SdeId=5256998;Client=GISPC] load_buffer error -51
db_sda_execute_stmt::OCIStmtExecute (918)

ORA-00917

ORA-00917: missing comma

Cause: A required comma has been omitted from a list of columns or values in an INSERT statement or a list of the form ((C,D),(E,F), ...).

Action: Correct the syntax.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00908

ORA-00908: missing NULL keyword

Cause: You tried to execute an SQL statement, but you missed entering the NULL keyword.

Action: This error can occur if you try to execute an SQL statement using the IS NULL or IS NOT NULL clause, but miss entering the NULL keyword.

sde log:
db_array_fetch_attrs OCI Fetch Error (908)
load_buffer error -51

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00904

ORA-00904: string: invalid identifier

Cause: The column name entered is either missing or invalid.

Action: Enter a valid column name. A valid column name must begin with a letter, be less than or equal to 30 characters, and consist of only alphanumeric characters and the special characters $, _, and #. If it contains other characters, then it must be enclosed in double quotation marks. It may not be a reserved word.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00903

ORA-00903: invalid table name

Cause: You tried to execute an SQL statement that included an invalid table name or the table name does not exist.

Action: The options to resolve this Oracle error are:
Rewrite your SQL to include a valid table name. To be a valid table name the following criteria must be met:
The table name must begin with a letter.
The table name can not be longer than 30 characters.
The table name must be made up of alphanumeric characters or the following special characters: $, _, and #.
The table name can not be a reserved word.

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00604

ORA-00604: error occurred at recursive SQL level string

Cause: An error occurred while processing a recursive SQL statement (a statement applying to internal dictionary tables).

Action: If the situation described in the next error on the stack can be corrected, do so; otherwise contact Oracle Support.

Sde log:
db_sda_execute_stmt::OCIStmtExecute (604)

Note: Oracle® Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00054

ORA-00054: resource busy and acquire with NOWAIT specified

Cause: Resource interested is busy.

Action: Retry if necessary.

Sde log:
db_sda_execute_stmt::OCIStmtExecute (54)

MetaLink:
Note:18245.1

Note: Oracle® Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors

ORA-00001

ORA-00001: unique constraint (string.string) violated

Cause: An UPDATE or INSERT statement attempted to insert a duplicate key. For Trusted Oracle configured in DBMS MAC mode, you may see this message if a duplicate entry exists at a different level.

Action: Either remove the unique restriction or do not insert the key.

Note: Oracle® Database Error Messages 10g Release 2 (10.2)

All Oracle errors in the blog can be found at: Oracle errors
All ESRI ArcSDE errors in the blog can found at: ArcSDE Errors