in shardingsphere-benchmark/src/main/java/org/apache/shardingsphere/benchmark/common/statistic/BenchmarkStatistic.java [17:56]
public void updateBenchmarkRecordInDb(DataSource dataSource, List<BenchmarkResultBean> benchMarkResults, String sql){
Connection connection = null;
for(int i = 0; i < benchMarkResults.size(); i++){
try {
connection = dataSource.getConnection();
if (benchMarkResults.get(i) != null) {
BenchmarkResultBean benchmarkResultBean = benchMarkResults.get(i);
List insertParams = Arrays.asList(
benchmarkResultBean.getProduct(),
benchmarkResultBean.getVersion(),
benchmarkResultBean.getScenario(),
benchmarkResultBean.getRules(),
(double)benchmarkResultBean.getBenchmarkResult().get("tps"),
(int)benchmarkResultBean.getBenchmarkResult().get("total"),
(double)benchmarkResultBean.getBenchmarkResult().get("tp50th"),
(double)benchmarkResultBean.getBenchmarkResult().get("tp90th"),
(double)benchmarkResultBean.getBenchmarkResult().get("tp95th"),
(double)benchmarkResultBean.getBenchmarkResult().get("maxCost"),
(double)benchmarkResultBean.getBenchmarkResult().get("minCost"),
benchmarkResultBean.getSql(),
benchmarkResultBean.getDbAction(),
benchmarkResultBean.getConcurrency(),
benchmarkResultBean.getUpdateTime(),
benchmarkResultBean.getTableShardingCount(),
benchmarkResultBean.getDbShardingCount());
JDBCDataSourceUtil.insert(connection, sql, insertParams);
}
} catch (SQLException ex) {
ex.printStackTrace();
} finally {
if(null != connection){
try {
connection.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
}
}