struct CassSession
A session object is used to execute queries and maintains cluster state through the control connection. The control connection is used to auto-discover nodes and monitor cluster changes (topology and schema). Each session also maintains multiple pools of connections to cluster nodes which are used to query the cluster.
Instances of the session object are thread-safe to execute queries.
Functions
CassFuture *
cass_session_execute_dse_graph
(CassSession *
session, const DseGraphStatement *
statement )
Execute a graph statement.
CassSession *
cass_session_new
( )Creates a new session.
Frees a session instance. If the session is still connected it will be synchronously closed before being deallocated.
Important: Do not free a session in a future callback. Freeing a session in a future callback will cause a deadlock.
Connects a session.
CassFuture *
cass_session_connect_keyspace
(CassSession *
session, const CassCluster *
cluster, const char *
keyspace )
Connects a session and sets the keyspace.
CassFuture *
cass_session_connect_keyspace_n
(CassSession *
session, const CassCluster *
cluster, const char *
keyspace, size_t
keyspace_length )
Same as CassSession::cass_session_connect_keyspace
, but with lengths for string parameters.
Closes the session instance, outputs a close future which can be used to determine when the session has been terminated. This allows in-flight requests to finish.
Create a prepared statement.
CassFuture *
cass_session_prepare_n
(CassSession *
session, const char *
query, size_t
query_length )
Same as CassSession::cass_session_prepare
, but with lengths for string parameters.
CassFuture *
cass_session_prepare_from_existing
(CassSession *
session, CassStatement *
statement )
Create a prepared statement from an existing statement.
Note: Bound statements will inherit the keyspace, consistency, serial consistency, request timeout and retry policy of the existing statement.
Execute a query or bound statement.
Execute a batch statement.
Requires Cassandra: 2.0+
Gets a snapshot of this session’s schema metadata. The returned snapshot of the schema metadata is not updated. This function must be called again to retrieve any schema changes since the previous call.
Gets a copy of this session’s performance/diagnostic metrics.
void
cass_session_get_speculative_execution_metrics
(const CassSession *
session, CassSpeculativeExecutionMetrics *
output )
Gets a copy of this session’s speculative execution metrics.