Обсуждение: pgbench hard coded constants

Поиск
Список
Период
Сортировка

pgbench hard coded constants

От
Jeff Janes
Дата:
pgbench has #defines for number of branches, tellers, and accounts.  There are used to populate the tables with -i, but when running actual benchmark it has values separately hard-coded in the query metacommands.  This patch makes the metacommands obtain their values from the relevant #defines.

It has been tested to the extent that after changing the #define naccounts downward, without the patch, after running both -i once and the benchmark itself once leads to inconsistent results (select sum(abalance) from pgbench_accounts  does not equal sum(delta) from pgbench_history), while with the patch they are equal.

Cheers,

Jeff
Вложения

Re: pgbench hard coded constants

От
Tatsuo Ishii
Дата:
> pgbench has #defines for number of branches, tellers, and accounts.  There
> are used to populate the tables with -i, but when running actual benchmark
> it has values separately hard-coded in the query metacommands.  This patch
> makes the metacommands obtain their values from the relevant #defines.

Good catch! Long standing bug...

> It has been tested to the extent that after changing the #define naccounts
> downward, without the patch, after running both -i once and the benchmark
> itself once leads to inconsistent results (select sum(abalance) from
> pgbench_accounts  does not equal sum(delta) from pgbench_history), while
> with the patch they are equal.

Looks good. If there's no objection, I will commit into CVS HEAD.
--
Tatsuo Ishii
SRA OSS, Inc. Japan


Re: pgbench hard coded constants

От
Tatsuo Ishii
Дата:
> > pgbench has #defines for number of branches, tellers, and accounts.  There
> > are used to populate the tables with -i, but when running actual benchmark
> > it has values separately hard-coded in the query metacommands.  This patch
> > makes the metacommands obtain their values from the relevant #defines.
> 
> Good catch! Long standing bug...
> 
> > It has been tested to the extent that after changing the #define naccounts
> > downward, without the patch, after running both -i once and the benchmark
> > itself once leads to inconsistent results (select sum(abalance) from
> > pgbench_accounts  does not equal sum(delta) from pgbench_history), while
> > with the patch they are equal.
> 
> Looks good. If there's no objection, I will commit into CVS HEAD.

Done. Thanks Jeff!
--
Tatsuo Ishii
SRA OSS, Inc. Japan