Re: Use COPY for populating all pgbench tables
Gurjeet Singh <gurjeet@singh.im>
From: Gurjeet Singh <gurjeet@singh.im>
To: Gregory Smith <gregsmithpgsql@gmail.com>
Cc: Tristan Partin <tristan@neon.tech>, pgsql-hackers@postgresql.org
Date: 2023-06-10T03:52:29Z
Lists: pgsql-hackers
Attachments
- samples.txt (text/plain)
- variant-1-brief-pointer-to-docs.patch (application/x-patch) patch
- variant-2-detailed-description.patch (application/x-patch) patch
- variant-3-details-not-list.patch (application/x-patch) patch
- variant-4-terse-details-not-list.patch (application/x-patch) patch
On Fri, Jun 9, 2023 at 6:20 PM Gurjeet Singh <gurjeet@singh.im> wrote: > On Fri, Jun 9, 2023 at 5:42 PM Gregory Smith <gregsmithpgsql@gmail.com> wrote: > > On Fri, Jun 9, 2023 at 1:25 PM Gurjeet Singh <gurjeet@singh.im> wrote: > >> > >> > $ pgbench -i -I dtGvp -s 500 > >> > >> The steps are severely under-documented in pgbench --help output. > > > > I agree it's not easy to find information. I just went through double checking I had the order recently enough to remember what I did. The man pages have this: > > > > > Each step is invoked in the specified order. The default is dtgvp. > > > > Which was what I wanted to read. Meanwhile the --help output says: > > > > > -I, --init-steps=[dtgGvpf]+ (default "dtgvp") > > > > %T$%%Which has the information without a lot of context for what it's used for. I'd welcome some text expansion that added a minimal but functional improvement to that the existing help output; I don't have such text. > > Please see attached 2 variants of the patch. Variant 1 simply tells > the reader to consult pgbench documentation. The second variant > provides a description for each of the letters, as the documentation > does. The committer can pick the one they find suitable. (I was short on time, so had to keep it short in the above email. To justify this additional email, I have added 2 more options to choose from. :) The text ", in the specified order" is an important detail, that should be included irrespective of the rest of the patch. My preference would be to use the first variant, since the second one feels too wordy for --help output. I believe we'll have to choose between these two; the alternatives will not make anyone happy. These two variants show the two extremes; bare minimum vs. everything but the kitchen sink. So one may feel the need to find a middle ground and provide a "sufficient, but not too much" variant. I have attempted that in variants 3 and 4; see attached. The third variant does away with the list of steps, and uses a paragraph to describe the letters. And the fourth variant makes that paragraph terse. In the order of preference I'd choose variant 1, then 2. Variants 3 and 4 feel like a significant degradation from variant 2. Attached samples.txt shows the snippets of --help output of each of the variants/patches, for comparison. Best regards, Gurjeet http://Gurje.et
Commits
-
pgbench: Use COPY for client-side data generation
- e35cc3b3f2d0 17.0 landed
-
pgbench: Add TAP tests to check consistency of data generated
- 29836df323d7 17.0 landed
-
pgbench: Move constant into format string
- 11f36694091c 17.0 landed