From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: Michael Paquier <michael.paquier@gmail.com>
Cc: pgsql-hackers@postgresql.org <pgsql-hackers@postgresql.org>
Subject: Re: pgbench stats per script & other stuff
Date: Thu, 3 Mar 2016 19:26:40 -0300
Message-ID: <20160303222640.GA667644@alvherre.pgsql> (raw)
In-Reply-To: <alpine.DEB.2.10.1602081953560.22398@sto>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-hackers>
I looked at 19.d and I think the design has gotten pretty convoluted. I
think we could simplify with the following changes:
struct script_t gets a new member, of type Command **, which is
initially null.
function process_builtin receives the complete script_t (not individual
memebers of it) constructs the Command ** array and puts it in
script_t's new member; return value is the same script_t struct it got
(except it's now augmented with the Command **array).
function process_file constructs a new script_t from the string list,
creates its Command **array just like process_builtin and returns the
constructed struct.
function addScript receives script_t instead of individual members of
it, and does the appropriate thing.
Alternatively, we could have a different struct that's defined to carry
only the Command ** array (not the command string array) and is returned
by both process_builtin and process_file. Perhaps we could also put the
script weight in there. With this arrangement we don't need to typedef
script_t at all and we can just keep it as an anonymous struct as today.
This is what I tried to describe earlier, but obviously I wasn't clear
enough.
Thanks,
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: alvherre@2ndquadrant.com, coelho@cri.ensmp.fr, michael.paquier@gmail.com
Subject: Re: pgbench stats per script & other stuff
In-Reply-To: <20160303222640.GA667644@alvherre.pgsql>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox