[HACKERS] pgbench tap tests & minor fixes
От | Fabien COELHO |
---|---|
Тема | [HACKERS] pgbench tap tests & minor fixes |
Дата | |
Msg-id | alpine.DEB.2.20.1704171422500.4025@lancre обсуждение исходный текст |
Ответы |
Re: [HACKERS] pgbench tap tests & minor fixes
|
Список | pgsql-hackers |
Hello, When developping new features for pgbench, I usually write some tests which are lost when the feature is committed. Given that I have submitted some more features and that part of pgbench code may be considered for sharing with pgsql, I think that improving the abysmal state of tests would be a good move. The attached patch: (1) extends the existing perl tap test infrastructure with methods to test pgbench, i.e. "pgbench" which runs a pgbench test and "pgbench_likes" which allows to check for expectations. (2) reuse this infrastructure for the prior existing test about concurrent inserts. (3) add a lot of new very small tests so that coverage jumps from very low to over 90% for source files. I think that derived files (exprparse.c, exprscan.c) should be removed from coverage analysis. Previous coverage status: exprparse.y 0.0 % 0 / 77 0.0 % 0 / 8 exprscan.l 0.0 % 0 / 102 0.0 % 0 / 8 pgbench.c 28.3 % 485 / 1716 43.1 % 28 / 65 New status: exprparse.y 96.1 % 73 / 76 100.0 % 8 / 8 exprscan.l 92.8 % 90 / 97 100.0 % 8 / 8 pgbench.c 90.4 % 1542 / 1705 96.9 % 63 / 65 The test runtime is about doubled on my laptop, which is not too bad given the coverage achieved. (4) fixes a two minor issues. These fixes may be considered for backpatching to 10, although I doubt anyone will complain, so I would not bother. Namely: - the -t/-R/-L combination was not working properly, fix that by moving client statistics in processXactStats, adjust some formula, and add a few comments for details I had to discover. - add a check that --progress-timestamp => --progress I'm unsure of the portability of some of the tests (\shell and \setshell), especially on Windows. If there is an issue, these test will have to be skipped on this platform. Some of the tests may fail with a very low probability (eg 1/2**84?). -- Fabien. -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Вложения
В списке pgsql-hackers по дате отправления: