Menu

CassBatch

struct CassBatch

A group of statements that are executed as a single batch.

Note: Batches are not supported by the binary protocol version 1.

Requires Apache Cassandra: 2.0+

Public Functions

CassBatch *cass_batch_new(CassBatchType type)

Creates a new batch statement with batch type.

Requires Apache Cassandra: 2.0+

Return

Returns a batch statement that must be freed.

See

cass_batch_free()

Parameters
  • type:

void cass_batch_free(CassBatch *batch)

Frees a batch instance. Batches can be immediately freed after being executed.

Requires Apache Cassandra: 2.0+

Parameters
  • batch:

CassError cass_batch_set_keyspace(CassBatch *batch, const char *keyspace)

Sets the batch’s keyspace. When using protocol v5 or greater it overrides the session’s keyspace for the batch.

Note: If not set explicitly then the batch will inherit the keyspace of the first child statement with a non-empty keyspace.

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • keyspace:

CassError cass_batch_set_keyspace_n(CassBatch *batch, const char *keyspace, size_t keyspace_length)

Same as cass_batch_set_keyspace(), but with lengths for string parameters.

Return

same as cass_batch_set_keyspace()

See

cass_batch_set_keyspace()

Parameters
  • batch:

  • keyspace:

  • keyspace_length:

CassError cass_batch_set_consistency(CassBatch *batch, CassConsistency consistency)

Sets the batch’s consistency level

Requires Apache Cassandra: 2.0+

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • consistency: The batch’s write consistency.

CassError cass_batch_set_serial_consistency(CassBatch *batch, CassConsistency serial_consistency)

Sets the batch’s serial consistency level.

Requires Apache Cassandra: 2.0+

Default: Not set

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • serial_consistency:

CassError cass_batch_set_timestamp(CassBatch *batch, cass_int64_t timestamp)

Sets the batch’s timestamp.

Requires Apache Cassandra: 2.1+

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • timestamp:

CassError cass_batch_set_request_timeout(CassBatch *batch, cass_uint64_t timeout_ms)

Sets the batch’s timeout for waiting for a response from a node.

Default: Disabled (use the cluster-level request timeout)

Return

CASS_OK if successful, otherwise an error occurred.

See

cass_cluster_set_request_timeout()

Parameters
  • batch:

  • timeout_ms: Request timeout in milliseconds. Use 0 for no timeout or CASS_UINT64_MAX to disable (to use the cluster-level request timeout).

CassError cass_batch_set_is_idempotent(CassBatch *batch, cass_bool_t is_idempotent)

Sets whether the statements in a batch are idempotent. Idempotent batches are able to be automatically retried after timeouts/errors and can be speculatively executed.

Return

CASS_OK if successful, otherwise an error occurred.

See

cass_cluster_set_constant_speculative_execution_policy()

See

cass_execution_profile_set_constant_speculative_execution_policy()

Parameters
  • batch:

  • is_idempotent:

CassError cass_batch_set_retry_policy(CassBatch *batch, CassRetryPolicy *retry_policy)

Sets the batch’s retry policy.

Requires Apache Cassandra: 2.0+

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • retry_policy:

CassError cass_batch_set_custom_payload(CassBatch *batch, const CassCustomPayload *payload)

Sets the batch’s custom payload.

Requires Apache Cassandra: 2.2+

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • payload:

CassError cass_batch_add_statement(CassBatch *batch, CassStatement *statement)

Adds a statement to a batch.

Requires Apache Cassandra: 2.0+

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • statement:

CassError cass_batch_set_execution_profile(CassBatch *batch, const char *name)

Sets the execution profile to execute the batch with.

Note: NULL or empty string will clear execution profile from batch

Return

CASS_OK if successful, otherwise an error occurred.

See

cass_cluster_set_execution_profile()

Parameters
  • batch:

  • name:

CassError cass_batch_set_execution_profile_n(CassBatch *batch, const char *name, size_t name_length)

Same as cass_batch_set_execution_profile(), but with lengths for string parameters.

Return

CASS_OK if successful, otherwise an error occurred.

See

cass_batch_set_execution_profile()

Parameters
  • batch:

  • name:

  • name_length:

CassError cass_batch_set_execute_as(CassBatch *batch, const char *name)

Sets the name of the user to execute the batch as.

Return

CASS_OK if successful, otherwise an error occurred.

Parameters
  • batch:

  • name:

CassError cass_batch_set_execute_as_n(CassBatch *batch, const char *name, size_t name_length)

Same as cass_batch_set_execute_as(), but with lengths for string parameters.

Return

same as cass_batch_set_execute_as()

See

cass_batch_set_execute_as()

Parameters
  • batch:

  • name:

  • name_length: