2017-09-12 43 views
1

我有我以前在DSE 4.8.10执行查询和DDL脚本执行使用cqlsh嵌套源CQL脚本。未能就DSE 5.1.2

脚本包含嵌套使用源命令。 例如
1.SQL

USE test; 
SOURCE '2.sql' 
exit; 

2.SQL

SELECT count(1) FROM user; 
SOURCE '3.sql'; 

3.sql

SELECT count(1) FROM user; 

当执行与DSE 4.8.10此脚本它正确运行和输出

cqlsh –f 1.sql 
count 
-------- 
0 

(1 rows) 

count 
-------- 
0 

(1 rows) 

在DSE 5.1.2中运行相同的脚本。

cqlsh –f 1.sql 
count 
------- 
    0 

(1 rows) 

Warnings : 
Aggregation query used without partition key 

2.sql:3:DSEShell instance has no attribute 'execution_profiles' 

实际的问题是,不执行3.sql脚本。
我没能找到错误的任何有用的信息 “DSEShell实例没有属性‘execution_profiles’”

我没弄清楚,虽然他们的int python文档中提到什么是execution_profiles here

注意:我使用Python 2.7.7

更新 我做了一些补充调查

  1. 随着DSE-5.1.2我切换到关认证:AllowAllAuthenticator 授权:AllowAllAuthorizer,但我仍然遇到的问题
  2. 随着DSE-5.1.1也恰好

  3. 随着DSE-5.0 .9工作

  4. 我未能再现这Apache的卡桑德拉3.11.0

更新2:下面我们张贴Datastaxs我们去支持票为这个问题提供补丁,我想我们应该期待这个问题在近期功能中得到解决。

回答

0

从DSE 5.1.4开始,此问题已作为DSP-14494的一部分得到解决。

参见5.1.4 release notes

DSP-14494:在cqlsh.py总是限定execution_profiles。
我用5.1.4测试了这个问题,问题解决了。