file cassandra.h
C/C++ driver for Apache Cassandra. Uses the Cassandra Query Language versions 3 over the Cassandra Binary Protocol (versions 1 or 2).
Macros
CASS_VERSION_MAJOR
=1
CASS_VERSION_MINOR
=0
CASS_VERSION_PATCH
=2
CASS_VERSION_SUFFIX
=""
CASS_INET_V4_LENGTH
=4
The size of a IPv4 address
CASS_INET_V6_LENGTH
=16
The size of a IPv6 address
CASS_UUID_STRING_LENGTH
=37
The size of a hexidecimal UUID string including a null terminator.
CASS_LOG_MAX_MESSAGE_SIZE
=256
Maximum size of a log message
Types
cass_float_t
typedef float cass_float_t
cass_double_t
typedef double cass_double_t
cass_int8_t
typedef char cass_int8_t
cass_uint8_t
typedef unsigned char cass_uint8_t
cass_int16_t
typedef short cass_int16_t
cass_uint16_t
typedef unsigned short cass_uint16_t
cass_int32_t
typedef int cass_int32_t
cass_uint32_t
typedef unsigned int cass_uint32_t
cass_int64_t
typedef long long cass_int64_t
cass_uint64_t
typedef unsigned long long cass_uint64_t
cass_size_t
typedef size_t cass_size_t
cass_byte_t
typedef cass_uint8_t cass_byte_t
cass_duration_t
typedef cass_uint64_t cass_duration_t
CassCluster
typedef struct CassCluster_ CassCluster
CassSession
typedef struct CassSession_ CassSession
CassStatement
typedef struct CassStatement_ CassStatement
CassBatch
typedef struct CassBatch_ CassBatch
CassFuture
typedef struct CassFuture_ CassFuture
CassPrepared
typedef struct CassPrepared_ CassPrepared
CassResult
typedef struct CassResult_ CassResult
CassIterator
typedef struct CassIterator_ CassIterator
CassRow
typedef struct CassRow_ CassRow
CassValue
typedef struct CassValue_ CassValue
CassCollection
typedef struct CassCollection_ CassCollection
CassSsl
typedef struct CassSsl_ CassSsl
CassSchema
typedef struct CassSchema_ CassSchema
CassSchemaMeta
typedef struct CassSchemaMeta_ CassSchemaMeta
CassSchemaMetaField
typedef struct CassSchemaMetaField_ CassSchemaMetaField
CassUuidGen
typedef struct CassUuidGen_ CassUuidGen
CassFutureCallback
typedef void(* CassFutureCallback) (CassFuture *future, void *data)
A callback that’s notified when the future is set.
CassLogCallback
typedef void(* CassLogCallback) (const CassLogMessage *message, void *data)
A callback that’s used to handle logging.
Enums
cass_bool_t
-
cass_false
= 0 -
cass_true
= 1
CassConsistency
-
CASS_CONSISTENCY_ANY
= 0x0000 -
CASS_CONSISTENCY_ONE
= 0x0001 -
CASS_CONSISTENCY_TWO
= 0x0002 -
CASS_CONSISTENCY_THREE
= 0x0003 -
CASS_CONSISTENCY_QUORUM
= 0x0004 -
CASS_CONSISTENCY_ALL
= 0x0005 -
CASS_CONSISTENCY_LOCAL_QUORUM
= 0x0006 -
CASS_CONSISTENCY_EACH_QUORUM
= 0x0007 -
CASS_CONSISTENCY_SERIAL
= 0x0008 -
CASS_CONSISTENCY_LOCAL_SERIAL
= 0x0009 -
CASS_CONSISTENCY_LOCAL_ONE
= 0x000A
CassValueType
-
CASS_VALUE_TYPE_UNKNOWN
= 0xFFFF -
CASS_VALUE_TYPE_CUSTOM
= 0x0000 -
CASS_VALUE_TYPE_ASCII
= 0x0001 -
CASS_VALUE_TYPE_BIGINT
= 0x0002 -
CASS_VALUE_TYPE_BLOB
= 0x0003 -
CASS_VALUE_TYPE_BOOLEAN
= 0x0004 -
CASS_VALUE_TYPE_COUNTER
= 0x0005 -
CASS_VALUE_TYPE_DECIMAL
= 0x0006 -
CASS_VALUE_TYPE_DOUBLE
= 0x0007 -
CASS_VALUE_TYPE_FLOAT
= 0x0008 -
CASS_VALUE_TYPE_INT
= 0x0009 -
CASS_VALUE_TYPE_TEXT
= 0x000A -
CASS_VALUE_TYPE_TIMESTAMP
= 0x000B -
CASS_VALUE_TYPE_UUID
= 0x000C -
CASS_VALUE_TYPE_VARCHAR
= 0x000D -
CASS_VALUE_TYPE_VARINT
= 0x000E -
CASS_VALUE_TYPE_TIMEUUID
= 0x000F -
CASS_VALUE_TYPE_INET
= 0x0010 -
CASS_VALUE_TYPE_LIST
= 0x0020 -
CASS_VALUE_TYPE_MAP
= 0x0021 -
CASS_VALUE_TYPE_SET
= 0x0022
CassCollectionType
-
CASS_COLLECTION_TYPE_LIST
= CASS_VALUE_TYPE_LIST -
CASS_COLLECTION_TYPE_MAP
= CASS_VALUE_TYPE_MAP -
CASS_COLLECTION_TYPE_SET
= CASS_VALUE_TYPE_SET
CassBatchType
-
CASS_BATCH_TYPE_LOGGED
= 0 -
CASS_BATCH_TYPE_UNLOGGED
= 1 -
CASS_BATCH_TYPE_COUNTER
= 2
CassIteratorType
CASS_ITERATOR_TYPE_RESULT
CASS_ITERATOR_TYPE_ROW
CASS_ITERATOR_TYPE_COLLECTION
CASS_ITERATOR_TYPE_MAP
CASS_ITERATOR_TYPE_SCHEMA_META
CASS_ITERATOR_TYPE_SCHEMA_META_FIELD
CassSchemaMetaType
CASS_SCHEMA_META_TYPE_KEYSPACE
CASS_SCHEMA_META_TYPE_TABLE
CASS_SCHEMA_META_TYPE_COLUMN
CassLogLevel
CASS_LOG_DISABLED
CASS_LOG_CRITICAL
CASS_LOG_ERROR
CASS_LOG_WARN
CASS_LOG_INFO
CASS_LOG_DEBUG
CASS_LOG_TRACE
CassSslVerifyFlags
-
CASS_SSL_VERIFY_NONE
= 0 -
CASS_SSL_VERIFY_PEER_CERT
= 1 -
CASS_SSL_VERIFY_PEER_IDENTITY
= 2
CassErrorSource
CASS_ERROR_SOURCE_NONE
CASS_ERROR_SOURCE_LIB
CASS_ERROR_SOURCE_SERVER
CASS_ERROR_SOURCE_SSL
CASS_ERROR_SOURCE_COMPRESSION
CassError
-
CASS_OK
= 0 -
CASS_ERROR_LIB_BAD_PARAMS
= (( CASS_ERROR_SOURCE_LIB << 24) | 1 ) -
CASS_ERROR_LIB_NO_STREAMS
= (( CASS_ERROR_SOURCE_LIB << 24) | 2 ) -
CASS_ERROR_LIB_UNABLE_TO_INIT
= (( CASS_ERROR_SOURCE_LIB << 24) | 3 ) -
CASS_ERROR_LIB_MESSAGE_ENCODE
= (( CASS_ERROR_SOURCE_LIB << 24) | 4 ) -
CASS_ERROR_LIB_HOST_RESOLUTION
= (( CASS_ERROR_SOURCE_LIB << 24) | 5 ) -
CASS_ERROR_LIB_UNEXPECTED_RESPONSE
= (( CASS_ERROR_SOURCE_LIB << 24) | 6 ) -
CASS_ERROR_LIB_REQUEST_QUEUE_FULL
= (( CASS_ERROR_SOURCE_LIB << 24) | 7 ) -
CASS_ERROR_LIB_NO_AVAILABLE_IO_THREAD
= (( CASS_ERROR_SOURCE_LIB << 24) | 8 ) -
CASS_ERROR_LIB_WRITE_ERROR
= (( CASS_ERROR_SOURCE_LIB << 24) | 9 ) -
CASS_ERROR_LIB_NO_HOSTS_AVAILABLE
= (( CASS_ERROR_SOURCE_LIB << 24) | 10 ) -
CASS_ERROR_LIB_INDEX_OUT_OF_BOUNDS
= (( CASS_ERROR_SOURCE_LIB << 24) | 11 ) -
CASS_ERROR_LIB_INVALID_ITEM_COUNT
= (( CASS_ERROR_SOURCE_LIB << 24) | 12 ) -
CASS_ERROR_LIB_INVALID_VALUE_TYPE
= (( CASS_ERROR_SOURCE_LIB << 24) | 13 ) -
CASS_ERROR_LIB_REQUEST_TIMED_OUT
= (( CASS_ERROR_SOURCE_LIB << 24) | 14 ) -
CASS_ERROR_LIB_UNABLE_TO_SET_KEYSPACE
= (( CASS_ERROR_SOURCE_LIB << 24) | 15 ) -
CASS_ERROR_LIB_CALLBACK_ALREADY_SET
= (( CASS_ERROR_SOURCE_LIB << 24) | 16 ) -
CASS_ERROR_LIB_INVALID_STATEMENT_TYPE
= (( CASS_ERROR_SOURCE_LIB << 24) | 17 ) -
CASS_ERROR_LIB_NAME_DOES_NOT_EXIST
= (( CASS_ERROR_SOURCE_LIB << 24) | 18 ) -
CASS_ERROR_LIB_UNABLE_TO_DETERMINE_PROTOCOL
= (( CASS_ERROR_SOURCE_LIB << 24) | 19 ) -
CASS_ERROR_LIB_NULL_VALUE
= (( CASS_ERROR_SOURCE_LIB << 24) | 20 ) -
CASS_ERROR_LIB_NOT_IMPLEMENTED
= (( CASS_ERROR_SOURCE_LIB << 24) | 21 ) -
CASS_ERROR_LIB_UNABLE_TO_CONNECT
= (( CASS_ERROR_SOURCE_LIB << 24) | 22 ) -
CASS_ERROR_LIB_UNABLE_TO_CLOSE
= (( CASS_ERROR_SOURCE_LIB << 24) | 23 ) -
CASS_ERROR_SERVER_SERVER_ERROR
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x0000 ) -
CASS_ERROR_SERVER_PROTOCOL_ERROR
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x000A ) -
CASS_ERROR_SERVER_BAD_CREDENTIALS
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x0100 ) -
CASS_ERROR_SERVER_UNAVAILABLE
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x1000 ) -
CASS_ERROR_SERVER_OVERLOADED
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x1001 ) -
CASS_ERROR_SERVER_IS_BOOTSTRAPPING
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x1002 ) -
CASS_ERROR_SERVER_TRUNCATE_ERROR
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x1003 ) -
CASS_ERROR_SERVER_WRITE_TIMEOUT
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x1100 ) -
CASS_ERROR_SERVER_READ_TIMEOUT
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x1200 ) -
CASS_ERROR_SERVER_SYNTAX_ERROR
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x2000 ) -
CASS_ERROR_SERVER_UNAUTHORIZED
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x2100 ) -
CASS_ERROR_SERVER_INVALID_QUERY
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x2200 ) -
CASS_ERROR_SERVER_CONFIG_ERROR
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x2300 ) -
CASS_ERROR_SERVER_ALREADY_EXISTS
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x2400 ) -
CASS_ERROR_SERVER_UNPREPARED
= (( CASS_ERROR_SOURCE_SERVER << 24) | 0x2500 ) -
CASS_ERROR_SSL_INVALID_CERT
= (( CASS_ERROR_SOURCE_SSL << 24) | 1 ) -
CASS_ERROR_SSL_INVALID_PRIVATE_KEY
= (( CASS_ERROR_SOURCE_SSL << 24) | 2 ) -
CASS_ERROR_SSL_NO_PEER_CERT
= (( CASS_ERROR_SOURCE_SSL << 24) | 3 ) -
CASS_ERROR_SSL_INVALID_PEER_CERT
= (( CASS_ERROR_SOURCE_SSL << 24) | 4 ) -
CASS_ERROR_SSL_IDENTITY_MISMATCH
= (( CASS_ERROR_SOURCE_SSL << 24) | 5 ) -
CASS_ERROR_SSL_PROTOCOL_ERROR
= (( CASS_ERROR_SOURCE_SSL << 24) | 6 )
Functions
Gets a description for an error code.
void
cass_log_cleanup
( )Deprecated:
This is no longer useful and does nothing. Expect this to be removed in a few releases.
Explicty wait for the log to flush and deallocate resources. This MUST be the last call using the library. It is an error to call any cass_*() functions after this call.
Sets the log level.
Note: This needs to be done before any call that might log, such as any of the cass_cluster_*() or cass_ssl_*() functions.
Default: CASS_LOG_WARN
Sets a callback for handling logging events.
Note: This needs to be done before any call that might log, such as any of the cass_cluster_*() or cass_ssl_*() functions.
Default: An internal callback that prints to stderr
Deprecated:
This is no longer useful and does nothing. Expect this to be removed in a few releases.
Sets the log queue size.
Note: This needs to be done before any call that might log, such as any of the cass_cluster_*() or cass_ssl_*() functions.
Default: 2048
Gets the string for a log level.