pgbench has #defines for number of branches, tellers, and accounts. There
authorTatsuo Ishii
Thu, 10 Sep 2009 13:59:57 +0000 (13:59 +0000)
committerTatsuo Ishii
Thu, 10 Sep 2009 13:59:57 +0000 (13:59 +0000)
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.

Patch provided by Jeff Janes.

contrib/pgbench/pgbench.c

index aafc64e3ce899c14fd642b8ac4eb908744bb9df9..d41a87cfea85d0fbb5e72c4a4880715540f6c202 100644 (file)
@@ -4,7 +4,7 @@
  * A simple benchmark program for PostgreSQL
  * Originally written by Tatsuo Ishii and enhanced by many contributors.
  *
- * $PostgreSQL: pgsql/contrib/pgbench/pgbench.c,v 1.90 2009/08/03 18:30:55 tgl Exp $
+ * $PostgreSQL: pgsql/contrib/pgbench/pgbench.c,v 1.91 2009/09/10 13:59:57 ishii Exp $
  * Copyright (c) 2000-2009, PostgreSQL Global Development Group
  * ALL RIGHTS RESERVED;
  *
@@ -132,7 +132,7 @@ int         fillfactor = 100;
  * end of configurable parameters
  *********************************************************************/
 
-#define nbranches  1
+#define nbranches  1  /* Makes little sense to change this.  Change -s instead */
 #define ntellers   10
 #define naccounts  100000
 
@@ -232,9 +232,9 @@ static int          debug = 0;              /* debug flag */
 
 /* default scenario */
 static char *tpc_b = {
-   "\\set nbranches :scale\n"
-   "\\set ntellers 10 * :scale\n"
-   "\\set naccounts 100000 * :scale\n"
+   "\\set nbranches " CppAsString2(nbranches) " * :scale\n"
+   "\\set ntellers " CppAsString2(ntellers) " * :scale\n"
+   "\\set naccounts " CppAsString2(naccounts) " * :scale\n"
    "\\setrandom aid 1 :naccounts\n"
    "\\setrandom bid 1 :nbranches\n"
    "\\setrandom tid 1 :ntellers\n"
@@ -250,9 +250,9 @@ static char *tpc_b = {
 
 /* -N case */
 static char *simple_update = {
-   "\\set nbranches :scale\n"
-   "\\set ntellers 10 * :scale\n"
-   "\\set naccounts 100000 * :scale\n"
+   "\\set nbranches " CppAsString2(nbranches) " * :scale\n"
+   "\\set ntellers " CppAsString2(ntellers) " * :scale\n"
+   "\\set naccounts " CppAsString2(naccounts) " * :scale\n"
    "\\setrandom aid 1 :naccounts\n"
    "\\setrandom bid 1 :nbranches\n"
    "\\setrandom tid 1 :ntellers\n"
@@ -266,7 +266,7 @@ static char *simple_update = {
 
 /* -S case */
 static char *select_only = {
-   "\\set naccounts 100000 * :scale\n"
+   "\\set naccounts " CppAsString2(naccounts) " * :scale\n"
    "\\setrandom aid 1 :naccounts\n"
    "SELECT abalance FROM pgbench_accounts WHERE aid = :aid;\n"
 };