Re: Introduce new multi insert Table AM and improve performance of various SQL commands with it for Heap AM
Daniil Davydov <3danissimo@gmail.com>
From: Daniil Davydov <3danissimo@gmail.com>
To: Jingtang Zhang <mrdrivingduck@gmail.com>
Cc: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, pgsql-hackers@lists.postgresql.org, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2025-03-17T04:49:45Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
libpq: Fix some issues in TAP tests for service files
- 2c7bd2ba507e 18.0 cited
-
Multiple revisions to the GROUP BY reordering tests
- 874d817baa16 17.0 cited
-
Explore alternative orderings of group-by pathkeys during optimization.
- 0452b461bc40 17.0 cited
Hi, Recently I took more careful measurements of the performance. I compared three branches with each other: HEAD, Patched and Patched with tuplestore. Here are the results : 1) Test case : matview creation test attached in the email from Jingtang Zhang. 10 measurements for each branch. Result in wall clock execution time : HEAD 30.532 +- 0.59 seconds elapsed Patched 20.454 +- 0.114 seconds elapsed Patched with tuplestore 19.653 +- 0.111 seconds elapsed 2) -- init.sql drop table test_insert; vacuum; checkpoint; create table test_insert(i int, f float); -- iowrite.sql insert into test_insert select g, (g % 100) / 100.0 from generate_series(1, 1000000) as g; Test case : pgbench -f iowrite.sql -n -j 4 -c 10 -T 40 5 measurements for each branch. Result in tps : HEAD 1.025 +- 0.009 Patched 2.923 +- 0.032 Patched with tuplestore 2.987 +- 0.011 P.S. I cannot find a commitfest entry for this patch. Should we add it there? -- Best regards, Daniil Davydov