Error messages

Last Updated: Aug 07, 2017

This section lists the error types, description messages and HTTP status codes for all possible errors in Table Store API.

The table below lists all the possible error messages returned by Table Store. Some errors can be resolved by retrying the operation. These error messages have a value of Yes in the Retry column. Other messages have No.

Permission verification errors

HTTPStatus ErrorCode ErrorMsg Description Retry
403 OTSAuthFailed The AccessKeyID does not exist. The AccessKeyID does not exist. No
403 OTSAuthFailed The AccessKeyID is disabled. The AccessKeyID is disabled. No
403 OTSAuthFailed The user does not exist. This user does not exist. No
403 OTSAuthFailed The instance is not found. This instance does not exist. No
403 OTSAuthFailed The user has no privilege to access the instance. You do not have permission to access this instance. No
403 OTSAuthFailed The instance is not running. This instance is not in the Running status. No
403 OTSAuthFailed Signature mismatch. The signature does not match. No
403 OTSAuthFailed Mismatch between system time and x-ots-date: { Date }. The server time that differs from the x-ots-date time in the header is more than the allowed range. No

HTTP message errors

HTTPStatus ErrorCode ErrorMsg Description Retry
413 OTSRequestBodyTooLarge The size of POST data is too large. The data volume sent in the user’s POST request is too large. No
408 OTSRequestTimeout Request timeout. The client took too long to complete the request. No
405 OTSMethodNotAllowed OTSMethodNotAllowedOnly POST method for requests is supported. Only supports POST requests. No
403 OTSAuthFailed Mismatch between MD5 value of request body and x-ots-contentmd5 in header. The MD5 calculated based on the data in the request body is not the same as the x-ots-contentmd5 value in the request header. No
400 OTSParameterInvalid Missing header: ‘{HeaderName}‘. The request lacks a required header. No
400 OTSParameterInvalid Invalid date format: {Date}. The date format is invalid. No
400 OTSParameterInvalid Unsupported operation: {Operation}. The operation name in the request URL is invalid . No

API errors

