From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Rework the pgbench state machine code for clarity |
Date: | 2018-11-21 19:35:47 |
Message-ID: | E1gPYHr-0001mE-Me@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Rework the pgbench state machine code for clarity
This commit continues the code improvements started by commit
12788ae49e19. With this commit, state machine transitions are better
contained in the routine that was called doCustom() and is now called
advanceConnectionState -- the resulting code is easier to reason about,
since there are no state changes occuring in the outer layer.
This change is prompted by future patches to add more features to
pgbench, which will need to effect some more surgery to this code.
Fabien's original had all the machine state changes inside one routine,
but I (Álvaro) thought that a subroutine to handle command execution is
more straightforward to review, so this commit does not match Fabien's
submission closely. If something is broken, it's probably my fault.
Author: Fabien Coelho, Álvaro Herrera
Reviewed-by: Kirk Jamison
Discussion: https://postgr.es/m/alpine.DEB.2.21.1808111104320.1705@lancre
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/3bac77c48f166b9024a5ead984df73347466ae12
Modified Files
--------------
src/bin/pgbench/pgbench.c | 723 ++++++++++++++++++++++------------------------
1 file changed, 351 insertions(+), 372 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2018-11-21 21:55:54 | pgsql: doc: adjust time zone names text |
Previous Message | Alvaro Herrera | 2018-11-21 19:18:23 | Re: pgsql: instr_time.h: add INSTR_TIME_SET_CURRENT_LAZY |