Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wFmu7-005Y4R-0K for pgsql-hackers@arkaria.postgresql.org; Thu, 23 Apr 2026 05:47:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wFmu6-00HIxH-1A for pgsql-hackers@arkaria.postgresql.org; Thu, 23 Apr 2026 05:47:10 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wFmu5-00HIx8-3B for pgsql-hackers@lists.postgresql.org; Thu, 23 Apr 2026 05:47:10 +0000 Received: from mail-japaneastazolkn19010017.outbound.protection.outlook.com ([52.103.43.17] helo=TY3P286CU002.outbound.protection.outlook.com) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wFmu4-00000002azO-035y for pgsql-hackers@postgresql.org; Thu, 23 Apr 2026 05:47:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=RbMzJv2kjffdNpPiC++zksLM053SYSOB5GCLrcS5k9+emR4JIdTRpO2KfzbAfG0D0nZrHIVAnTkyf0WFHuUkrBbCraW/GPBnil8SX02TMGFr8TfNY9U6zLNkLbgViTOA3nMkPzVJSVulr+QxAELVqo/zgNkee9bROJHM9Unyn7gLPDvezhSwILplG9KqEDqKwYo33xRWI1TdSBGUQw4GKdt/PS4N/yh0qrfRegMniwvfKtQbMWWr6MSkzJknu8xFGtYhQyR8YHCiEmPDvMBS6Vynfo9MLikwUDyMXYZ6Hrn1ZLKO3PRRt25zZuR4gWDspVedyrfksnzB66+LVgv+Ag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oGTpnC57r7Z/FfEV+k0PhCv5TSVNFKYbsuM0yXoaQTg=; b=HKotoV1MhducSMgY/2H+/PtnfjLoRjDs/M1y/XazT8jjR73iDekpDiai6GDFgwXNnEFr1zzEt9TGRjdxxTeob0LFTPmsfiS0DoQNUKDJFJUR7jZLskfoKxGV1FgMnbBRNe8i2/eCFACzstusiRFfs0fDPmRGZjGCjcnAnaeVgHwqEmpoBIGUtmmMETl8NVSS1OjvnLHfiDVK+qp7bBLkAcZP6DF5foVqJEELgll46t62JRK+ibOXtQ/W8nQqM6+TGdJXpBPakoFtEJYlCHHYD7Yj/c89Jjd+CtPqiFdBIKhg1BqPN18r9Rx2q626fv+EE1VNicPVPEOe+4NUGNeNyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oGTpnC57r7Z/FfEV+k0PhCv5TSVNFKYbsuM0yXoaQTg=; b=uAOSD8LbTbGbzbSXA67Lbu9y7aIhTaUyvn+tSCPkQeCghv4F+6ihAujr0XuY/yyty3KfH45uYyicf2hqn+gfdWIG70LmyUREqpd9BIavNTUo1OrA1M6mFZeT+R7DemYgGRjTO9bmbsBiFMIc3EHG6/UDPKHjM6nFhkgpBOw9iXWt5OMJv9o5b3zsZDLYGdirJ2AND8z5ya1Mn9aVnI8kN5ahNUm60SqTF4GzCShy3kpZ19EaVdxZw2KzzwcUnlvtjKszuWxx/5u0ykTaeSEQTaxm6BB2zFdPycKMrX4vr9ZK/FG7EwuHXVBTFnjVbJ/jfdPzo5w11T14Rf/EN3WmvA== Received: from TYYPR01MB14116.jpnprd01.prod.outlook.com (2603:1096:405:212::9) by TYRPR01MB13437.jpnprd01.prod.outlook.com (2603:1096:405:1c7::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.21; Thu, 23 Apr 2026 05:47:01 +0000 Received: from TYYPR01MB14116.jpnprd01.prod.outlook.com ([fe80::31dd:4ff2:eea8:c663]) by TYYPR01MB14116.jpnprd01.prod.outlook.com ([fe80::31dd:4ff2:eea8:c663%5]) with mapi id 15.20.9846.019; Thu, 23 Apr 2026 05:47:01 +0000 From: Chengpeng Yan To: David Rowley CC: PostgreSQL-development , cca5507 , Tom Lane Subject: Re: [PATCH] Fix hashed ScalarArrayOp semantics for NULL LHS with non-strict comparators Thread-Topic: [PATCH] Fix hashed ScalarArrayOp semantics for NULL LHS with non-strict comparators Thread-Index: AQHczaEqi+5p9wMBTka3ciLQwzUU6rXmX14AgAD10wCAACpDAIAERiEAgABTKACAABE3gIAAA/AA Date: Thu, 23 Apr 2026 05:47:01 +0000 Message-ID: References: <5CDAD4B4-6DC6-4C31-8AC1-1F45EA6ED480@outlook.com> <614EFDA0-6858-4C14-9E6A-53FC4EABE1AA@outlook.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYYPR01MB14116:EE_|TYRPR01MB13437:EE_ x-ms-office365-filtering-correlation-id: 6404b04e-b48f-4c55-ac43-08dea0fbbdd3 x-microsoft-antispam: BCL:0;ARA:14566002|461199028|15080799012|24121999003|22091999003|12121999013|8060799015|8062599012|24021099003|19110799012|51005399006|31061999003|440099028|3412199025|102099032|40105399003; x-microsoft-antispam-message-info: =?us-ascii?Q?VAG7AQqOQ4dDMgmWMHSpwdf+3bxOy51xUvydw2UCit1elUnA/o4kn7hnQdvW?= =?us-ascii?Q?LTcycsCXdZymxxV6hfOg5dbFl9wjc5zhPy69g9Bs8wioRoWRHuSlkZkCE7Ey?= =?us-ascii?Q?tn1auA0nI1xLzthP0wAvsPcD7S2dOSZjCNZrXh5TuMMxSj2XFTSN63hTaStq?= =?us-ascii?Q?ffgZHy5z0xvk3hwetUcoxki65sQEAjQNWYTDabPcZ0V8sPW96YsfXwm7AXjh?= =?us-ascii?Q?Ogki6Sj2Vryl3yMDAQKUApxU/AohN1X9c1+svQF5N7hmctaFmzKkz8QyT+iV?= =?us-ascii?Q?fpmSY/LrPbjmsRplZNRKPHEXmyYqw87aIp+Ckq04codruqG+TJlHfuZIOY7s?= =?us-ascii?Q?SJwmhpbUrN19n73HFOJbPlqMx8GsGUoVf07/Hoauy3NW8VY1TGXAZ/QyWNs3?= =?us-ascii?Q?EopCD2DvrB95gig1oC4tDb8EvbHpffs42CeQlkD6gGQIj4aOxuWWGkhovLvs?= =?us-ascii?Q?9Tzjc5O4TOIdcftOp03xcpq7zeDo4P5ngoLtEs9GHZYZIpf31/FnmzyWO1VQ?= =?us-ascii?Q?Lt6YScz9Agwao2U4W3HjWvYbWofJ8XTNIMl8qhkdjnKNucWloZP/zq9u5QEn?= =?us-ascii?Q?mMXrMr7LCTti3IRU6agN+CRhG314vmSwcxlWSpxKLe4iBqC1YiI29uIretja?= =?us-ascii?Q?geK2G3H+FKxM1gIA+BJtILrJZtzMhVWTAXjAaBa0RY59M1VU+F2zF3ab8hDx?= =?us-ascii?Q?bxmrM0cG1LFgoHdWbf6hItARB98RyQrF5HoToGegzd04f0jFGsrLIG3rhHN0?= =?us-ascii?Q?nBokoim4xdx5LLLedVi0Tm5Y4JNQouvwIp7sFeQ0fATUp+HxW9KkC0uuoSTS?= =?us-ascii?Q?MeAiyeHOoP2ARkbK787kwLj6QbYlRIi69LAR3krkkAlEHaZLJI9wALXcWU6p?= =?us-ascii?Q?c6LXPRVb13UTAH7VA97UAn1S5aL2NY8mynr+GWylWdkEKfBeATWNPUYKtzot?= =?us-ascii?Q?4zIrQJ1YtB+JC6pYqQO46JLOkG7H2rc4iU89kRDf7veG+6jZN81IPjQE2hvT?= =?us-ascii?Q?b5aVbxa9oIpthKQ417lhpGoD4w0WANjjkGL5dKNtMZZoSdM=3D?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?Qq9hW+jBtlHBoKI7kHEL+qdoWXXU/5HcD9miuN0rkePaFw0m//+13VWDwdqb?= =?us-ascii?Q?yqsPjhhS6s4GdLlpxq3qqR+nC0lQrIvHR/VMcQyLKTAbeaEJqHikeiSqpRDW?= =?us-ascii?Q?y8l5HSCatL/uaHg7EQKAVyYoWgLf4nFxz94+Ht/drEW8bX4kx/jTvbgdi2ZY?= =?us-ascii?Q?rGcVDL8iQwsKuPYObetmoPJl7ozytYlW2hHtjU5f+TJWnJs4KdDaJ0CSCQ8u?= =?us-ascii?Q?KyaBJl8dxTIZSuS7HlTJCNtfowZvaLnNoTc/wZtQOVsuXTfEhLhKVKCiRbVp?= =?us-ascii?Q?Opltqh2f4eQyzoGhOighNtMG95ImbNJ8szlgqm52hVznA7ID8g/jGlh7oFCv?= =?us-ascii?Q?9Qvx9uQiIslQoXGcnByUsyVigRhK2gsbjcyqxn+wDos+5mSZmao1qofdHoJE?= =?us-ascii?Q?QlhZd3O7pudqKNESYu5rkQgi1a4axTcomIEg2sE4SWU+457l9Y2iuqRmcZyo?= =?us-ascii?Q?kXnKn2urqO81NCjQLLVRGik1BKfaw8+HsLnGBXX8heZ5JHxeD7PeVKoCvAMm?= =?us-ascii?Q?wfd3XElZ3khpyvqqFpgZGEIqmSNomXnTSAdR+wti98HHPKdOuOIvs8YdbDpr?= =?us-ascii?Q?kojhoAzL+ZhUP6exptdEH0MdNEAZq/g2WMw5691QLPjommsxAdExhKj8FEVI?= =?us-ascii?Q?/P88COHrZdfZW+2CQoavcs/SVDHfWHvpCFHClXfzZcczTtGQ+vKSMqY6Fnl8?= =?us-ascii?Q?01yhBOWAq7NtJv6h+ES9zFvo53VfBr1QngPoO9dbNut5JS2Ye6cNKYxjbQlg?= =?us-ascii?Q?QrQHUXHhLLcuvlhSXTwI6+zQyEiYiwYDOIiGpWGgHTSXYoN+cHSZmRN587x4?= =?us-ascii?Q?NbJn60GmdG2OjIe+oL678VJuZdmTb2MdqMFLpRO/mwqU3kmyeTBoY3V8+YZj?= =?us-ascii?Q?TdEcMDh76xgLmfaI1SSQjpFDJOFyJ46RSDvcMldF3tjBDQ8jz0t99xUvZCUh?= =?us-ascii?Q?ucWq6rq7giBvTmeQsVdkRs9blS26S2Ht8Qw3In4P3EiSAkrvXdxEsrPedoPs?= =?us-ascii?Q?p+RGMqzx44jsKcQupVIxMA1s0rcU4O98N+GUgH2TuL+Ed707rV/6pr6C7GUW?= =?us-ascii?Q?D5nGEChXQp7rgiPSrkKFs7o0wv4voTQNGFrEZLavNKuPWllazBAy2ZHwPs8Q?= =?us-ascii?Q?/SUMb9TSdJaTWaFnqe2RFsep9oQpuQoCzPBSasFgN64h2w16B+hE71+puL3j?= =?us-ascii?Q?D8oldkwaIVJq+XMEEzVCVAoniDBpYUjFzCL2Mar8Yjm+tiOKJeaHWD6Y2fLi?= =?us-ascii?Q?IeUEykzFZMGq/qp9yYWfdFtYkIgASa7IjwZw2ZpP1rFJKgNyp3RzvDwiN+NR?= =?us-ascii?Q?W/4B51PzQo7JVr92pqp/9WNsrmbmMj0dOOp6gwJdbhlKolaL8VtHZqaXJh2J?= =?us-ascii?Q?1H/FCH6hDat0jZVrZGarxsTHNIyPmVemQjDP3uNKXUR5kKrwdg=3D=3D?= Content-Type: text/plain; charset="us-ascii" Content-ID: <8BC0566AC5D7E24884FD957467BE60D8@jpnprd01.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYYPR01MB14116.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 6404b04e-b48f-4c55-ac43-08dea0fbbdd3 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Apr 2026 05:47:01.4708 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYRPR01MB13437 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > On Apr 23, 2026, at 13:32, David Rowley wrote: >=20 > I thought of it, but didn't do it as it meant having to keep a bit > more state to track if we've filled the cache yet, plus the extra > costs incurred to check if we've done it yet that would have to be > paid for every NULL lookup. We currently have to check if the hash > table has been set up already, so I felt more comfortable installing > the new code in with that. That makes sense to me. I agree that tying it to the existing hash-table setup is the simpler place to do it, and avoids adding extra state plus another check on each NULL lookup. So I am fine with keeping it as-is. -- Best regards, Chengpeng Yan