HTTPStatus ErrorCode ErrorMsg Description Retry
500 OTSInternalServerError Internal server error. Internal error. Open a ticket if an internal error occurs. Yes
403 OTSQuotaExhausted Too frequent table operations. Table operations are performed too frequently. Yes
403 OTSQuotaExhausted Number of tables exceeded the quota. The number of tables exceeds the quota. No
400 OTSParameterInvalid Invalid instance name: {InstanceName}. The instance name is invalid. No
400 OTSParameterInvalid Invalid table name: {TableName}. The table name is invalid. No
400 OTSParameterInvalid Invalid column name: {ColumnName}. The column name is invalid. No
400 OTSParameterInvalid {ColumnType} is an invalid type for the primary key. The primary key column type is invalid. No
400 OTSParameterInvalid {ColumnType} is an invalid type for the attribute column. The attribute column type is invalid. No
400 OTSParameterInvalid The number of primary key columns must be in range: [1, {Limit}]. The number of primary key columns cannot be 0 or exceed the limit. No
400 OTSParameterInvalid Value of column {ColumnName} must be UTF8 encoding. The value of this column must use UTF8 encoding. No
400 OTSParameterInvalid The length of attribute column: {ColumnName} exceeded the MaxLength:{MaxSize} with Current Length:{CellSize}. The name of an attribute column exceeds the maximum length limit. No
400 OTSParameterInvalid No row specified in the request of BatchGetRow. No rows are specified in the BatchGetRow request. No
400 OTSParameterInvalid Duplicated table name: {TableName}. The BatchGetRow or BatchWriteRow operation contains tables of the same name. No
400 OTSParameterInvalid Duplicated primary key name: '{PKName}'. Duplicate primary key. No
400 OTSParameterInvalid The limit must be greater than 0. The value of the limit parameter must be greater than 0. No
400 OTSParameterInvalid Duplicated attribute column name with primary key column: {ColumnName}. When an operation is performed on a row, this row contains an attribute column with the same name as the primary key column. No
400 OTSParameterInvalid Rows count exceeds the upper limit:{limit}. The total number of rows being written exceeds the limit. No
400 OTSParameterInvalid No version condition is specified while querying row. The number of version is not specified when querying. No
400 OTSParameterInvalid No row is specified in BatchWriteRow No row data exists in the BatchWriteRow operation. Currently, the BatchWriteRow operation must contain at least one row. No
400 OTSParameterInvalid No operation is specified for table:{TableName} The BatchWriteRow operation does not contain any operation on TableName. No
400 OTSParameterInvalid The type of row in batch write operation is invalid The row type in the BatchWriteRow operation is invalid. No
400 OTSParameterInvalid The modify type is invalid The operation type in the BatchWriteRow operation is incorrect. Currently, only the PUT, UPDATE, and DELETE operations are supported. No
400 OTSParameterInvalid The total data size of BatchWriteRow request exceeds the limit, limit size: {LimitSize}, data size:{UserSize} The total size in a single BatchWriteRow operation exceeds the limit. No
400 OTSParameterInvalid Time-to-live is missing while creating table The TTL is not specified during table creation. No
400 OTSParameterInvalid MaxVersions is missing while creating table The MaxVersions attribute is not specified during table creation. No
400 OTSParameterInvalid Start and end time must be given at the same time StartTime and EndTime must be specified simultaneously in the GetRange operation. No
400 OTSParameterInvalid Invalid column type, only STRING,INTEGER,BINARY is allowed. The column type is incorrect. Currently, primary key columns only support the string, integer, and binary types. No
400 OTSParameterInvalid Invalid column type: {ColumnType} The column type is invalid. No
400 OTSParameterInvalid Invalid return type: {ReturnType} The returned type is invalid. No
400 OTSParameterInvalid Invalid condition:{Condition} The specified condition is invalid. No
400 OTSParameterInvalid The value of read capacity unit can not be less than {Limit} The read CU value cannot be smaller than Limit. No
400 OTSParameterInvalid The value of write capacity unit can not be less then {Limit} The write CU value cannot be smaller than Limit. No
400 OTSParameterInvalid first primary key can’t be AUTO_INCREMENT The first primary key cannot be set as an auto-increment column. No
400 OTSParameterInvalid AUTO_INCREMENT primary key must be integer Only integer columns can be set as auto-increment columns. No
400 OTSParameterInvalid AUTO_INCREMENT primary key count must <= 1 Only one auto-increment column can be set at most. No
400 OTSParameterInvalid Column value cannot be given when type is DELETE_ONE_VERSION,DELETE_ALL_VERSION Attribute values cannot be set in the DELETE_ONE_VERSION or DELETE_ALL_VERSION operation. No
400 OTSParameterInvalid Timestamp must be given when type is DELETE_ONE_VERSION When only one version is deleted, this version must be specified. No
400 OTSParameterInvalid Timestamp cannot be given when type is DELETE_ALL_VERSION When all versions are deleted, versions cannot be specified. No
400 OTSParameterInvalid No name is given for attribute column The attribute column name is missing. No
400 OTSParameterInvalid No value is given for column name The attribute column value is missing. No
400 OTSParameterInvalid OpType cannot be given for column name:{ColumnName} in PutRow The operation type cannot be specified in the PutRow operation. The operation type needs to be specified only in the UpdateRow operation. No
400 OTSParameterInvalid Attribute column is missing Attribute columns are missing. No
400 OTSParameterInvalid The number of attribute columns exceeds the limit, limit count:{Limit} , column count: {Count} The number of columns exceeds the limit. No
400 OTSParameterInvalid The length of primary key column: {ColumnName} exceeds the MaxLength: {Limit} with CurrentLength: {Current} The primary key length exceeds the limit. No
400 OTSParameterInvalid No name is given for primary key The name of a primary key column is not set. No
400 OTSParameterInvalid No value is given for primary key name:{PkName} The value of a primary key column is not set. No
400 OTSParameterInvalid OpType cannot be given for primary key name :{PkName} The operation type cannot be specified in primary keys. No
400 OTSParameterInvalid Timestamp cannot be given for primary key name:{PkName} The timestamp cannot be specified in primary keys. No
400 OTSParameterInvalid Duplicated primary key name: {PkName} Duplicate primary key. No
400 OTSParameterInvalid Attribute column cannot be given while reading data The column value does not need to be specified in a read operation. No
400 OTSParameterInvalid Delete marker cannot be given DeleteMarker cannot be specified beyond the DELETE operation. No
400 OTSParameterInvalid The number of columns from the request exceeds the limit, limit count: {Limit} , column count:{current} The number of requested columns exceeds the limit. No
400 OTSParameterInvalid Timestamp must be in range [0, INT64_MAX/1000) The timestamp must be greater than or equal to 0 and smaller than INT64_MAX/1000. No
400 OTSParameterInvalid TimeToLive cannot be 0 or less than -1 TTL cannot be set to 0 or a value smaller than –1, but can be set to –1. No
400 OTSParameterInvalid The maximum versions cannot be less than or equal to 0 The value of MaxVersions cannot be smaller than or equal to 0. No
400 OTSParameterInvalid Specific timestamp cannot be less than 0 The specified timestamp cannot be smaller than 0. No
400 OTSParameterInvalid The maximum deviation must be in range [0, INT64_MAX/1000000] The value of MaxTimeDeviation must be within the entire range. No
400 OTSParameterInvalid Deserialize filter failed Filter deserialization failed, because the filter format encapsulated by the SDK is incorrect. No
400 OTSParameterInvalid Offset in ColumnPaginationFilter must be greater than or equal to 0 The offset value for ColumnPaginationFilter must be greater than or equal to 0. No
400 OTSParameterInvalid Limit in ColumnPaginationFilter must be greater than 0 The Limit value for ColumnPaginationFilter must be greater than or equal to 0. No
400 OTSParameterInvalid Deserialize relation filter failed Single-column filter deserialization failed, probably because the filter format encapsulated by the SDK is incorrect. No
400 OTSParameterInvalid Deserialize composite filter failed Combined-filter deserialization failed, probably because the filter format encapsulated by the SDK is incorrect. No
400 OTSParameterInvalid Deserialize column pagination filter failed. Wide-row filter deserialization failed, probably because the filter format encapsulated by the SDK is incorrect. No
400 OTSParameterInvalid The count of filter exceeds the max:{Limit} The number of filters exceeds the limit. No
400 OTSParameterInvalid Specific tiemstamp and max versions cannot be given at the same time Single timestamp and MaxVersions cannot both exist at the same time. No
400 OTSParameterInvalid Specific tiemstamp and time range cannot be given at the same time Single timestamp and timestamp range cannot both exist at the same time. No
400 OTSParameterInvalid Specific tiemstamp, time range and max versions cannot be given at the same time Single timestamp, timestamp range, and MaxVersions cannot all exist at the same time. Only one of them can exist. No
400 OTSParameterInvalid Duplicated attribute column name with primary key column:{PkName} Duplicate attribute column. No
400 OTSParameterInvalid The total data size of PutRow request exceeds the limit, limit size: {Limit} , data size: {Current} The size of data in the PutRow operation exceeds the limit. No
400 OTSParameterInvalid The total data size of UpdateRow request exceeds the limit, limit size: {Limit} , data size: {Current} The size of data in the UpdateRow operation exceeds the limit. No
400 OTSParameterInvalid No parameter is specified in table options No parameters are set in TableOption. No
400 OTSParameterInvalid Input encoded PK broken, invalidate cell key type:xx PlainBuffer is invalid during encoding, because the cell type is incorrect. No
400 OTSParameterInvalid Input encoded PK broken, length is shorter than expect PlainBuffer is invalid during encoding, because the actual length is inconsistent with the expected one. No
400 OTSParameterInvalid PKAutoIncr can’t be used for read operations The auto-increment attribute cannot be specified in a read operation. No
400 OTSParameterInvalid Begin key must less than end key in FORWARD The start key must be smaller than the end key during forward query. No
400 OTSParameterInvalid Begin key must more than end key in BACKWARD The start key must be greater than the end key during backward query. No
400 OTSParameterInvalid Repeated rows do not support row exist expectation check in BatchModify The BatchWriteRow operation performed on duplicate rows does not support row existence condition check. No
400 OTSParameterInvalid Repeated rows do not support row condition check in BatchModify Duplicate row existence conditions cannot be updated in the BatchWriteRow operation. No
400 OTSParameterInvalid PK column size not the same for all rows in table: {TableName} The numbers of primary keys do not match in different rows. No
400 OTSParameterInvalid Duplicate rows detected in MultiPut Duplicate row. No
400 OTSParameterInvalid Duplicate rows detected in MultiGet Duplicate row. No
400 OTSParameterInvalid Column does not exist:{ColumnName} The column does not exist. No
400 OTSParameterInvalid Invalid max scan size: {Limit} The limit of GetRange exceeds the threshold. No
400 OTSParameterInvalid data format is invalid The row data of PlainBuffer encoding is invalid. No
400 OTSParameterInvalid double can not be used as primary key The double type cannot be used for primary keys. No
400 OTSParameterInvalid data format is invalid, unknown variant type occured The row data of PlainBuffer encoding is invalid, because an invalid value type exists. No
400 OTSParameterInvalid Parse PBMessage from RawString failed Protobuf deserialization fails, probably because the SDK serialization code is incorrect. No
400 OTSParameterInvalid Cell data broken, mismatch header, actual: {Header} , expect: {Header} The row data of PlainBuffer encoding is invalid, because the actual header is inconsistent with the expected one. No
400 OTSParameterInvalid Cell data broken, PK value cannot be NULL, name: {PkName} The row data of PlainBuffer encoding is invalid, because the primary key value for PkName is null. No
400 OTSParameterInvalid Cell data broken, PK is empty The row data of PlainBuffer encoding is invalid, because primary keys are missing. No
400 OTSParameterInvalid Cell data broken, no PK follow PKTag The row data of PlainBuffer encoding is invalid, because the primary-key tag is not followed by primary-key content as expected. No
400 OTSParameterInvalid Cell data broken, attr has no name The row data of PlainBuffer encoding is invalid, because the attribute column name is missing. No
400 OTSParameterInvalid Cell data broken, attr has no value, name:{Name} The row data of PlainBuffer encoding is invalid, because the attribute column value is missing. No
400 OTSParameterInvalid Cell data broken, no Cells follow CellTag The row data of PlainBuffer encoding is invalid, because the cell tag is not followed by cell content as expected. No
400 OTSParameterInvalid Cell data broken, no valid element in Cell, name: {Name} The row data of PlainBuffer encoding is invalid, because the cell format is not clear. No
400 OTSParameterInvalid Cell data broken, cell is not end with checksum[{0x0A}]”] tag. The row data of PlainBuffer encoding is invalid, because cell encoding does not end with CheckSumFlag as expected. No
400 OTSParameterInvalid Cell data broken, row is not end with checksum tag The row data of PlainBuffer encoding is invalid, because row data encoding does not end with CheckSumTag as expected. No
400 OTSParameterInvalid Cell data broken, mismatch tag, actual tag({TAG}), expect({TAG}) The row data of PlainBuffer encoding is invalid, because the expected tags do not exist. No
400 OTSParameterInvalid Cell data broken, wrong string format, size: {Size} The row data of PlainBuffer encoding is invalid, because the string encoding format is incorrect. No
400 OTSParameterInvalid Invalid Capacity Unit for UpdateTable: Either read({CU}) or write({CU}) should be non-negative The read and write CU values must be greater than or equal to 0. No
400 OTSParameterInvalid Auto increment pk must be integer, name: {PkName} The auto-increment column must belong to the integer type. No
400 OTSParameterInvalid Cannot deserialize the request data Request data deserialization fails, probably because the data is null or the data format is invalid. No
400 OTSParameterInvalid Invalid row: missing checksum The row data of PlainBuffer encoding is invalid, because the row checksum is missing. No
400 OTSParameterInvalid Invalid Column({ColumnName}): missing checksum. The column data of PlainBuffer encoding is invalid, because the cell checksum is missing. No
400 OTSParameterInvalid Cell data broken, checksum is mismatch, {UserChecksum}{SeviceChecksum} The row data of PlainBuffer encoding is invalid, because the UserChecksum is inconsistent with the server-calculated SeviceChecksum. No
400 OTSParameterInvalid Cell data broken, has more data in cell, but they can’t be parsed The column data of PlainBuffer encoding is invalid, because excessive unexpected data exists. No
400 OTSParameterInvalid NaN can’t be set to double value Data of the double type cannot be set as NaN values. No
400 OTSParameterInvalid Infinity can’t be set to double value Data of the double type cannot be set as Infinity values. No
400 OTSParameterInvalid Invalid max versions: {Version} . Reason: Max versions must be positive The value of MaxVersions is invalid. It must be greater than 0 or equal to –1. No
400 OTSParameterInvalid invalid range, the begin’s type is different from the end’s,{BeginType}{EndType} The start key type and end key type are inconsistent in GetRange. No
400 OTSParameterInvalid Invalid offset of Filter: {Filter} . Reason: Offset must be nonnegative. The offset value for the filter must be greater than or equal to 0. No
400 OTSParameterInvalid Invalid Capacity Unit:{CU} . Capacity Unit must be nonnegative. The CU value must be greater than or equal to 0. No
400 OTSParameterInvalid Unknown or unsupported CellType in primary key: {PkName} The cell type of primary keys is unrecognizable. No
400 OTSParameterInvalid Invalid boolean real value, value length: {Length} The column data of PlainBuffer encoding is invalid, because the value length of the Bool type is invalid. No
400 OTSParameterInvalid invalid name of column: empty name The attribute column name cannot be null. No
400 OTSParameterInvalid Invalid ModifyType:{ModifyType} The update type is invalid. No
400 OTSParameterInvalid Invalid relation operator: {Operation} The relational operator is invalid. No
400 OTSParameterInvalid Invalid type of filter: {Type} The filter type is invalid. No
400 OTSParameterInvalid Invalid NOT operator: the number of sub-filters must be 1 The NOT operator allows only one subfilter. No
400 OTSParameterInvalid Invalid AND/OR operator: the number of sub-filters must be 2 The AND and OR operators allow two subfilters, respectively. No
400 OTSParameterInvalid Invalid type of sub-filter: {Filter} The subfilter type is invalid. No
400 OTSParameterInvalid {Count} pk auto increment exist in row Multiple auto-increment primary key columns exist. No
400 OTSParameterInvalid Invalid action: {Action} The operation type is invalid. No
400 OTSParameterInvalid Invalid row-existence expectation: {Expectation} The specified row existence value is invalid. No
400 OTSParameterInvalid Invalid row to delete which with pk auto increment The auto-increment column attribute cannot be set in the DELETE operation. No
400 OTSParameterInvalid Invalid expect:{RowExpect} when modify row with pk auto increment The specified row existence value is invalid when primary key column auto-increment is enabled. No
400 OTSParameterInvalid Can’t set condition when modify row with pk auto increment ConditionUpdate cannot be set when primary key column auto-increment is enabled. No
400 OTSParameterInvalid Invalid expect: {RowExpect} when modify a specific row for table with pk auto increment When a specified row of the table with primary key column auto-increment is modified, the specified row existence condition is invalid. No
400 OTSParameterInvalid Invalid cell: {Cell} . missing timestamp The timestamp is missing. No
400 OTSParameterInvalid Invalid cell timestamp: {Timestamp} . Expect: [0, Version::kMax.mVersion / kUsecPerMsec] The specified timestamp is invalid. No
400 OTSParameterInvalid Invalid timestamp for cell: {Timestamp} . timestamp is inapplicable to DELETE_ALL_VERSION Versions cannot be specified when all versions are deleted using DELETE_ALL_VERSION. No
400 OTSParameterInvalid Invalid op type of cell: {OpType} The operation type is invalid. No
400 OTSParameterInvalid Invalid cell: {Cell}. Reason: missing value Cells are invalid because the cell values are missing. No
400 OTSParameterInvalid Invalid request of delete row: missing RowDeleteMarker in request The DELETE request does not contain RowDeleteMarker. No
400 OTSParameterInvalid Invalid request of put/update row: unexpected RowDeleteMarker in request. PutRow and UpdateRow cannot contain RowDeleteMarker. No
400 OTSParameterInvalid Invalid update row request: missing cells in request UpdateRow does not contain attribute column values. No
400 OTSParameterInvalid Invalid delete row request: unexpected cells in request DeleteRow cannot contain attribute column values. No
400 OTSParameterInvalid Invalid request of put row: find cells without values PutRow does not contain attribute column values. No
400 OTSParameterInvalid Can not reserve read capacity unit on hybrid storage cluster: {TableName} Reserved read CU cannot be set for instances of the hybrid storage type. No
400 OTSParameterInvalid Can not reserve write capacity unit on hybrid storage cluster: {TableName} Reserved write CU cannot be set for instances of the hybrid storage type. No
400 OTSParameterInvalid First primary key can’t be auto increment, table: {TableName} The first primary key cannot be set as an auto-increment column. No
400 OTSParameterInvalid the count of auto-incremental primary keys can not be more than 1 The number of auto-increment columns cannot exceed 1. No

