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 1wQcK9-001hLU-2v for pgsql-hackers@arkaria.postgresql.org; Sat, 23 May 2026 02:42:50 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wQcK5-00FBU0-0g for pgsql-hackers@arkaria.postgresql.org; Sat, 23 May 2026 02:42:46 +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 1wQcK4-00FBTs-2K for pgsql-hackers@lists.postgresql.org; Sat, 23 May 2026 02:42:45 +0000 Received: from mail-japanwestazolkn190100000.outbound.protection.outlook.com ([2a01:111:f403:d406::] helo=OS0P286CU011.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wQcK3-00000000MI5-3nwr for pgsql-hackers@postgresql.org; Sat, 23 May 2026 02:42:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Ou/1MIVfYFghaM00kInepqc+ZCnYkj1kbiLVZOIv0BJZCJr8vqJgIXH0qdDIk4L6KxOfolItgLWt7MWm3Qj6D7SbBfnJPmhprw7vbHEgkh0F5lRA8O2/oNdcIkJpMBBqT7QTTcABsfJD3UVbotbOF/tQo5QoTl7J7RVGhiYs4sfdnCvZoW1q5z0gxxMEyT7IwflA5hYibPCyPV/i4JOZAW6+OHtbRz63tJCgtbwiU8HJXma9LZlO6P+cR06vjq3dP3CSKHqHuAnOU4+TJxgtltRxVv+e0Ntw9K6tCeybxroeYASdAHpn7n6Vd5DKJwfKXIL7ouv5Y97wgiHZ4t1nmg== 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=DS6Tse8iGw/ff9IC6DO7OB5dsLfcTYCAJONVXveO7EA=; b=f7I9Or5a9SOlKqAeWVNaoEjXsuLClW7C9QDS9fl8eO0MVs+Uxp17ILzMGfsJwG3G1/HS2d8szGz8zcV0xc1YTdQaJ5AfyTkCKW4hz1A2xWtqffQIkqRJxeWqh24eN4EbtaUubdQn45yJfl5k46vsnnv19UerBoQ5/lsH8t5mFRkobmrQMuyKKWC3dKS2GFX5J1gyGotoHVNzYQKCXyOfLl4LzkitFBeAAq+np+jIfVyMgmOiXyqvXynIqnsV75s2ytV32lwozggqs5OuETXWG09qqdYnKsZpwJVKDR48dgg2hTYhjSPIJ3nv56HUy7ABfliE8RrzjNRST0mXxeqZqA== 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=DS6Tse8iGw/ff9IC6DO7OB5dsLfcTYCAJONVXveO7EA=; b=eDUdUTWSaMD71wqxkXgUzWBt/yjp8Cpj+ShOTK7fZ0amcHV6RTwhd1YQS4ZqzWbwPKoigFGAlwC93HiEnwHBUzW3nkLVH9iOPjqVrLJif/AIEkYRLS3U/+9zFeii79g75CGOkVrTUmy8vWHehR3UAhQ4nrx5khBg6u5oV00AbW66Gfw+ufGQ4xT+Z+cgcxSiIcJWOawq9hHxfq0LpLapvb19sQdk1hjcbNKlX/P3ritnQ46E0FX+0WMpeD0X/n9/3Fkr8tOBpF4Ute68wTAl4MdkwLYxf4bOx+fAEz0yF/7pUovA9G7NdOk3WQ7TbqAdbc/SEYj6c17BVDLNKr7NjQ== Received: from TYYPR01MB14116.jpnprd01.prod.outlook.com (2603:1096:405:212::9) by TYWPR01MB8837.jpnprd01.prod.outlook.com (2603:1096:400:168::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.48.17; Sat, 23 May 2026 02:42:37 +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.21.0048.016; Sat, 23 May 2026 02:42:37 +0000 From: Chengpeng Yan To: Dean Rasheed CC: Tom Lane , PostgreSQL-development Subject: Re: [PATCH] Fix overflow and underflow in regr_r2() Thread-Topic: [PATCH] Fix overflow and underflow in regr_r2() Thread-Index: AQHc1jeYNmULsFKlYkyKLV2a8es4/7YQg1oAgABDBwCAADPuAIAAFe6AgAAK9oCAAB8igIAADGGAgADIloCACP/WAA== Date: Sat, 23 May 2026 02:42:37 +0000 Message-ID: <10B9314B-B6F2-4657-94BC-C990F918CE44@outlook.com> References: <33E01656-BB3B-46E9-A41F-24A01A7C35F4@outlook.com> <1494820.1778938764@sss.pgh.pa.us> <1506197.1778949916@sss.pgh.pa.us> <1513654.1778956979@sss.pgh.pa.us> <1524050.1778966323@sss.pgh.pa.us> 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_|TYWPR01MB8837:EE_ x-ms-office365-filtering-correlation-id: 5ab519d6-fefa-46ec-ea2a-08deb874f376 x-ms-exchange-slblob-mailprops: EgT5Wr3QDKweTUlmISQeLwcLdUWU69cG56sf3dxQFowEx3OoAcwU0f79ar2Tzb4yOQDx6k+No1PRxMss38I3Sk9JEYyv1nHHFHQRzGB4x7TrZGZRsHKUiDZRnoiNOvR7h9+46vE24/+TW8p0xoa7wISEPJCDwjCEYHu/O3YnWcxVykIRQhHLpOphYg3hg6aAfij/7wQx4J/0emHLq86jWQPfnY21au2EyTpSWyKiGjK+eu1fIklCKmeOpkvrrY+XRBIfIABCoXhCoVBbLJ2ViPl/jbIZ000ngHyOHdsypOcCZyIB+33uRGned77TejnhPch7t0WmCQYQIY+narKzXQWEMjk+slM8rb27US/7AW7My9Xtne3/u/y6UQd/SCM89QNAtB0OSY6ncZvuzhrsbM9r5VxHoNGht/qf8Mr7Ye1FBonno1Lf1+tVCDHKmYOr65hLy1W4lBj1kfN6zJzcyeEFQvX1QX1gudilBkTOStWUR9NomVo69ym7eiMh9OfXHUlrO7rIgJI/RCMqt7kGqFOTobfIQ/36DBF3znnWjKkizYRupwYrptVQE1xmGkE96xL3U2PT+IWTyEFYiL78U5gMh9PSRA+mWCZK4GvuSkHlYfCbAiWCQ36s5cv1XBEUqUTb2QL+8oB/2IL6VFOfTMAVxsCiOf1PYCpTiJuQlBW2bMEvLtLpRi7rk/IH7CWtbeJU+HRmSNKrXCZEGRW78G/FjrQ6kc9ulOqE6Nkdbac= x-microsoft-antispam: BCL:0;ARA:14566002|15080799012|31061999003|24121999003|19110799012|8060799015|8062599012|22091999003|24021099003|3412199025|440099028|102099032|40105399003|52005399003; x-microsoft-antispam-message-info: =?us-ascii?Q?HREWsAPmpnkNDJbU7eXU2DBxoHz9BLgzGRkhuaDWN0I3SsvWKn8YZ4zTemai?= =?us-ascii?Q?pOjtptpi4T0BmnwMbQv+2RDxxVHJDJvHPDCiYMLMMkFRxQZToOnKgOaKgjLT?= =?us-ascii?Q?PlfQ8GM/IGmZpzVuoXNQaCSg3uVyn5wuTwJcokdSnDXWM/kKETcAUFysrjzg?= =?us-ascii?Q?NkqCt+R1w9n5XSw3WARD2cjWuldjaakpZ1bbFcmfQ9qqGghrEx1PflDwfIFZ?= =?us-ascii?Q?GdxJ5GM82qiEOeZx6rEBG1SOZ6D/CoDs8AWFic8IMo4ykJWRnBT8uxtyVBP+?= =?us-ascii?Q?j3TSxTNK1ajp6JpNy2WUI3E5LDqQxLkUD/9KSai6ZsOcb/Y1jJ6+qcWP6VHH?= =?us-ascii?Q?bSZihxNblSSNjQ9U7OBKjCMAz1xnx+S516od8NdL7rT/IWowR0cJk6xSIiJS?= =?us-ascii?Q?sdJ8VonaruZLgqnL97khw8jWRQPkBHJk3bfbVQE1qcEptVaFxfqFLuzVC/U2?= =?us-ascii?Q?b1phwK5ZeXfO0Flex3t979b9RBfcB98tvEHV8yB+jCvFVK79WGsWiej6dGCi?= =?us-ascii?Q?2AQwT2q0jLTmKa/kL6/rBkWBNpJ6LtWH0oBR7uo0zzhFPCsAGVnjuEwHubra?= =?us-ascii?Q?5xxjmiy5dN6kSBTLtfPlWufsdal7xdQ3jzmxCU/QX55x+sGFRr6SrQbvNrqY?= =?us-ascii?Q?0YHhhD4QwwsqC7w1cOtMW8CU/s5L4pCBianY6i/zy1PwlOQxLvM75FGBVxHo?= =?us-ascii?Q?jNN31B/lrIpqLpj59C+t2tnN3BPL3t6ij5eH3ttdIRN0x4YMdRgI+vjLMgnD?= =?us-ascii?Q?swIv31Lic/9wH8tKwUIoAHU7tCJG7yaVG4JnxDotBV7v+3hVCcVgbLCUXTGg?= =?us-ascii?Q?dKmqtQR0pCoHFpHRxOt5CfYm80JQjoc6ATdJW16surBt30RzQngqfLTjYeHl?= =?us-ascii?Q?J8tTwfFnYx2K17/Y4tK/K8ZA5qk6BfIQWu9WmpVkFOSFqy1PyRUxh8e/qZzr?= =?us-ascii?Q?wi+orupD4XMg1DwiRliMViqfWTBjrit2YvZCVPnSVx4UaYQm55Mqtz3bgUZH?= =?us-ascii?Q?ZPwe?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?OQY+3I9xKvLR9wFYmSEJKndtmG0ozsAQzgqvXXal6U1AgkQ+GSndQdanrk5n?= =?us-ascii?Q?TG4TBpvU1RXJqZx405kVRKOio5sgTq+m1c4WCbB/JgSVUWy023vJkEs49EWd?= =?us-ascii?Q?D8iOBtoRZVvOGi4nRlUQny765Lgy5hW/6pcn9FhLLbiDA67RKi5iQGOJ9fAX?= =?us-ascii?Q?Gr/xV4RKQ6JEdO3q9OFq+or6h7CzVEAHuk1jj02Ow8QqLGObHvZ/lxmshq5h?= =?us-ascii?Q?VEr+arTLGzE0JHitF6KN9RzxrIz1bafW8wzhIHSldXoecygEW0KSZC2uT9UF?= =?us-ascii?Q?Z1PcdsN3Q4QsuPI7HEY301v8ywFDFWvJPdvPH9UtBNXCausTGV5M/o7kbj0b?= =?us-ascii?Q?/Se4uV8Pjj11llFRd+aQLEO0SC2A/5VzD6CHbhpzQlh+VZWZGTs2ye3HWG6i?= =?us-ascii?Q?U/H9LKIxxYNn2p/I5QY+nBAZXqCJFHAMQO7ItTEYLEyXJN2KhjvWqrLIAMN3?= =?us-ascii?Q?ar/cDyX/bSDsVxNbWOWMt7F1Jzd4AEJeOfiZWX3BVPn0SwQIeWwe7TGV172V?= =?us-ascii?Q?BxVoJReBmaNi5w7r5K5oJj/CkFUPIh3D6j12q3lrkAXJo785KuNV5wHpT2Mw?= =?us-ascii?Q?xSP9sXJzjUubqxd/ZEoNx7BI5v9J1KE2ycEHY+g9BxiHfTEYUloXefJchyIi?= =?us-ascii?Q?xlnrBAnOXol7Uqyd5qyko00aNo9h2+ULtbVppetCCtAgQDkkk0ONnqCGvaWE?= =?us-ascii?Q?q8eUaPghAJ2LbHq9f3UV9ufSZwn3oVN1Vrchy/nJwLRDRmAkIIE0YIodjp2o?= =?us-ascii?Q?FvO9AluUhdIhXm4F2GIhCdCd+qDnWEvF/di0hDcCUfLzHiBkHl2W5ZLjhqJv?= =?us-ascii?Q?FfyZ5DWSDfVLpw5WW2Mg6fc/p9V/i+bK+79z15wIGaV63BobL0G+f3vTl5YH?= =?us-ascii?Q?i+siLM9+3M1wHkXVweM0JvdRhUGKB0zJBBGNATLvH/p586eeGedJPOz3Zwuc?= =?us-ascii?Q?xzddghBHbLJ0TocM27jPl1GVJwUdSC4GiVXCviwY05uqZmxJ+wvg8NGOJrCp?= =?us-ascii?Q?R2VjT0egC13vo6h4uctLU1q6Z0bzW25BMQsMeAxKvuVCqxSu5U49+kJz7aVM?= =?us-ascii?Q?YPT+xzgjxJJ4XmnfD/OSakUGXmxnObvx36OeN0kzqh5NxYFoyJjBki0vJG8q?= =?us-ascii?Q?3gN1mQETRpnpjgxSg815PlqMvSgP6JrwJAjGCZgqVGA//8VyrMuTDRjI4x4c?= =?us-ascii?Q?h+bsEboFVzvFB2gVJjZhrQzII3rADnkXz4vu05Q9M78TtMQiZhzJZS4WkNjT?= =?us-ascii?Q?8hDtn0InPpJ5jmpklpDL7tmg5n/zy6yV97u2pv1A7CtcqfMf5el1mFuTSzwI?= =?us-ascii?Q?UMvhRfcwnm/n4FlT1mk8jDwtL9IT1lyp2L6eobUs5f0HRAmN8mg3xnFkJRfr?= =?us-ascii?Q?RN23RZSPor8NLmf8l3I/h9lLxQPK+YMsb84eZ/cz86wziBj/DQ=3D=3D?= Content-Type: text/plain; charset="us-ascii" Content-ID: <4FE600983097204B8149E45989DA7179@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: 5ab519d6-fefa-46ec-ea2a-08deb874f376 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 May 2026 02:42:37.3333 (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: TYWPR01MB8837 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi, > On May 17, 2026, at 17:16, Dean Rasheed wrote: >=20 > OK, here's a more complete patch along those lines, intended to apply > on top of the regr_r2() patch. Thanks for the regr_intercept.patch. The approach looks good to me. I only noticed a few small things: 1. The patch file seems to have a format issue and doesn't apply directly. `git apply` reports: ``` error: git apply: bad git-diff - expected /dev/null on line 2 ``` 2. `dy` seems a bit hard to understand. Perhaps `offset`, as used in the earlier sketch, would be clearer? 3. Do we need to add tests for the underflow path, and perhaps for the Inf/NaN guard? Other than that, this looks good to me. -- Best regards, Chengpeng Yan