如何解决发送数千个查询后,mysql源代码的覆盖范围相同
我从原始的github存储库中下载了mysql-server源代码,并将其与使用gcov所需的标志进行了编译:
# build mysql with coverage
git clone --branch mysql-cluster-8.0.21 \
https://github.com/mysql/mysql-server mysql
cd mysql && git checkout mysql-cluster-8.0.21 && mkdir bld &&
cd mysql/bld &&
cmake .. \
-DCMAKE_CXX_FLAGS="--coverage -O0" \
-DWITH_BOOST=$HOME/boost -DDOWNLOAD_BOOST=1 \
&& make -j15
按照official documentation中的初始化步骤设置mysqld
服务器后,我可以照常启动服务器并使用mysql命令行shell运行查询,而不会出现任何错误。我可以提取覆盖率统计信息并使用以下内容生成html文件:
sudo chmod -R 777 mysql && cd mysql \
&& lcov --directory . -c -o mysql.info --no-external \
&& genhtml -o . mysql.info --ignore-errors source
接下来,出于测试目的,我使用默认的Golang客户端发送和执行查询12至24小时。 但是,我发现覆盖范围与测试之前相同。 我确定我使用了正确的命令,并且实际上执行了许多查询。
我不知道我的步骤有什么问题。如果您有任何想法,我们将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。