HBase的批量get的问题
List<Get> list = new ArrayList<Get>(); for (int i = 0; i < 38000; ++i) { Get get = new Get(Bytes.toBytes(1)); get.setCacheBlocks(false); get.addFamily(CURDService.INFO_FAMILY); list.add(get); } hashIdTable.exists(list);
以上是测试代码,表是空的,执行了exists就卡住了,日志显示会不断的重试,把38000调小一点就可以返回了,请问是什么回事呢?求助。下面是重试的日志:
[2014-09-16 10:29:01,054] INFO #2, waiting for some tasks to finish. Expected max=0, tasksSent=2, tasksDone=1, currentTasksDone=1, retries=1 hasError=false, tableName=basic_hash_user_tbl (org.apache.hadoop.hbase.client.AsyncProcess) [2014-09-16 10:30:01,382] INFO #2, waiting for some tasks to finish. Expected max=0, tasksSent=3, tasksDone=2, currentTasksDone=2, retries=2 hasError=false, tableName=basic_hash_user_tbl (org.apache.hadoop.hbase.client.AsyncProcess) [2014-09-16 10:31:01,794] INFO #2, waiting for some tasks to finish. Expected max=0, tasksSent=4, tasksDone=3, currentTasksDone=3, retries=3 hasError=false, tableName=basic_hash_user_tbl (org.apache.hadoop.hbase.client.AsyncProcess) [2014-09-16 10:32:02,399] INFO #2, waiting for some tasks to finish. Expected max=0, tasksSent=5, tasksDone=4, currentTasksDone=4, retries=4 hasError=false, tableName=basic_hash_user_tbl (org.apache.hadoop.hbase.client.AsyncProcess) [2014-09-16 10:33:03,510] INFO #2, waiting for some tasks to finish. Expected max=0, tasksSent=6, tasksDone=5, currentTasksDone=5, retries=5 hasError=false, tableName=basic_hash_user_tbl (org.apache.hadoop.hbase.client.AsyncProcess)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是跟hbase中blocksize大小的设置有关吗