Table Store storage exceptions

HTTPStatus ErrorCode ErrorMsg Description Retry
503 OTSServerBusy Server is busy. The internal server of Table Store is busy. Try again later and the operation will be successful. Yes
503 OTSPartitionUnavailable The partition is not available. Loading shards. Try again later and the operation will be successful. Yes
503 OTSTimeout Operation timeout. An internal operation in Table Store times out. Yes
503 OTSServerUnavailable Server is not available. The internal server of Table Store is inaccessible. Yes
409 OTSRowOperationConflict Data is being modified by the other request. Conflict is caused by multiple concurrent requests trying to write the same row. Yes
409 OTSObjectAlreadyExist Requested table already exists. The table to be created by the request already exists. No
404 OTSObjectNotExist Requested table does not exist. The requested table does not exist. No
404 OTSTableNotReady The table is not ready. The table is being initialized after creation. It can be used after several seconds. Yes
403 OTSTooFrequentReserved ThroughputAdjustment Capacity unit adjustment is too frequent. The reserved read/write throughput has been adjusted too frequently. Yes
403 OTSCapacityUnitExhausted Capacity unit is not enough. The reserved read/write throughput for this shard is used up. No
403 OTSConditionCheckFail Condition check failed. Pre-query condition check failed. No
400 OTSOutOfRowSizeLimit The total data size of columns in one row exceeded the limit. The total data size of all columns in this row exceeds the limit. No
400 OTSOutOfColumnCountLimit The number of columns in one row exceeded the limit. The total number of columns in this row exceeds the limit. No
400 OTSInvalidPK Primary key schema mismatch. Primary key does not match. No
Thank you! We've received your feedback.