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 1vpcTG-00CCRo-1E for pgsql-committers@arkaria.postgresql.org; Tue, 10 Feb 2026 01:23:18 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vpcTF-00DNXE-1L for pgsql-committers@arkaria.postgresql.org; Tue, 10 Feb 2026 01:23:17 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vpcQj-00DMGZ-0U for pgsql-committers@lists.postgresql.org; Tue, 10 Feb 2026 01:20:40 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vpcQe-00000001ML7-21bN for pgsql-committers@lists.postgresql.org; Tue, 10 Feb 2026 01:20:40 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Date:Message-Id:Subject:To:From:MIME-Version: Content-Type:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=t6JDRzcxYGTYzfK1ArjiSYXcGYwAE4bhPjcv4o/Ezh4=; b=x4CgXY1Hj4MAhfjNVTgnGMis7q b+llBlZuMOK5ukiKfCn5Whl0rGb+DRYAt9DTfVsDVXjjZHrR2IICaliI8oZcql3b7XAkYvDLct0YM oTeIXIj7HwcZFJbdShiLqTd/EnjYYmkDpK9IHY1VSk7yBoPsOQStyLw+qCvRMTW3bDkZlIxeTh+GZ vg2sDbJGMf4ZTU+J0KjV8AQj0gzrJCeVuagCiNw8ORUNUdnj4/YWo0rtzrFhFD7vSaHflESZ1wCc8 AG/mVFKh15dtZYKKStmZbLtO00e2kgUFLNQkI6+VmVI/rWvzmD1P+RCPGObvdQCf+CVSiO5cCuCHf GLnsei4Q==; Received: from gemulon.postgresql.org ([2001:4800:3e1:1::198]) by mahout.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vpcQd-005ZXn-0y for pgsql-committers@lists.postgresql.org; Tue, 10 Feb 2026 01:20:35 +0000 Received: from localhost ([127.0.0.1] helo=gemulon.postgresql.org) by gemulon.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vpcQc-002BJv-1Z for pgsql-committers@lists.postgresql.org; Tue, 10 Feb 2026 01:20:34 +0000 Content-Type: multipart/mixed; boundary="===============5606542449090690044==" MIME-Version: 1.0 From: Richard Guo To: pgsql-committers@lists.postgresql.org Subject: pgsql: Teach planner to transform "x IS [NOT] DISTINCT FROM NULL" to a X-Auto-Response-Suppress: All Auto-Submitted: auto-generated Message-Id: Date: Tue, 10 Feb 2026 01:20:34 +0000 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --===============5606542449090690044== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVhY2ggcGxhbm5lciB0byB0cmFuc2Zvcm0gInggSVMgW05PVF0gRElTVElOQ1QgRlJPTSBOVUxM IiB0byBhIE51bGxUZXN0CgpJbiB0aGUgc3Bpcml0IG9mIDhkMTlkMGUxMywgdGhpcyBwYXRjaCB0 ZWFjaGVzIHRoZSBwbGFubmVyIGFib3V0IHRoZQpwcmluY2lwbGUgdGhhdCBOdWxsVGVzdCB3aXRo ICFhcmdpc3JvdyBpcyBmdWxseSBlcXVpdmFsZW50IHRvIFNRTCdzIElTCltOT1RdIERJU1RJTkNU IEZST00gTlVMTC4KClRoZSBwYXJzZXIgYWxyZWFkeSBwZXJmb3JtcyB0aGlzIHRyYW5zZm9ybWF0 aW9uIGZvciBsaXRlcmFsIE5VTExzLgpIb3dldmVyLCBhIERpc3RpbmN0RXhwciBleHByZXNzaW9u IHdpdGggb25lIGlucHV0IGV2YWx1YXRpbmcgdG8gTlVMTApkdXJpbmcgcGxhbm5pbmcgKGUuZy4s IHZpYSBjb25zdC1mb2xkaW5nIG9mICIxICsgTlVMTCIgb3IgcGFyYW1ldGVyCnN1YnN0aXR1dGlv biBpbiBjdXN0b20gcGxhbnMpIGN1cnJlbnRseSByZW1haW5zIGFzIGEgRGlzdGluY3RFeHByCm5v ZGUuCgpUaGlzIHBhdGNoIGNsb3NlcyB0aGUgZ2FwIGZvciBjb25zdC1mb2xkZWQgTlVMTHMuICBJ dCBzcGVjaWZpY2FsbHkKdGFyZ2V0cyB0aGUgY2FzZSB3aGVyZSBvbmUgaW5wdXQgaXMgYSBjb25z dGFudCBOVUxMIGFuZCB0aGUgb3RoZXIgaXMgYQpudWxsYWJsZSBub24tY29uc3RhbnQgZXhwcmVz c2lvbi4gIChJZiB0aGUgb3RoZXIgaW5wdXQgd2VyZSBvdGhlcndpc2UsCnRoZSBEaXN0aW5jdEV4 cHIgbm9kZSB3b3VsZCBoYXZlIGFscmVhZHkgYmVlbiBzaW1wbGlmaWVkIHRvIGEgY29uc3RhbnQK VFJVRSBvciBGQUxTRS4pCgpUaGlzIHRyYW5zZm9ybWF0aW9uIGNhbiBiZSBiZW5lZmljaWFsIGJl Y2F1c2UgTnVsbFRlc3QgaXMgbXVjaCBtb3JlCmFtZW5hYmxlIHRvIG9wdGltaXphdGlvbiB0aGFu IERpc3RpbmN0RXhwciwgc2luY2UgdGhlIHBsYW5uZXIga25vd3MgYQpnb29kIGRlYWwgYWJvdXQg dGhlIGZvcm1lciBhbmQgbmV4dCB0byBub3RoaW5nIGFib3V0IHRoZSBsYXR0ZXIuCgpBdXRob3I6 IFJpY2hhcmQgR3VvIDxndW9mZW5nbGludXhAZ21haWwuY29tPgpSZXZpZXdlZC1ieTogVGVuZGVy IFdhbmcgPHRuZHJ3YW5nQGdtYWlsLmNvbT4KRGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMv bS9DQU1iV3M0OUJNQU9XdmtkU0h4cFVEbm5pcUpjRWNHcTNfOGRkXzV3VFI0eHJRWTh1ckFAbWFp bC5nbWFpbC5jb20KCkJyYW5jaAotLS0tLS0KbWFzdGVyCgpEZXRhaWxzCi0tLS0tLS0KaHR0cHM6 Ly9naXQucG9zdGdyZXNxbC5vcmcvcGcvY29tbWl0ZGlmZi9mNDFhYjUxNTczYTRjM2QxMWY5MDZi MzJhMDY4MTgyYTFmZDg1OTZkCgpNb2RpZmllZCBGaWxlcwotLS0tLS0tLS0tLS0tLQpzcmMvYmFj a2VuZC9vcHRpbWl6ZXIvdXRpbC9jbGF1c2VzLmMgICAgfCAyNCArKysrKysrKysrKysKc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9wcmVkaWNhdGUub3V0IHwgNjkgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKystCnNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ByZWRpY2F0ZS5zcWwgICAgICB8 IDI3ICsrKysrKysrKysrKy0KMyBmaWxlcyBjaGFuZ2VkLCAxMTggaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCg== --===============5606542449090690044==--