Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud bigtable BigTable仿真器过滤器错误_Google Cloud Bigtable_Bigtable - Fatal编程技术网

Google cloud bigtable BigTable仿真器过滤器错误

Google cloud bigtable BigTable仿真器过滤器错误,google-cloud-bigtable,bigtable,Google Cloud Bigtable,Bigtable,当使用python Bigtable库运行条件过滤器时,big table emulator中有一个bug。在针对生产Bigtable运行时不会出现此错误,因此我认为问题在于仿真器。如果链不返回任何结果,那么条件true筛选器不应返回任何结果,但在针对仿真器运行代码时,情况并非如此 #pip列表| grep bigtable 谷歌云bigtable 1.2.0 #gcloud版本 谷歌云SDK 274.0.0 beta 2019.05.17 大桌子 bq 2.0.51 cbt 核心2019.12

当使用python Bigtable库运行条件过滤器时,big table emulator中有一个bug。在针对生产Bigtable运行时不会出现此错误,因此我认为问题在于仿真器。如果链不返回任何结果,那么条件true筛选器不应返回任何结果,但在针对仿真器运行代码时,情况并非如此

#pip列表| grep bigtable
谷歌云bigtable 1.2.0
#gcloud版本
谷歌云SDK 274.0.0
beta 2019.05.17
大桌子
bq 2.0.51
cbt
核心2019.12.17
docker凭证gcr
gsutil 4.46
kubectl 2019.11.04
导入操作系统
从google.cloud导入bigtable
将google.cloud.bigtable.row_过滤器作为btf导入
os.environ[“BIGTABLE\u EMULATOR\u HOST”]=“localhost:8086”
测试项目\u NAME=“测试项目”
TEST\u INSTANCE\u NAME=“TEST INSTANCE”
测试表=“测试表”
TEST_FAMILY=“a”
admin\u client=bigtable.client(project=TEST\u project\u NAME,admin=True)
admin\u inst=admin\u client.instance(测试实例名称)
tbl=管理安装表(测试表)
fam=tbl.列族(测试族)
如果不是tbl.exists():
tbl.create()
fam.create()
#写一行
行=待定的直接行(“aaa”)
行集合单元(测试单元族,b'a','\x01')
行集合单元(测试单元族,b'b','\x05')
row.commit()
chain1=btf.RowFilterChain([
btf.ColumnQualifierRegexFilter(b'a'),
btf.ValueRangeFilter(起始值='\x01')
])
chain2=btf.RowFilterChain([
btf.ColumnQualifierRegexFilter(b'b'),
btf.ValueRangeFilter(起始值='\x09')
])
union_filt=btf.RowFilterUnion([chain1,chain2])
链过滤器=btf.RowFilterChain([
联合滤池,
btf.CellsRowOffsetFilter(1)
])
条件过滤器=btf.ConditionalRowFilter(
链式过滤器,
true_filter=btf.PassAllFilter(true))
印刷(“公正联盟”)
对于tbl.read_行中的r(过滤器=联合过滤器):
打印(右单元格)
打印(“刚链”)
对于tbl中的r,读取行(过滤器=链过滤器):
打印(右单元格)
打印(“Cond过滤器”)
对于tbl.read_行中的r(过滤器=条件过滤器):
打印(右单元格)
tbl.delete()
结果

正义联盟
{'a':{b'a':[]}
链
康德过滤器。这不应该返回任何东西
{'a':{b'a':[],b'b':[]}

这被确认为问题注释行中的错误


参考GitHub问题:

感谢您提供可重现的故障案例。你能输入一个bug吗?这就是模拟器的宿主。当然,没问题。