Jmeter Hive报错java. sql. SQLException: Cannot create PoolableConnectionFactory (Method not supported)

利用jmeter对Hive进行压测遇到的问题


解决方式直接拉到中间看。

找了半天的Hive压测工具,有Hibench,有用hive-testBench生成树来测。最后绕了一大圈发现jmeter可以支持jdbc链接。测试不就是要看报告吗,jmeter的报告完全满足啊,那直接上了。

这边已经试过了测试MySQL,然后Hive的时候就报错了java. sql. SQLException: Cannot create PoolableConnectionFactory (Method not supported),看jmeter详细日志也没报啥啊。怪了

网上找了半天没有发现这个到底为啥,chatgpt也问了问不出来。已反复检查各种jar包啥的都没问题,主要我提前用dbeaver都试过了,都能执行sql。到jmeter就报错。我用的版本是jmeter5.5,在win10

问题截个图吧:在这里插入图片描述
目前网上我是没找到这个的解决方法,这不分享出来我良心会痛!!

解决办法

  1. 在jmeter的目录找bin/jmter.properties
  2. 打开这个配置文件,找到jdbc.config.check.query
  3. 然后按其格式,先加个管道线|,然后加个测试的语句,我是随便加的show databases
  4. 然后界面上配置JDBC Connection Configuration的时候,找到Connection Validation by Pool ,最后一个选项Validation Query下拉选择刚刚添加的show databases
  5. 搞定。(应该要重启)
    截个图吧:
    在这里插入图片描述

有点神奇,它还必须要验证,我前面给关了都不行,而且默认的校验查询语句,Hive都不支持,那就自己加一个试试结果成了。。。

最开始尝试还有下面那个jdbc.config.jdbc.driver.class也给加上Hive的driver,org.apache.hive.jdbc.HiveDriver。刚刚试了好像也不用加这个,只要让创建Pool的时候能验证就行。

我甚至都以为Linux版本也要这样配置,结果不需要。。。。看看效果图吧:
在这里插入图片描述

另外补一个测试步骤:

  1. 下载jmeter并配置环境变量(Linux)
  2. Linux装JAVA并配置
  3. win的jmeter界面配置好测试计划,另存jmx文件
  4. 拷贝jmx到Linux测试:jmeter -n -t hive.jmx -l result.jtl
  5. 测试结果jtl文件拷贝到win
  6. jmeter界面创建测试计划,创建聚合报告
  7. 把jtl文件用聚合报告打开查看。

网上全能找到详细步骤,不多说了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值