On Tue, Sep 5, 2017 at 2:33 AM, Fabien COELHO <coe...@cri.ensmp.fr> wrote: > > Hello Masahiko-san, > >>>> Currently TRUNCATE pgbench_accounts command is executed within a >>>> transaction started immediately before it. If we move it out of the >>>> transaction, the table data will be truncated even if the copying data >>>> failed. Maybe we can do TRUNCATE pgbench_accounts, pgbench_history >>>> instead. Thought? >>> >>> >>> >>> Keep the truncate in the transaction, and truncate both (or all?) tables >>> together. >> >> >> Attached latest patch incorporated the comments I got so far. Please >> review it. > > > "g" does not work for me yet when after "f", only the message is slightly > different, it chokes on another dependency, branches instead of accounts. > > sh> ./pgbench -i -I ctpfg > cleaning up... > creating tables... > set primary keys... > set foreign keys... > ERROR: cannot truncate a table referenced in a foreign key constraint > DETAIL: Table "pgbench_history" references "pgbench_branches". > HINT: Truncate table "pgbench_history" at the same time, or use TRUNCATE > ... CASCADE.
Sorry, I'd missed something. > I think that the whole data generation should be in *one* transaction which > starts with "truncate pgbench_history, pgbench_branches, pgbench_tellers, > pgbench_accounts;" Agreed, and fixed. > > In passing, I think that the documentation should tell explicitely what the > default value is (aka "ctgvp"). Agreed. Attached the latest patch. Please review it. Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center
pgbench_custom_initialization_v10.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