Re: JIT: The nullness of casetest.value can be determined at the JIT compile time.
Xing Guo <higuoxing@gmail.com>
From: Xing Guo <higuoxing@gmail.com>
To: Andreas Karlsson <andreas@proxel.se>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2024-09-03T15:18:39Z
Lists: pgsql-hackers
On Tue, Sep 3, 2024 at 8:09 PM Andreas Karlsson <andreas@proxel.se> wrote: > > On 8/31/24 10:04 AM, Xing Guo wrote: > > The nullness of casetest.value can be determined at the JIT compile > > time. We can emit fewer codes by utilizing this property. The attached > > patch is trying to fix it. > > I have not reviewed the code yet but the idea seems good. > > But I wonder if we shouldn't instead simplify the code a bit by > specializing these steps when generating them instead of doing the work > runtime/while generating machine code. Yes, I doubt the performance > benefits matter but I personally think the code is cleaner before my > patch than after it. +1 to the idea. > Long term it would be nice to get rid off > caseValue_datum/domainValue_datum as mentioned by Andres[1] but that is > a bigger job so think that either your patch or my patch would make > sense to apply before that. I think your patch makes more sense than mine! Thanks! Best Regards, Xing
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Simplify executor's handling of CaseTestExpr & CoerceToDomainValue.
- 115a365519bf 18.0 landed
-
Evaluate arguments of correlated SubPlans in the referencing ExprState
- a7f107df2b70 18.0 cited