此操作不支持一致性级别的本地\u one支持的一致性级别为:本地\u仲裁

l7mqbcuq  于 2021-06-13  发布在  Cassandra
关注(0)|答案(1)|浏览(378)

我正在使用aws密钥空间并尝试从c插入数据#,但出现此错误。“此操作不支持一致性级别本地#one。支持的一致性级别为:“本地仲裁”。谁能帮帮我吗。
aws键空间

CREATE KEYSPACE IF NOT EXISTS "DevOps"
   WITH REPLICATION={'class': 'SingleRegionStrategy'} ;

table

CREATE TABLE IF NOT EXISTS "DevOps"."projectdetails" (
"id" UUID PRIMARY KEY,
"name" text,
"lastupdatedtime" timestamp,
"baname" text,
"customerid" UUID)

c代码

public async Task AddRecord(List<projectdetails> projectDetails)
        {

            try
            {
                if (projectDetails.Count > 0)
                {
                    foreach (var item in projectDetails)
                    {
                        projectdetails projectData = new projectdetails();
                        projectData.id = item.id;
                        projectData.name = item.name;
                        projectData.baname = "Vishal";
                        projectData.lastupdatedtime = item.lastupdatedtime;
                        projectData.customerid = 1;
                        await mapper.InsertAsync<projectdetails>(projectData);
                    }
                }
            }

            catch (Exception e) 
            { 

            }
        }
ijxebb2r

ijxebb2r1#

错误清楚地表明您需要使用正确的一致性级别 LOCAL_QUORUM 而不是 LOCAL_ONE 默认情况下使用。aws文档说,对于写操作,它只支持一致性级别。可以使用的版本设置一致性级别 InsertAsync 它接受cqlqueryoptions,如下所示(在应用程序初始化期间,可能只创建一次查询选项的示例):

mapper.InsertAsync<projectdetails>(projectData, 
  new CqlQueryOptions().SetConsistencyLevel(ConsistencyLevel.LocalQuorum))

相关问题