文件命名的Bug

需求:

从数据库读取数据,生成txt文件,文件命名规则如下:

USER_日期(YYYYMMDD)_2位序号(01~99).txt

即文件命名如下:

USER_20180104_01.txt

USER_20180104_02.txt

等等等。。。。。。

单个txt文件里面最多有10万条数据,也就是说,如果数据库中有多于10万条的数据,那么就得生成多个文件

测试:

在测试中,我只往数据库中插了11万多条数据,程序生成了两个txt文件,文件命名如下:

USER_20180104_01.txt

USER_20180104_02.txt

文件命名没有问题,txt文件里面的内容也很正确,看来算是测试通过了,无Bug。

Bug总是在意想不到的地方出现。

到了生产环境,我们数据库中有四五百万条数据,也就是说,会生成几十个文件,此时的文件命名就出现了Bug。

前十个文件,文件命名的序号是01~10,文件命名正确。

再往后,文件命名就出错儿了。从第十一个文件开始,文件命名中的序号仍然是从01开始,并没有从11开始。

在上线当晚发现这个问题,后来又紧急修复了。

为什么当初在测试环境没发现这个问题呢?

因为在测试环境,要是在数据库中插入几百万条数据,那么执行一次用的时间比较长,得好几个小时,因此在测试环境上就没发现这个问题。

记录一下这个问题,以后再测类似的功能,避免再出现。

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180104G0QIB600?refer=cp_1026

扫码关注云+社区