OSDN Git Service

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