hbase serverless 查询报错: Unsupport PageFilter-问答-阿里云开发者社区-阿里云

开发者社区> sybn> 正文

hbase serverless 查询报错: Unsupport PageFilter

2020-04-09 14:05:14 526 2

相同代码, 使用 hbase-client 连接自建hbase正常, 使用 alihbase-client 2.0.8 连接 hbase serverless 查询报错.

Caused by: java.io.IOException: TIOError(message:Unsupport filter org.apache.hadoop.hbase.filter.PageFilter)
	at com.alibaba.hbase.client.AliHBaseAPIProxyThriftImpl$Scanner.next(AliHBaseAPIProxyThriftImpl.java:637)
	at org.apache.hadoop.hbase.client.ResultScanner$1.hasNext(ResultScanner.java:53)
	... 25 more
Caused by: TIOError(message:Unsupport filter org.apache.hadoop.hbase.filter.PageFilter)
	at com.alibaba.hbase.thrift2.generated.THBaseService$getScannerResults_result$getScannerResults_resultStandardScheme.read(THBaseService.java:25413)
	at com.alibaba.hbase.thrift2.generated.THBaseService$getScannerResults_result$getScannerResults_resultStandardScheme.read(THBaseService.java:25380)
	at com.alibaba.hbase.thrift2.generated.THBaseService$getScannerResults_result.read(THBaseService.java:25322)
	at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:88)
	at com.alibaba.hbase.thrift2.generated.THBaseService$Client.recv_getScannerResults(THBaseService.java:1057)
	at com.alibaba.hbase.thrift2.generated.THBaseService$Client.getScannerResults(THBaseService.java:1042)
	at com.alibaba.hbase.client.AliHBaseAPIProxyThriftImpl$Scanner.next(AliHBaseAPIProxyThriftImpl.java:617)
	... 26 more
取消 提交回答
全部回答(2)
  • 保持可爱mmm
    2020-04-15 22:54:42

    PageFilter的实现逻辑。

    public class PageFilter extends FilterBase {
      private long pageSize = Long.MAX_VALUE;
      private int rowsAccepted = 0;
     
      /**
       * Constructor that takes a maximum page size.
       *
       * @param pageSize Maximum result size.
       */
      public PageFilter(final long pageSize) {
        Preconditions.checkArgument(pageSize >= 0, "must be positive %s", pageSize);
        this.pageSize = pageSize;
      }
     
      public long getPageSize() {
        return pageSize;
      }
     
      @Override
      public ReturnCode filterKeyValue(Cell ignored) throws IOException {
        return ReturnCode.INCLUDE;
      }
     
      public boolean filterAllRemaining() {
        return this.rowsAccepted >= this.pageSize;
      }
     
      public boolean filterRow() {
        this.rowsAccepted++;
        return this.rowsAccepted > this.pageSize;
      }
      
    }
    

    其实很简单,内部有一个计数器,每次调用filterRow的时候,计数器都会+1,如果计数器值大于pageSize,filterrow就会返回true,那之后的行就会被过滤掉。

    0 0
  • huc_逆天
    2020-04-15 22:49:07

    版本问题了、。

    0 0
添加回答
相关问答

10

回答

【精品问答合集】Hbase热门问答

hbase小能手 2019-05-29 14:37:26 120244浏览量 回答数 10

17

回答

【大咖问答】对话PostgreSQL 中国社区发起人之一,阿里云数据库高级专家 德哥

阿里ACE 彭飞 2019-07-10 09:36:10 968004浏览量 回答数 17

3

回答

【精品问答】大数据计算技术1000问

问问小秘 2019-11-13 16:03:32 12318浏览量 回答数 3

4

回答

【PDF下载】金融技术峰会之云数据库OceanBase架构

云栖技术 2017-08-17 16:04:00 20091浏览量 回答数 4

2

回答

ZooKeeper介绍、分析、理解

小柒2012 2016-02-24 19:00:06 13812浏览量 回答数 2

3

回答

HBase mslab.chunksize和G1HeapRegionSize间是否有关系

yauso 2019-07-17 17:14:06 114610浏览量 回答数 3

1

回答

linux下安装Mycat-web监控

小柒2012 2016-06-20 20:10:52 13827浏览量 回答数 1

5

回答

阿里技术架构简览

叔至 2015-07-06 15:08:01 20656浏览量 回答数 5

4

回答

【案例】从hadoop框架与MapReduce模式中谈海量数据处理

jack.cai 2014-08-25 20:55:43 18473浏览量 回答数 4

3

回答

请问分布式关系型数据服务DRDS开源吗?

缠豆 2013-10-21 18:07:06 26009浏览量 回答数 3
+关注
0
文章
4
问答
推荐问答
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载