Re: pgbench - refactor init functions with buffers - Mailing list pgsql-hackers

From Dilip Kumar
Subject Re: pgbench - refactor init functions with buffers
Date
Msg-id CAFiTN-uwZo4=JW=hdstBFQetkEhNR1i8T_Wwt+bX79edYviZog@mail.gmail.com
Whole thread Raw
In response to pgbench - refactor init functions with buffers  (Fabien COELHO <coelho@cri.ensmp.fr>)
Responses Re: pgbench - refactor init functions with buffers  (Jeevan Ladhe <jeevan.ladhe@enterprisedb.com>)
Re: pgbench - refactor init functions with buffers  (Fabien COELHO <coelho@cri.ensmp.fr>)
List pgsql-hackers
On Tue, Oct 22, 2019 at 12:03 PM Fabien COELHO <coelho@cri.ensmp.fr> wrote:
>
>
> Hello,
>
> While developing pgbench to allow partitioned tabled, I reproduced the
> string management style used in the corresponding functions, but was
> pretty unhappy with that kind of pattern:
>
>         snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), ...)
>
> However adding a feature is not the place for refactoring.
>
> This patch refactors initialization functions so as to use PQExpBuffer
> where appropriate to simplify and clarify the code. SQL commands are
> generated by accumulating parts into a buffer in order, before executing
> it. I also added a more generic function to execute a statement and fail
> if the result is unexpected.
>

- for (i = 0; i < nbranches * scale; i++)
+ for (int i = 0; i < nbranches * scale; i++)
 ...
- for (i = 0; i < ntellers * scale; i++)
+ for (int i = 0; i < ntellers * scale; i++)
  {

I haven't read the complete patch.  But, I have noticed that many
places you changed the variable declaration from c to c++ style (i.e
moved the declaration in the for loop).  IMHO, generally in PG, we
don't follow this convention.  Is there any specific reason to do
this?

-- 
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Fabien COELHO
Date:
Subject: pgbench - refactor init functions with buffers
Next
From: "李杰(慎追)"
Date:
Subject: 回复:Bug about drop index concurrently