Skip to main content

FairCom error codes 4000 - 4199

This table lists the possible CTDB API (c-tree database API) errors.

Table 1. CTDB API error codes 4000 - 4189

Value

Symbolic constant

Description

0

CTDBRET_OK

Indicates the c-treeDB C API returned OK.

4000

CTDBRET_BASE

Indicates a base error number.

4001

CTDBRET_NOMEMORY

Indicates there is not enough memory.

4002

CTDBRET_NULHANDLE

Indicates the handle is NULL.

4003

CTDBRET_NOTSESSION

Indicates there is no session handle.

4004

CTDBRET_INVARG

Indicates an invalid argument.

4005

CTDBRET_INDEXRANGE

Indicates the index is out of range.

This error can be returned when you are trying to use an index that doesn't exist. Or trying to use index 0 on a table with no indexes. It can be returned by an unexpected function like BuildTargetKey() that is trying to use the index.

4006

CTDBRET_ARGSMALL

Indicates the argument is too small.

4007

CTDBRET_NULARG

Indicates the null argument is not valid.

4008

CTDBRET_ARGNUL

Indicates the null argument is not valid.

4009

CTDBRET_NOTOPEN

Indicates the table is not open.

4010

CTDBRET_NOTDATABASE

Indicates the argument is not a database handle.

4011

CTDBRET_ISACTIVE

Indicates the handle is active.

This error is thrown by calling ctdbLogon() with a handle that is already logged in via a previous call to ctdbLogon().

4012

CTDBRET_NOTACTIVE

Indicates the handle is not active.

4013

CTDBRET_NOTTABLE

Indicates the handle is not a table.

4014

CTDBRET_NOSUCHFIELD

Indicates an unknown field name.

4015

CTDBRET_CANTDELETE

Indicates the delete operation cannot be performed.

4016

CTDBRET_FIELDEXIST

Indicates the field already exists, either as a duplicate or that there are too few field names compared to the count.

This error is thrown when sqlizing c-treeRTG tables with duplicate field names specified in the .xdd (or .iss).

4017

CTDBRET_NOTFIELD

Indicates the argument is not a field handle.

4018

CTDBRET_NOTINDEX

Indicates the argument is not an index handle.

4019

CTDBRET_INVTYPE

Indicates an invalid field/key type.

4020

CTDBRET_NOTSEGMENT

Indicates the argument is not a segment handle.

4021

CTDBRET_DATABASEEXIST

Indicates the database already exists.

4022

CTDBRET_TABLEEXIST

Indicates the tale already exists.

4023

CTDBRET_NOSUCHTABLE

Indicates the table does not exist.

4024

CTDBRET_NOTRECORD

Indicates the argument is not a record handle.

4025

CTDBRET_INTERNAL

Indicates an internal error.

4026

CTDBRET_INVFIND

Indicates an invalid find mode.

4027

CTDBRET_NODATA

Indicates there is no data in the record.

4028

CTDBRET_INVFORMAT

Indicates an invalid date or time format.

4029

CTDBRET_INVDATE

Indicates an invalid date.

4030

CTDBRET_INVDAY

Indicates an invalid date day.

4031

CTDBRET_INVMONTH

Indicates an invalid date month.

4032

CTDBRET_INVYEAR

Indicates an invalid date year.

4033

CTDBRET_INVTIME

Indicates an invalid packed CTTIME.

4034

CTDBRET_INVHOUR

Indicates an invalid hour.

4035

CTDBRET_INVMINUTE

Indicates an invalid minute.

4036

CTDBRET_INVSECOND

Indicates an invalid second.

4037

CTDBRET_INVAMPM

Indicates an invalid morning/evening indicator.

4038

CTDBRET_OVERFLOW

Indicates that the operation has caused an Overflow,

4039

CTDBRET_UNDERFLOW

Indicates that the operation has caused an Underflow.

4040

CTDBRET_DIVBYZERO

Indicates that there was an attempt to divide by zero.

4041

CTDBRET_INVDATETIME

Indicates an invalid DateTime.

4042

CTDBRET_CANTCONVERT

Indicates that the type conversion cannot be performed.

4043

CTDBRET_TOOBIG

Indicates that the argument is too big.

4044

CTDBRET_NOSUCHPATH

Indicates the path does not exist.

4045

CTDBRET_NOSUCHINDEX

Indicates an unknown index number.

4046

CTDBRET_NOTFOUND

Indicates the target was not found.

4047

CTDBRET_INVSEGMODE

Indicates an invalid segment mode.

4048

CTDBRET_NOINDEX

Indicates the table has no indexes.

4049

CTDBRET_NOSUCHSEGMENT

Indicates an invalid segment number.

4050

CTDBRET_INVICON

Indicates an Invalid ISAM context handle.

4051

CTDBRET_INDEXEXIST

Indicates the index name is already in use.

4052

CTDBRET_MOREDATA

Inidicates a partial field data read. Note that the buffer should be at least the field length +1 (for the null terminator).

4053

CTDBRET_NOINDEXNAME

Indicates an invalid index name.

4054

CTDBRET_NOTSUPPORTED

Indicates the selected feature is not supported.

Hot Alter Table returns this error if you are trying to alter a table in a way not possible, such as changing an indexed value, or the table was not created with FLEXREC support.

Trying to persist data via MQTT with Automatic System Time will fail with this error if your server wasn't built with Automatic System Time enabled.

4055

CTDBRET_INVLOCKMODE

Indicates an invalid lock mode.

4056

CTDBRET_NOLOCK

Indicates the record is not locked.

4057

CTDBRET_NOWRITELOCK

Indicates the record is not locked for writes.

4058

CTDBRET_NOTDICT

Indicates the dictionary handle was not allocated.

4059

CTDBRET_NOTYET

Indicated the attempted operation is not yet implemented.

4060

CTDBRET_INVNUMBER

Indicated an invalid number.

4061

CTDBRET_INVPREC

Indicates an invalid number precision.

4062

CTDBRET_INVSCALE

Indicates an invalid number scale.

4063

CTDBRET_INVRECBUF

Indicates the record buffer is not large enough.

4064

CTDBRET_CANTDELRECBYT

Indicates the RECBYT index cannot be deleted.

4065

CTDBRET_CANTDELROWID

Indicates the ROWID index cannot be deleted.

4066

CTDBRET_NOROWID

Indicates the table has no ROWID index.

4067

CTDBRET_CANCREATE

Indicates a file cannot be created (dupdb).

4068

CTDBRET_CANTCOPY

Indicates a file cannot be copied (dupdb).

4069

CTDBRET_NOTSUSPENDED

Indicates a lock cannot be restored.

4070

CTDBRET_INVISOLEVEL

Indicates an invalid isolation level.

4071

CTDBRET_CNDXFALSE

Indicates a conditional expression evaluated to false.

4072

CTDBRET_CNDXSYNTAX

Indicates a conditional expression parser error.

4073

CTDBRET_CONDXTYPE

Indicates a type discrepancy.

4074

CTDBRET_CNDXFIELD

Indicates an unknown field name.

4075

CTDBRET_CNDXINTERNAL

Indicates an internal yacc error.

4076

CTDBRET_CNDXMEMORY

Indicates the memory allocation has failed.

4077

CTDBRET_CNDXOVERFLOW

Indicates a stack overflow.

4078

CTDBRET_CNDXUNDERFLOW

Indicates a stack underflow.

4079

CTDBRET_CNDXEXEC

Indicates an invalid execution node.

4080

CTDBRET_CNDXDIVISION

Indicates there was an attempt to divide by zero.

4081

CTDBRET_CNDXNOSCHEMA

Indicates there is no record schema.

4082

CTDBRET_CNDXNORECBUF

Indicates there is no record buffer.

4083

CTDBRET_CNDXSDAT

Indicates there is not enough data.

4084

CTDBRET_INVSESSIONTYPE

Indicates an invalid session type.

4085

CTDBRET_INVALTERACTION

Indicates an invalid alter table action.

4086

CTDBRET_DIFFERENT

Indicates the records are different.

4087

CTDBRET_INVOPERATOR

Indicates an invalid operator.

4088

CTDBRET_READONLY

Indicates the table was opened as read-only.

4089

CTDBRET_NOTIMPLEMENTED

Indicates CALLBACK was not implemented.

4090

CTDBRET_INVHANDLE

Indicates an invalid handle type.

4091

CTDBRET_INVCALLBACK

Indicates an invalid callback type.

4092

CTDBRET_CANTMOVE

Indicates the segment cannot be moved.

4093

CTDBRET_INDEXDUPNAME

Indicates the index name was already used in the database.

4094

CTDBRET_NOSUCHDATABASE

Indicates the database does not exist, or was not found.

4095

CTDBRET_NOSEGMENT

Indicates the index has no segments.

4096

CTDBRET_BATCHNOTACTIVE

Indicates the batch operation not active.

4097

CTDBRET_BATCHISACTIVE

Indicates the batch operation is already active.

4098

CTDBRET_INVBATCHMODE

Indicates an invalid batch mode.

4099

CTDBRET_NOTRESOURCE

Indicates the selected object is not a resource handle.

4100

CTDBRET_INVATTACH

Indicates an invalid session attach mode.

4101

CTDBRET_NOTATTACHED

Indicates the session is not attached.

4102

CTDBRET_BINARYLENGTH

Indicates an invalid binary field length.

4103

CTDBRET_ROUTERERROR

Indicates a router table error.

4104

CTDBRET_INVROUTERNAME

Indicated an invalid router table name.

4105

CTDBRET_INVROUTERNBR

Indicates an invalid number of fields in the router.

4106

CTDBRET_INVROUNTERMAP

Indicates an invalid router field mapping.

4107

CTDBRET_DBNOTSQL

Indicates the database is not SQL.

4108

CTDBRET_INVBUFFER

Indicates the record buffer contains data that is causing field offset calculations beyond the record.

FairCom DB parses a buffer by counting out the fixed-length fields and looking for nulls to determine the size of variable-length fields. Variable-length binary fields are easy because they have a size at the beginning. Any time they parse our buffer and don't end exactly at the end, this error is returned. This can be caused by a buffer that is too short or too long.

4109 - 4128

CTDBRET_CALLBACK_1 - CTDBRET_CALLBACK_20

All errors in this range are callback errors. They are user error codes reserved for implementation-specific callback functions.

Please refer to documentation that accompanies your specific c-treeDB callback module.

4127, CTDBRET_CALLBACK_19, can also be a c-treeRTG error.

4129

CTDBRET_CANTCHKUID

Indicates the dictionary UID cannot be properly checked/updated.

4130

CTDBRET_NOMOREVTRES

Indicates there is no more RESOURCE available for Vtable on parent table.

4131

CTDBRET_VTABLEEXIST

Indicates the table has VTable defined in the dictionary.

4132

CTDBRET_VTABLETYPE

Indicates the VTable type in the dictionary does not match the entry in the resource.

4133

CTDBRET_IDENTITYDEFINED

Indicates an Identity field has been already defined.

4134

CTDBRET_NOIDENTITYDEFINED

Indicates an Identity field has not been defined.

4135

CTDBRET_FLDISNULL

Indicates the field is null.

4136

CTDBRET_RESERVEDNAME

Indicates an invalid use of the reserved name.

4137

CTDBRET_NOTSUP_IN_DICT

Indicates the selected feature is not supported in the Dictionary.

4138

CTDBRET_INVFILENAME

Indicates an invalid file name.

4139

CTDBRET_ISVFIELD

Indicates the operation is not supported on the Virtual field.

4140

CTDBRET_HASVFIELD

Indicates the operation is not supported on tables with Virtual fields.

4141

CTDBRET_MISSINGVCLEAR

Indicates VFields cannot be added without setting the vclear function.

4142

CTDBRET_MISSINGVGET

Indicates a getfield operation was attempted on a VField without having a "get" function.

4143

CTDBRET_MISSINGVSET

Indicates a setfield operation was attempted on a VField without having a "set" function.

4144

CTDBRET_INVNUMBLEN

Indicates CTNUMBER has an invalid length.

4145

CTDBRET_INVMILLISECOND

Indicates an invalid millisecond.

4146

CTDBRET_INVLEGACYSEGMENT

Indicates the legacy segment offset cannot be computed (an absolute byte offset cannot be calculated for a legacy segment mode).

4147

CTDBRET_MSEC_NOTSUPPORTED

Indicates millisecond precision is not supported by FairCom DB data type in use.

4148

CTDBRET_PARTITION_DEFINED

