Skip to content

Commit d5c30b8

Browse files
seperate quorum
1 parent 1c4ff26 commit d5c30b8

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

src/data/cassandra/impl/Cluster.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,12 @@ Cluster::Cluster(Settings const& settings) : ManagedObject{cass_cluster_new(), k
6161
cass_cluster_set_request_timeout(*this, settings.requestTimeout.count());
6262

6363
// TODO: AWS keyspace reads should be local_one to save cost
64-
if (settings.provider == "aws_keyspace") {
64+
if (settings.provider == toString(cassandra::impl::Provider::Keyspace)) {
6565
if (auto const rc = cass_cluster_set_consistency(*this, CASS_CONSISTENCY_LOCAL_QUORUM); rc != CASS_OK) {
66+
throw std::runtime_error(fmt::format("Error setting keyspace consistency: {}", cass_error_desc(rc)));
67+
}
68+
} else {
69+
if (auto const rc = cass_cluster_set_consistency(*this, CASS_CONSISTENCY_QUORUM); rc != CASS_OK) {
6670
throw std::runtime_error(fmt::format("Error setting cassandra consistency: {}", cass_error_desc(rc)));
6771
}
6872
}

src/data/cassandra/impl/Statement.hpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,15 +58,17 @@ class Statement : public ManagedObject<CassStatement> {
5858
explicit Statement(std::string_view query, Args&&... args)
5959
: ManagedObject{cass_statement_new_n(query.data(), query.size(), sizeof...(args)), kDELETER}
6060
{
61-
cass_statement_set_consistency(*this, CASS_CONSISTENCY_LOCAL_QUORUM);
62-
cass_statement_set_is_idempotent(*this, cass_true);
61+
// TODO: figure out how to set consistency level in config
62+
// NOTE: Keyspace doesn't support QUORUM at write level
63+
// cass_statement_set_consistency(*this, CASS_CONSISTENCY_LOCAL_QUORUM);
64+
// cass_statement_set_is_idempotent(*this, cass_true);
6365
bind<Args...>(std::forward<Args>(args)...);
6466
}
6567

6668
/* implicit */ Statement(CassStatement* ptr) : ManagedObject{ptr, kDELETER}
6769
{
68-
cass_statement_set_consistency(*this, CASS_CONSISTENCY_LOCAL_QUORUM);
69-
cass_statement_set_is_idempotent(*this, cass_true);
70+
// cass_statement_set_consistency(*this, CASS_CONSISTENCY_LOCAL_QUORUM);
71+
// cass_statement_set_is_idempotent(*this, cass_true);
7072
}
7173

7274
/**

0 commit comments

Comments
 (0)