Re: Optimize JsonbContainerTypeName by reordering type checks - Mailing list pgsql-hackers

From Chao Li
Subject Re: Optimize JsonbContainerTypeName by reordering type checks
Date
Msg-id CAEoWx2n25k=amT2u_KY+Dk-UmV8GZiHfx=qpmh0RC=PTbAO+nA@mail.gmail.com
Whole thread Raw
In response to Optimize JsonbContainerTypeName by reordering type checks  (Chao Li <li.evan.chao@gmail.com>)
List pgsql-hackers
Hi Hacker,

This is an innocent refactor that doesn't change logic and improve performance of jsonb_typeof() a little bit.

I have done a performance test that proves a tiny performance improvement:

With the master branch:
```
% pgbench -n --no-vacuum -T 120 -c 8 -j 4 -f test_jsonb_type.sql evantest
tps = 83290.213196 (without initial connection time)

# second run
tps = 83709.266846 (without initial connection time)

# third run
tps = 83531.014990 (without initial connection time)
```

With this patch:
```
% pgbench -n --no-vacuum -T 120 -c 8 -j 4 -f test_jsonb_type.sql evantest
tps = 84172.324715 (without initial connection time)

# second run
tps = 84082.619469 (without initial connection time)

# third run
tps = 84260.671778 (without initial connection time)
```

With 3 runs average tps, this patch makes ~0.8% improvement for jsonb_typeof().

My test script is attached, it can run against any database. And attached v2 patch file has a tiny change over v1.

Best regards,
Chao Li (Evan)
---------------------
HighGo Software Co., Ltd.
https://www.highgo.com/
Attachment

pgsql-hackers by date:

Previous
From: Andrei Lepikhov
Date:
Subject: Re: Query Performance Degradation Due to Partition Scan Order – PostgreSQL v17.6
Next
From: Robert Haas
Date:
Subject: Re: [PG19-3 PATCH] Don't ignore passfile