Am 12.12.21 um 22:52 schrieb Andres Freund:
> Hi,
>
> On 2021-12-12 17:20:58 +0100, Gunnar "Nick" Bluth wrote:
>> Please have a look at the attached patch, which implements some statistics
>> for TOAST.
>>
>> The idea (and patch) have been lurking here for quite a while now, so I
>> decided to dust it off, rebase it to HEAD and send it out for review today.
>>
>> A big shoutout to Georgios Kokolatos, who gave me a crash course in PG
>> hacking, some very useful hints and valueable feedback early this year.
>>
>> I'd like to get some feedback about the general idea, approach, naming etc.
>> before refining this further.
>
> I'm worried about the additional overhead this might impose. For some workload
> it'll substantially increase the amount of stats traffic. Have you tried to
> qualify the overheads? Both in stats size and in stats management overhead?
I'd lie if I claimed so...
Regarding stats size; it adds one PgStat_BackendToastEntry
(PgStat_BackendAttrIdentifier + PgStat_ToastCounts, should be 56-64
bytes or something in that ballpark) per TOASTable attribute, I can't
see that make any system break sweat ;-)
A quick run comparing 1.000.000 INSERTs (2 TOASTable columns each) with
and without "pgstat_track_toast" resulted in 12792.882 ms vs. 12810.557
ms. So at least the call overhead seems to be neglectible.
Obviously, this was really a quick run and doesn't reflect real life.
I'll have the machine run some reasonable tests asap, also looking at
stat size, of course!
Best regards,
--
Gunnar "Nick" Bluth
Eimermacherweg 106
D-48159 Münster
Mobil +49 172 8853339
Email: gunnar.bluth@pro-open.de
__________________________________________________________________________
"Ceterum censeo SystemD esse delendam" - Cato