Patches from Yutaka Tanida. Create primary key indexes after data
insertion to reduce initialization time.
This commit is contained in:
parent
e7a45c787e
commit
43f77c06bb
@ -1,4 +1,4 @@
|
||||
pgbench README 2002/07/20 Tatsuo Ishii (t-ishii@sra.co.jp)
|
||||
pgbench README 2003/11/26 Tatsuo Ishii (t-ishii@sra.co.jp)
|
||||
|
||||
o What is pgbench?
|
||||
|
||||
@ -164,6 +164,10 @@ Basically it is same as BSD license. See pgbench.c for more details.
|
||||
|
||||
o History
|
||||
|
||||
2003/11/26
|
||||
* create indexes after data insertion to reduce time.
|
||||
patch from Yutaka Tanida.
|
||||
|
||||
2003/06/10
|
||||
* fix uninitialized memory bug
|
||||
* add support for PGHOST, PGPORT, PGUSER environment variables
|
||||
|
@ -1,4 +1,4 @@
|
||||
pgbench README 2002/07/20 Tatsuo Ishii (t-ishii@sra.co.jp)
|
||||
pgbench README 2003/11/26 Tatsuo Ishii (t-ishii@sra.co.jp)
|
||||
|
||||
$B"#(Bpgbench $B$H$O!)(B
|
||||
|
||||
@ -184,6 +184,11 @@ pgbench $B$O@P0f(B $BC#IW$K$h$C$F=q$+$l$^$7$?!%%i%$%;%s%9>r7o$O(B pgbench.c
|
||||
|
||||
$B"#2~DjMzNr(B
|
||||
|
||||
2003/11/26
|
||||
* $BC+ED$5$s$N%Q%C%A$rE,MQ!%(Bpgbench -i$B$N:]$K!$8e$+$i<g%-!<$r:n@.(B
|
||||
$B$9$k$h$&$K$7$?!%$3$l$K$h$C$F=i4|2=$N<B9T;~4V$,BgI}$KC;=L$G$-(B
|
||||
$B$k(B($B$O$:(B)$B!%(B
|
||||
|
||||
2003/06/10
|
||||
* $B%a%b%j$,=i4|2=$5$l$F$$$J$$%P%0$r=$@5(B
|
||||
* $B4D6-JQ?t(BPGHOST, PGPORT, PGUSER$B$rG'<1$9$k$h$&$K$7$?!%(B
|
||||
|
@ -1,10 +1,10 @@
|
||||
/*
|
||||
* $Header: /cvsroot/pgsql/contrib/pgbench/pgbench.c,v 1.27 2003/09/27 19:15:34 wieck Exp $
|
||||
* $Header: /cvsroot/pgsql/contrib/pgbench/pgbench.c,v 1.28 2003/11/26 06:53:18 ishii Exp $
|
||||
*
|
||||
* pgbench: a simple TPC-B like benchmark program for PostgreSQL
|
||||
* written by Tatsuo Ishii
|
||||
*
|
||||
* Copyright (c) 2000-2002 Tatsuo Ishii
|
||||
* Copyright (c) 2000-2003 Tatsuo Ishii
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this software and
|
||||
* its documentation for any purpose and without fee is hereby
|
||||
@ -482,13 +482,19 @@ init(void)
|
||||
PGresult *res;
|
||||
static char *DDLs[] = {
|
||||
"drop table branches",
|
||||
"create table branches(bid int, primary key(bid),bbalance int,filler char(88))",
|
||||
"create table branches(bid int not null,bbalance int,filler char(88))",
|
||||
"drop table tellers",
|
||||
"create table tellers(tid int, primary key(tid),bid int,tbalance int,filler char(84))",
|
||||
"create table tellers(tid int not null,bid int,tbalance int,filler char(84))",
|
||||
"drop table accounts",
|
||||
"create table accounts(aid int,primary key(aid),bid int,abalance int,filler char(84))",
|
||||
"create table accounts(aid int not null,bid int,abalance int,filler char(84))",
|
||||
"drop table history",
|
||||
"create table history(tid int,bid int,aid int,delta int,mtime timestamp,filler char(22))"};
|
||||
static char *DDLAFTERs[] = {
|
||||
"alter table branches add primary key (bid)",
|
||||
"alter table tellers add primary key (tid)",
|
||||
"alter table accounts add primary key (aid)"};
|
||||
|
||||
|
||||
char sql[256];
|
||||
|
||||
int i;
|
||||
@ -608,6 +614,17 @@ init(void)
|
||||
#endif /* NOT_USED */
|
||||
}
|
||||
}
|
||||
fprintf(stderr, "set primary key...\n");
|
||||
for (i = 0; i < (sizeof(DDLAFTERs) / sizeof(char *)); i++)
|
||||
{
|
||||
res = PQexec(con, DDLAFTERs[i]);
|
||||
if (strncmp(DDLs[i], "drop", 4) && PQresultStatus(res) != PGRES_COMMAND_OK)
|
||||
{
|
||||
fprintf(stderr, "%s", PQerrorMessage(con));
|
||||
exit(1);
|
||||
}
|
||||
PQclear(res);
|
||||
}
|
||||
|
||||
/* vacuum */
|
||||
fprintf(stderr, "vacuum...");
|
||||
|
Loading…
Reference in New Issue
Block a user