今天碰到的问题跟这个一模一样,特地转过来记录一下

https://support.datastax.com/hc/en-us/articles/204893189-CQL-query-results-in-Unable-to-complete-request-one-or-more-nodes-were-unavailable-

CQL query results in "Unable to complete request: one or more nodes were unavailable"

Summary

When querying the cluster, requests could not be completed with nodes unavailable to service the query.

Symptoms

Data Manipulation Language (DML) queries (e.g. SELECTINSERTUPDATE) against the database fail despite all nodes being operational.

Nodes can be confirmed to be operational since Data Definition Language (DDL) queries (e.g. DESCRIBEALTER) return the expected results.

Below is a sample output from a cqlsh query:

cqlsh> SELECT * FROM music.albums ;
Unable to complete request: one or more nodes were unavailable.

Cause

In this instance, the issue is a result of incorrect replication settings on the keyspace.

The sample nodetool status output shows that there is a single-datacentre named Cassandra:

Datacenter: Cassandra 
=====================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 10.0.1.2 1.67 GB 256 36.8% 109dc707-1df2-4f50-9ec5-d611f1772f5a RAC1
UN 10.0.1.3 1.66 GB 256 30.0% a88a9570-9ead-4cdd-a81b-daf68013f8ab RAC1
UN 10.0.1.4 1.66 GB 256 33.2% 239d8975-1783-4935-addb-691173214045 RAC1

However, the music keyspace in the example above shows that the data is replicated to a non-existent datacentre named DC1:

cqlsh> DESCRIBE KEYSPACE music ;

CREATE KEYSPACE music WITH replication = { 
'class': 'NetworkTopologyStrategy',
'DC1': '3'
};
...

Solution

Update the replication settings on the keyspace with the correct datacentre name.

Getting Cassandra datacenter name in cqlsh

cqlsh> use system;
cqlsh:system> select data_center from local; data_center
-------------
datacenter1

Step 1 - Alter the keyspace definition:

cqlsh> ALTER KEYSPACE music WITH replication = { 
'class': 'NetworkTopologyStrategy',
'Cassandra': '3'
};

Step 2 - (OPTIONAL) It may also be necessary to run a rolling repair around the ring:

$ nodetool repair -pr -- music

See also

KB article - Read and login failures after updating keyspace replication

[转载] cassandra Unable to complete request: one or more nodes were unavailable的更多相关文章

  1. windows上zend server安装 报The server encountered an internal error or misconfiguration and was unable to complete your request -解决方法 摘自网络

    windows上zend server安装完成后报如下错误:   Internal Server Error The server encountered an internal error or m ...

  2. 【MyEcplise】导入项目后,会定时弹出一下错误MyEcplise tern was unable to complete your request in time.This couble happen if your project contains several large javaScript libraies.

    Myecplise弹出错误如下: 错误代码: MyEcplise tern was unable to complete your request in time.This couble happen ...

  3. PHP错误The server encountered an internal error or misconfiguration and was unable to complete your re

    我的笔记本电脑上的环境安装了很多次,但是运行项目时总是会报The server encountered an internal error or misconfiguration and was un ...

  4. Unable to complete the scan for annotations for web application [/wrs] due to a StackOverflowError. Possible root causes include a too low setting for -Xss and illegal cyclic inheritance dependencies.

    tomcat启动报错:Jul 20, 2018 11:48:37 AM org.apache.catalina.core.ContainerBase addChildInternalSEVERE: C ...

  5. Could not complete request

    Could not complete request com.alibaba.dubbo.rpc.RpcException: Forbid consumer 10.254.1.26 access se ...

  6. Unable to parse request org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-data request failed. null

    最近做一个web项目中有上传文件的功能,已经写出并在本地和部署到服务器上测试了好几个文件上传都没问题(我用的是tomcat).部署上服务器,上传图片时有的图片大就回在tomcat日志报如下错误: Un ...

  7. Unable to process request: General SSLEngine problem.Unable to connect to neo4j at `localhost:7687`, because the certificate the server uses has changed.

    Exception in thread "main" org.neo4j.driver.v1.exceptions.ClientException: Unable to proce ...

  8. Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/Cppcc] due to a StackOverflowError. Possible root causes include a too low setting for -Xs

    解决办法:(1)修改D:\Java\apache-tomcat-7.0.88\conf\catalina.properties (122line) (2)如org.apache.catalina.st ...

  9. tomcat启动时检测到循环继承而栈溢出的问题:Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/test] due to a StackOverflowError. Possible root causes include

    最近在公司更新一个老项目的时候,发现部署项目后tomcat报错,错误如下: Caused by: java.lang.IllegalStateException: Unable to complete ...

随机推荐

  1. S 导员工信息

    EXCEL模板 [Public] ConnectString=host="siebel://10.10.1.174:2321/SBA_NR_DEV/SMObjMgr_chs ConnectU ...

  2. ubuntu14.04环境下利用docker搭建solrCloud集群

    在Ubuntu14.04操作系统的宿主机中,安装docker17.06.3,将宿主机的操作系统制作成docker基础镜像,之后使用自制的基础镜像在docker中启动3个容器,分配固定IP,再在3个容器 ...

  3. Maven的pom.xml介绍

    6.1 简介 pom.xml文件是Maven进行工作的主要配置文件.在这个文件中我们可以配置Maven项目的groupId.artifactId和version等Maven项目必须的元素:可以配置Ma ...

  4. Redhat安装python环境(readline模块)

    多次尝试,发现linux下安装软件: yum install readline-devel readline patch yum update python -y # 这步很重要,修复了报错 pip3 ...

  5. JavaScript stringObject.replace() 方法

    定义和用法: replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. 语法: stringObject.replace(RegExp/substr,reol ...

  6. MyBatis 实用篇(二)配置文件

    MyBatis 实用篇(二)配置文件 一.全局配置 全局配置:http://www.mybatis.org/mybatis-3/zh/configuration.html <?xml versi ...

  7. Java JarFile 解析

    Java JarFile 解析 package com.github.binarylei; import java.io.*; import java.net.URL; import java.net ...

  8. 13 Calculating Expected Offspring

    Problem For a random variable XX taking integer values between 1 and nn, the expected value of XX is ...

  9. nodejs顺序执行shell

    最近工作中需要用到nodejs编写脚本来顺序执行自动化测试用例,编写代码如下: var runCommand = function (command){ child_process.exec(comm ...

  10. URAL1991 The battle near the swamp 2017-04-12 18:07 92人阅读 评论(0) 收藏

    The battle near the swamp Gungan: Jar Jar, usen da booma!  Jar Jar: What? Mesa no have a booma!  Gun ...