Indicates the file partition is already defined.

4149

CTDBRET_NOTFTI

Indicates the selected object is not a Full-Text Index handle.

4150

CTDBRET_NOSUCHFTI

Indicates an unknown Full-Text Index number or name.

4151

CTDBRET_NOFTI

Indicates the table has no Full-Text Index.

4152

CTDBRET_FTI_NOFIELD

Indicates a Full-Text Index defined with no associated field.

4153

CTDBRET_CANTATTACH

Indicates the table handle linked to db is not supported (cannot attach).

4154

CTDBRET_NOMOREBATCHES

Indicates there is no room for more batches in the session.

4155

CTDBRET_ISVTABLE

Indicates that a table is a virtual table. A count of the physical entries to use as an estimate is also returned.

Calling ctdbGetRecordCount() on a Multi-Schema Table (MRT Table) will return this error. Before V11.5, on MRT tables, CTDBRET_NOTYET was returned with no count.

4156

CTDBRET_FTS_SYNTAX

Indicates the Full-Text Search found a syntax error in the search query.

4157

CTDBRET_FTS_TOK_INIT

Indicates the Full-Text Search could not initialize the query tokenizer.

4158

CTDBRET_FTS_INVALID_STOP_LIST

Indicates an invalid stop list entry was specified.

4161

CTDBRET_ROWIDSEG

Indicates there was an attempt to create an index with rowid reference on a table with no rowid support.

4162

CTDBRET_NOTFTID

Indicates the selected object is not a Full-Text Index Dictionary handle.

4163

CTDBRET_CANNOTSET

Indicates a Full-Text Index (FTI) option cannot be set.

4164

CTDBRET_INVMRT_RECSIZ

Indicates the Multi-Record Type (MRT) VTABLE record definition does not describe the entire fixed record portion of the parent table.

4165

CTDBRET_NOLOAD

Indicates the background load thread is not active for the current file.

4166

CTDBRET_LOADISACTIVE

Indicates the background load thread is active for the current file.

4167

CTDBRET_NO_PATHS

Indicates the transaction log files path or temporary path is not set for standalone model.

4168

CTDBRET_FIXJSON

Indicates the JSON field cannot reside in the fixed record portion.

4169

CTDBRET_FIELDMASKFORBID

Indicates the attempted operation is forbidden by field mask.

4170

CTDBRET_ALREADYSET

Indicates the filter is already set and cannot be reset.

4171

CTDBRET_PREC_OVERFLOW

Indicates the value fits into the "C" type but overflows the defined precision.

4172

CTDBRET_FIELDATTRNOTSET

Indicates the field attribute is not set.

4173

CTDBRET_NOTADIGIT

foreign data type conversion error, value is not a digit

4174

CTDBRET_BADSIGN

foreign data type conversion error, sign indicator cannot be interpreted

4175

CTDBRET_INVINTSIZE

foreign data type conversion error, invalid size for integer type

4176

CTDBRET_DIGITOVERFLOW

foreign data type conversion error, too many digits

4177

CTDBRET_RECNOTMATCHATTR

Record length does not match ATTR information (minreclen/maxreclen)

4178

CTDBRET_INVMRT_RECHDR

MRT internal CTDB field not compatible with parent table (delfld, rowidfld, nulfld size different)

4179

CTDBRET_INVRTGXDD

XDD is invalid. check error message

4180

CTDBRET_UNI_NOTSUP

the libray does not support UNICODE

4181

CTDBRET_NOTBASE64

the base64 buffer cannot be decoded. Probably wrong encoding

4182

CTDBRET_FIELD_OP_DENIED

Field operation denied. In conflict with index definition

4183

CTDBRET_NOTJSONFIELD

The Field is not a JSON field.

4184

CTDBRET_NOSUCHUSER

the owner is not a valid c-tree user

4185

CTDBRET_NOTHEXSTR

the hex string buffer cannot be decoded. Probably wrong encoding

4186

CTDBRET_INVALIDJSON

The value is not a valid JSON document

4187

CTDBRET_INVFIELDDEF

The table contains an invalid field definition

4188

CTDBRET_PKEXIST

PrimaryKey Index already exists

4189

CTDBRET_PKINDEXCLASH

PrimaryKey Index definition and other index settings clash