Exception Messages and SQL States

The JDBC driver returns SQLExceptions for all errors from SQLFire. If the exception originated in a user type but is not itself an SQLException, it is wrapped in an SQLException. SQLFire-specific SQLExceptions use SQLState class codes starting with X. Standard SQLState values are returned for exceptions where appropriate.

Unimplemented aspects of the JDBC driver return a SQLException with a SQLState starting with 0A. If your application runs on JDK 1.6 or higher, then the exception class is java.sql.SQLFeatureNotSupportedException. These unimplemented parts are for features not supported by SQLFire.

SQLFire supplies values for the message and SQLState fields. In addition, SQLFire sometimes returns multiple SQLExceptions using the nextException chain. The first exception is always the most severe exception, with SQL-92 Standard exceptions preceding those that are specific to SQLFire.

See the Apache Derby Reference Manual for details about all SQL error messages and exceptions.

In addition to the error messages provided with Apache Derby, SQLFire uses the following additional error states and messages.

Table 1. Class 01: Additional Warning
SQLState Message text
01J09 updatable resultset supported only in read committed and repeatable read transaction isolation levels
Table 2. Class 0A: Feature not supported
SQLState Message text
0A000 The query cannot be executed as the partitioned table 'table-name' is not having any colocation defined, and this version of SQLFire does not support joins/subqueries on non-colocated tables.
0A000 The query cannot be executed as the table table-name is not colocated with table-name, and this version of SQLFire does not support joins/subqueries on non-colocated tables.
0A000 The query cannot be executed as it does not have all the required colocation equijoin conditions, and this version of SQLFire does not support joins/subqueries on non-colocated table columns.
0A000 The query cannot be executed as it does not have all the required colocation equijoin conditions, and this version of SQLFire does not support joins/subqueries on non-colocated table columns.
0A000 The query cannot be executed as at least one Partitioned Table involved is having multiple nodes.
0A000 The delete rules, CASCADE and SET NULL, on foreign keys are not supported.
0A000 Statement cannot continue execution as overflowing to disk is unsupported. Try limiting the sort size or the join size.
0A000 Correlated query with outer query on replicated table and inner on partitioned table is unsupported in this version of SQLFire.
0A000 A distributed member with given ID member-id could not be found.
0A000 Correlated, Non Primary Key type subquery on partitioned based table not supported in this version of SQLFire.
0A000 Subqueries with more than one level of nesting not supported in this version of SQLFire.
0A000 Specify one or more server groups on which AsyncEventListener 'listener-name' can be configured.
0A000 Exception occured during procedure execution for AsyncEventListener 'listener-name': exception.
0A000 No gateway with ID 'gateway-id' was found (hub ID for the gateway is 'hub-id').
0A000 Exception occured during procedure execution for WAN 'identifier': exception.
0A000 Exception occured during procedure execution for Writer on table 'writer': exception.
0A000 Exception occured during procedure execution for Listener 'listener': exception.
0A000 Exception occured during procedure execution for Loader on table 'table': exception.
0A000 An unexpected exception occurred during procedure execution: procedure.
0A000

Updatable resultset supported only in read committed and repeatable read transaction isolation levels in this version of SQLFire.

0A000 Nesting level more than 1 not supported for subqueries in this version of SQLFire.
0A000 Inserts as sub selects not supported for selects that need aggregation.
Table 3. Class X0: Execution exceptions
SQLState Message text
X0Y45 Foreign key constraint constraint-name cannot be added to or enabled on table table-name because one or more foreign keys do not have matching referenced keys (failed keys: keys)
X0Y91 Table table-name cannot be colocated with table table-name due to different number of colocation columns number in table1 and number in table2 respectively
X0Y92 Table table-name cannot be colocated with table table-name due to different column types; column of this table column-name[type-name] , column of other table column-name[type-name]
X0Y93 Table table-name cannot be colocated with table table-name due to different server groups server-group-name and server-group-name respectively
X0Y94 Table table-name cannot be colocated with table table-name due to different redundancies or buckets redundancy and buckets respectively
X0Y95 Table table-name cannot be colocated with table table-name due to different partitioning policies partition-policy and partition-policy respectively
X0Y96 Table table-name cannot be colocated with table table-name
X0Y97 'PARTITION BY PRIMARY KEY' for table table-name that has no primary key defined
X0Y98 Failed to drop table table-name due to colocated child tables
X0Y99 Failed to create table table-name due to referenced table table-name having eviction or expiration policy
X0Z01 Node member-id went down or data no longer available while iterating the results for query (method method-name ). Please retry the query

See Failure and Redundancy.

X0Z02 Conflict detected in transaction operation and it will abort
X0Z03 Transaction is in read-only mode due to a previous exception and cannot have update operations or be committed
X0Z04 No data store node available in server group server-group-name to execute internal function function-name
X0Z05 Transactional data not colocated. Please retry with colocated data
X0Z06 In doubt transaction. Failure happened while committing transactional state. Please look at the cause of this exception for details and retry. (Note: this should not come unless an unexpected runtime error has occurred during commit).
X0Z07 Cannot find Disk Store with name disk-store-name
X0Z08 No Datastore found in the Distributed System
X0Z09 At least one persistent datastore is no longer online
X0Z10 RowLoader returned invalid row with length length , expected length
X0Z11 Auto-generated column start number not supported for table table-name
X0Z12 Auto-generated column increment number not supported for table table-name
X0Z13 Overflow of generated key for table table-name with no primary key
X0Z14 DataDictionary has to be persistent when configuring table table-name with persistence
X0Z15 Table table-name is not partitioned for operation.
Table 4. Class XBM: Monitor
SQLState Message text
XBM0O JDBC Driver already registered with java.sql.DriverManager before Authentication settings provided in FabricService
Table 5. Class XJ: Connectivity Errors
SQLState Message text
XJ040 Failed to start database database-name , see the cause for details.
XJ041 Failed to create database database-name , see the cause for details