小编sam*_*977的帖子

Cassandra错误 - 无法限制聚类列(前一列受非EQ关系限制)

我们使用Cassandra作为我们车队管理解决方案的数据历史记录.我们在卡桑德拉(Cassandra)有一张桌子,用于存储车辆行驶的详细信息.表结构如下

CREATE TABLE  journeydetails(
bucketid text,
vehicleid text,
starttime timestamp,
stoptime timestamp,
travelduration bigint,
PRIMARY KEY (bucketid,vehicleid,starttime,travelduration)
);
Run Code Online (Sandbox Code Playgroud)

哪里:

  1. bucketid: - 分区键,它是月份和年份的组合
  2. vehicleid:车辆的唯一身份证
  3. starttime: - 旅程的开始时间
  4. 结束时间: - 旅程的结束时间
  5. travelduration: - 旅行持续时间,以毫秒为单位

我们想运行以下查询 - 获取车辆的所有行程 - 2015-12-1和2015-12-3之间的1234567,其行程持续时间大于30分钟

当我运行此查询时:

select * from  journeydetails where bucketid in('2015-12') and vehicleid in('1234567') 
  and starttime > '2015-12-1 00:00:00' and starttime < '2015-12-3 23:59:59' 
  and travelduration > 1800000;
Run Code Online (Sandbox Code Playgroud)

我得到这个结果:

InvalidRequest: code=2200 [Invalid query] message="Clustering column "travelduration"
cannot be restricted (preceding column "starttime" is restricted by a …
Run Code Online (Sandbox Code Playgroud)

cql cassandra datastax-enterprise cql3

13
推荐指数
1
解决办法
1万
查看次数

Visual Studio 2019 - 无法调试 Azure 函数 -(桌面 CLR (.NETFramework) 与托管 (CoreCLR)' 调试器)

我已经在全新的笔记本电脑上安装了 Visual Studio 2019 社区版本 16.4.4

操作系统:- Windows 10 家庭版单一语言

以下是我的笔记本电脑中安装的 .NET Core SDKS在此处输入图片说明

命令 dotnet --info 给了我以下详细信息

在此处输入图片说明

我用 V3 模板创建了一个 Azure 函数

在此处输入图片说明

项目设置如下

当我尝试调试时,出现以下错误

发生了致命错误,需要终止调试。调试器被配置为使用桌面 CLR (.NETFramework) 托管调试器,但目标进程加载了 CoreCLR (.Net Core) 运行时。要调试此项目,请将其配置为使用“托管 (CoreCLR)”调试器。”

在此处输入图片说明 尝试了以下链接中提到的几个选项

https://social.msdn.microsoft.com/Forums/en-US/59f880f7-ed60-4842-bc55-a9400971c58b/problem-debugging-net-core?forum=vsdebug

debugging .net-core azure-functions visual-studio-2019

7
推荐指数
2
解决办法
5013
查看次数

尝试查询的所有主机均失败-com.datastax.driver.core.exceptions.OperationTimedOutException-操作超时)

我们在Digital Ocean上建立了一个3节点的Cassandra集群,并编写了一些Java程序,该程序使用Java CQL驱动程序连接到cassandra。查询将继续运行一段时间,但是一段时间后,我们将收到以下异常

Exception in thread "main" com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /128.199.98.201:9042 (com.datastax.driver.core.exceptions.OperationTimedOutException: [/128.199.98.201] Operation timed out))
at com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:231)
at com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:77)
at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:1402)
at com.datastax.driver.core.Cluster.init(Cluster.java:164)
at com.datastax.driver.core.Cluster.connectAsync(Cluster.java:343)
at com.datastax.driver.core.Cluster.connectAsync(Cluster.java:316)
at com.datastax.driver.core.Cluster.connect(Cluster.java:254)
at com.attinad.cantiz.iot.platform.cassandrasample.PagingExample.connect(PagingExample.java:24)
at com.attinad.cantiz.iot.platform.cassandrasample.App.main(App.java:31)
Run Code Online (Sandbox Code Playgroud)

cassandra.yaml中的各种超时值如下所示

  1. range_request_timeout_in_ms:10000
  2. write_request_timeout_in_ms:2000
  3. counter_write_request_timeout_in_ms:5000
  4. cas_contention_timeout_in_ms:1000
  5. truncate_request_timeout_in_ms:60000
  6. request_timeout_in_ms:10000

任何有关问题是超时问题还是编码问题的想法,我们将不胜感激。

java timeout cassandra datastax-enterprise

5
推荐指数
0
解决办法
954
查看次数

Cassandra Java驱动程序错误 - 所有主机都尝试查询失败连接已关闭

所有,

我在Digital Ocean中有一个3节点的集群cassandra.根据CQL中的SHOW VERSION,cassandra的版本如下所示

[cqlsh 5.0.1 | Cassandra 3.0.0 | CQL规范3.3.1 | 原生协议v4]

我能够使用cqlsh从另一个节点连接到集群的一个节点并运行命令...但是当我尝试使用java驱动程序进行连接时,我得到以下异常

com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /128.xxx.xxx.xx:9042 (com.datastax.driver.core.TransportException: [/128.xxx.xxx.xxx:9042] Connection has been closed))
at com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:222)
at com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:77)
at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:1232)
at com.datastax.driver.core.Cluster.getMetadata(Cluster.java:336)
at com.attinad.cantiz.iot.platform.vehicledatapoc.App.connect(App.java:22)
at com.attinad.cantiz.iot.platform.vehicledatapoc.App.main(App.java:14)
Run Code Online (Sandbox Code Playgroud)

我使用的java驱动程序的版本是2.0.10.maven配置如下

<dependency>
<groupId>com.datastax.cassandra</groupId>
<artifactId>cassandra-driver-core</artifactId>
<version>2.0.10</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我检查了cassandra.yaml,发现以下设置已正确设置

start_native_transport: true
native_transport_port: 9042
rpc_address: 128.xxx.xxx.xx
listen_address: 128.xxx.xxx.xx
Run Code Online (Sandbox Code Playgroud)

已经正确配置...所以我完全失去了...任何帮助表示赞赏

java datastax-enterprise datastax-java-driver digital-ocean cassandra-3.0

3
推荐指数
1
解决办法
6933
查看次数

smack / ejabberd 连接超时

我们使用 ejabberd 的 Pub/Sub 机制在多个客户端之间发送消息。服务器上运行的ejabberd版本是16.04,smack库版本是4.1.1。

消息的发布和订阅在一段时间内工作正常,一段时间后我们在客户端收到以下异常:

org.jivesoftware.smack.SmackException$NoResponseException: No response received within reply timeout. Timeout was 15000ms (~15s). Used filter: IQReplyFilter: iqAndIdFilter (AndFilter: (OrFilter: (IQTypeFilter: type=error, IQTypeFilter: type=result), StanzaIdFilter: id=T89NL-174)), : fromFilter (OrFilter: (FromMatchesFilter (full): pubsub.unio.com))
Run Code Online (Sandbox Code Playgroud)

尝试谷歌搜索原因,但无法找到解决方案。任何帮助表示赞赏。

提前致谢。

android ejabberd smack

3
推荐指数
1
解决办法
1448
查看次数

适用于移动应用的OAuth2流程

我们有一个预先存在的移动应用程序.用户将注册他的用户名和密码.目前,我们有基于自定义令牌的身份验证 我们希望切换到OAuth2而不影响用户体验.看起来资源所有者密码凭证对我们来说是最接近的流程,但是有很多建议反对使用它们......任何其他推荐...我们计划使用IdentityServer4

mobile oauth-2.0 identityserver4

3
推荐指数
1
解决办法
1031
查看次数

Kafka 0.8.2.2 - 无法发布消息

我们编写了一个用于向kafka发布消息的java客户端.代码如下所示

Properties props = new Properties();
props.setProperty(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "202.xx.xx.xxx:9092");
props.setProperty(ProducerConfig.METADATA_FETCH_TIMEOUT_CONFIG,Integer.toString(5 * 1000));
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG,StringSerializer.class.getName());
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG,StringSerializer.class.getName());
//1. create KafkaProducer
KafkaProducer producer = new KafkaProducer(props);

//2 create callback
Callback callback = new Callback() {
public void onCompletion(RecordMetadata metadata, Exception e) {
    System.out.println("Error while sending data");
    if (e != null);
    e.printStackTrace();
}
};
producer.send(record, callback);
Run Code Online (Sandbox Code Playgroud)

当我们执行此代码时,我们会收到以下消息和异常

    ProducerConfig values: 
compression.type = none
metric.reporters = []
metadata.max.age.ms = 300000
metadata.fetch.timeout.ms = 5000
acks = 1
batch.size = 16384
reconnect.backoff.ms = 10
bootstrap.servers = [202.xx.xx.xx:9092]
receive.buffer.bytes = 32768 …
Run Code Online (Sandbox Code Playgroud)

java infinite-loop apache-kafka kafka-producer-api

2
推荐指数
1
解决办法
5045
查看次数