On Thu, Aug 3, 2017 at 11:31 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Masahiko Sawada <sawada.m...@gmail.com> writes: >> If we want to create other tables and load data to them as we want we >> can do that using psql -f. So an alternative ways is having a flexible >> style option for example --custom-initialize = { [load, create_pkey, >> create_fkey, vacuum], ... }. That would solve this in a better way. > > FWIW, I like that significantly better than your original proposal. > It'd allow people to execute parts of pgbench's standard initialization > sequence and then do other things in between (in psql). Realistically, > that's probably about as much win as we need here --- if you're veering > far enough away from the standard scenario that that doesn't do it for > you, you might as well just write an all-custom setup script in psql. >
Attached patch introduces --custom-initialize option that allows us to specify the initialization step and its order. For example, If you want to skip building primary keys you can specify --custom-initialize="create_table, load_data, vacuum". Since each custom initialization commands is invoked in specified order, for example we also can create primary keys *before* loading data. The data-generation is doing on client side, so progress information for initialization is still supported. Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center
pgbench_custom_initialization.patch
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers