Commit 1038bc91 authored by Alvaro Herrera's avatar Alvaro Herrera

pgbench: Silence new compiler warnings

The original coding in 7bafffea and previous wasn't all that great
anyway.

Reported by Jeff Janes and Tom Lane
parent 78e7c443
...@@ -2648,12 +2648,24 @@ read_line_from_file(FILE *fd) ...@@ -2648,12 +2648,24 @@ read_line_from_file(FILE *fd)
return NULL; return NULL;
} }
/*
* Initialize a ParsedScript
*/
static void
initParsedScript(ParsedScript *ps, const char *desc, int alloc_num, int weight)
{
ps->commands = (Command **) pg_malloc(sizeof(Command *) * alloc_num);
ps->desc = desc;
ps->weight = weight;
initStats(&ps->stats, 0.0);
}
/* /*
* Given a file name, read it and return its ParsedScript representation. "-" * Given a file name, read it and return its ParsedScript representation. "-"
* means to read stdin. * means to read stdin.
*/ */
static ParsedScript static ParsedScript
process_file(char *filename) process_file(char *filename, int weight)
{ {
#define COMMANDS_ALLOC_NUM 128 #define COMMANDS_ALLOC_NUM 128
ParsedScript ps; ParsedScript ps;
...@@ -2673,8 +2685,7 @@ process_file(char *filename) ...@@ -2673,8 +2685,7 @@ process_file(char *filename)
} }
alloc_num = COMMANDS_ALLOC_NUM; alloc_num = COMMANDS_ALLOC_NUM;
ps.commands = (Command **) pg_malloc(sizeof(Command *) * alloc_num); initParsedScript(&ps, filename, alloc_num, weight);
ps.desc = filename;
lineno = 0; lineno = 0;
index = 0; index = 0;
...@@ -2710,7 +2721,7 @@ process_file(char *filename) ...@@ -2710,7 +2721,7 @@ process_file(char *filename)
/* Parse the given builtin script and return the parsed representation */ /* Parse the given builtin script and return the parsed representation */
static ParsedScript static ParsedScript
process_builtin(BuiltinScript *bi) process_builtin(BuiltinScript *bi, int weight)
{ {
int lineno, int lineno,
index; index;
...@@ -2720,8 +2731,7 @@ process_builtin(BuiltinScript *bi) ...@@ -2720,8 +2731,7 @@ process_builtin(BuiltinScript *bi)
ParsedScript ps; ParsedScript ps;
alloc_num = COMMANDS_ALLOC_NUM; alloc_num = COMMANDS_ALLOC_NUM;
ps.desc = bi->desc; initParsedScript(&ps, bi->desc, alloc_num, weight);
ps.commands = (Command **) pg_malloc(sizeof(Command *) * alloc_num);
lineno = 0; lineno = 0;
index = 0; index = 0;
...@@ -2860,7 +2870,7 @@ parseScriptWeight(const char *option, char **script) ...@@ -2860,7 +2870,7 @@ parseScriptWeight(const char *option, char **script)
/* append a script to the list of scripts to process */ /* append a script to the list of scripts to process */
static void static void
addScript(ParsedScript script, int weight) addScript(ParsedScript script)
{ {
if (script.commands == NULL || script.commands[0] == NULL) if (script.commands == NULL || script.commands[0] == NULL)
{ {
...@@ -2875,8 +2885,6 @@ addScript(ParsedScript script, int weight) ...@@ -2875,8 +2885,6 @@ addScript(ParsedScript script, int weight)
} }
sql_script[num_scripts] = script; sql_script[num_scripts] = script;
sql_script[num_scripts].weight = weight;
initStats(&sql_script[num_scripts].stats, 0.0);
num_scripts++; num_scripts++;
} }
...@@ -3251,24 +3259,24 @@ main(int argc, char **argv) ...@@ -3251,24 +3259,24 @@ main(int argc, char **argv)
} }
weight = parseScriptWeight(optarg, &script); weight = parseScriptWeight(optarg, &script);
addScript(process_builtin(findBuiltin(script)), weight); addScript(process_builtin(findBuiltin(script), weight));
benchmarking_option_set = true; benchmarking_option_set = true;
internal_script_used = true; internal_script_used = true;
break; break;
case 'S': case 'S':
addScript(process_builtin(findBuiltin("select-only")), 1); addScript(process_builtin(findBuiltin("select-only"), 1));
benchmarking_option_set = true; benchmarking_option_set = true;
internal_script_used = true; internal_script_used = true;
break; break;
case 'N': case 'N':
addScript(process_builtin(findBuiltin("simple-update")), 1); addScript(process_builtin(findBuiltin("simple-update"), 1));
benchmarking_option_set = true; benchmarking_option_set = true;
internal_script_used = true; internal_script_used = true;
break; break;
case 'f': case 'f':
weight = parseScriptWeight(optarg, &script); weight = parseScriptWeight(optarg, &script);
addScript(process_file(script), weight); addScript(process_file(script, weight));
benchmarking_option_set = true; benchmarking_option_set = true;
break; break;
case 'D': case 'D':
...@@ -3406,7 +3414,7 @@ main(int argc, char **argv) ...@@ -3406,7 +3414,7 @@ main(int argc, char **argv)
/* set default script if none */ /* set default script if none */
if (num_scripts == 0 && !is_init_mode) if (num_scripts == 0 && !is_init_mode)
{ {
addScript(process_builtin(findBuiltin("tpcb-like")), 1); addScript(process_builtin(findBuiltin("tpcb-like"), 1));
benchmarking_option_set = true; benchmarking_option_set = true;
internal_script_used = true; internal_script_used = true;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment