blob: f2e1a33256b4b079431b4ad6df74f11c2759259d [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one or more
// contributor license agreements. See the NOTICE file distributed with
// this work for additional information regarding copyright ownership.
// The ASF licenses this file to You under the Apache License, Version 2.0
// (the "License"); you may not use this file except in compliance with
// the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
= Error Codes
Ignite JDBC drivers pass error codes in the `java.sql.SQLException` class, used to facilitate exception handling on the application side. To get an error code, use the `java.sql.SQLException.getSQLState()` method. It returns a string containing the ANSI SQLSTATE error code:
[source,java]
----
include::{javaCodeDir}/JDBCThinDriver.java[tags=error-codes, indent=0]
----
The table below lists all the link:https://en.wikipedia.org/wiki/SQLSTATE[ANSI SQLSTATE] error codes currently supported by Ignite. Note that the list may be extended in the future.
[width="100%",cols="20%,80%"]
|=======================================================================
|Code |Description
|0700B|Conversion failure (for example, a string expression cannot be parsed as a number or a date).
|0700E|Invalid transaction isolation level.
|08001|The driver failed to open a connection to the cluster.
|08003|The connection is in the closed state. Happened unexpectedly.
|08004|The connection was rejected by the cluster.
|08006|I/O error during communication.
|22004|Null value not allowed.
|22023|Unsupported parameter type.
|23000|Data integrity constraint violation.
|24000|Invalid result set state.
|0A000|Requested operation is not supported.
|40001|Concurrent update conflict. See link:transactions/mvcc#concurrent-updates[Concurrent Updates].
|42000|Query parsing exception.
|50000|Ignite internal error.
The code is not defined by ANSI and refers to an Ignite specific error. Refer to the `java.sql.SQLException` error message for more information.
|=======================================================================