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.94.2) (envelope-from ) id 1uNTGi-002iiS-F1 for pgsql-performance@arkaria.postgresql.org; Fri, 06 Jun 2025 09:21:44 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1uNTGg-006msB-F6 for pgsql-performance@arkaria.postgresql.org; Fri, 06 Jun 2025 09:21:43 +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.94.2) (envelope-from ) id 1uNTGf-006moq-Vn for pgsql-performance@lists.postgresql.org; Fri, 06 Jun 2025 09:21:42 +0000 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by magus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uNTGe-000WN8-0b for pgsql-performance@lists.postgresql.org; Fri, 06 Jun 2025 09:21:42 +0000 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5563iH6j000602 for ; Fri, 6 Jun 2025 09:21:37 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h= content-type:date:from:in-reply-to:message-id:mime-version :references:subject:to; s=pp1; bh=hp3Vr2dKskUzPYhBaxNA+U6sIBMctl NCPlbq1p4eor8=; b=pGkxccSMoRnGcqyETvFAromeElGuYRo0KJt67VVmej/nFd UO/8KmEA3nLjvCxmr37FB+sPYYocgvXbUG8dQImSeQlpx7M56XAfpNCYospU5ROu uUCPIyD1X7BzPlO9z45iRUwEXav2anjLjMybqP3XZdrvdiTGU4c5Ffx+eVd4OTSg cs6RVZXUNRg70P5eRjqpKXEH7xbJPrJ4toit+/sXMSTmfBsWnZEnjjuq3Ot0apHo /2pl/7n5huU00fZVu4qKQPTu369UyH+MU9KcWvEr8ZiMfnJmwsrlEJUU/ueCO0oi 1gCExZ+twSxV5euf3zrwhzRvGAzGsLcMDiV/i4qg== Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02on2061.outbound.protection.outlook.com [40.107.95.61]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 47332yq6dd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 06 Jun 2025 09:21:36 +0000 (GMT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=G9wQdndzIo/OibKMf8JtXmoiF4bXT04eA3YhG13Dj9Vv3rJMufI8T2uoZqKdEr6EMnhNfgZFzGwikqpfHSQvCNX7i9y3uzWv9/8TqgoR9J6Ph8bPhg/+OrcDpJJeAXJmYhvb1T6YS4qBfHmeubid/MsyJ0S/4vZdAR+L1JVbF7kIKLSxa45Vb0q1OnYhcmSxoICWszATT7ix3XrMQIwbs2QZigqaNB+57ByCU1LEXysoo1bndnp+XhivfoEesCIZqRKxLemgXm18UqIAHyHPudGuEybcW7vfRHJ+Wyx7pUdeQEi74lO7TsfvjbEN1PiIg0sz6jdvCIPDA5FQIA2nqg== 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=CrgzR7fnbg43m5OuvO4l7BnNlK6Sn1xdwtpexcB6TYE=; b=viAJkHjk1RLw2S8A15YS6bdNPx9fnh6zkPZwMsmvc3sPajIOnZxbL8MU7N0uJ8YXiAduhN6SGjQEb+eP4fSo7LADHGlP42bsh34Jc32id9yTSsi93xiw/ZatxMovtuOpAYbZbPpYnROTCshBaKlAqu7QdsEQ4w04TFzYZdfQerdMMh5OY2kPrxftjM8nMtBZ7DWQHutoZNrm8GNzTOI5+38acUrWA9n8iAHfe8AvagptO1XalVKoCF0ncMpZBFNIzS+nPUZWqlSVs6Z2a3pgmK3vh/WnblseBIOMq9Zr65MBfUUWj3zZA2pG+LDEMw0oY7DjbW+Xd9Mf+hF7Iy0eCw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uk.ibm.com; dmarc=pass action=none header.from=uk.ibm.com; dkim=pass header.d=uk.ibm.com; arc=none Received: from PH3PPF1C905D6E6.namprd15.prod.outlook.com (2603:10b6:518:1::48a) by CH4PR15MB6698.namprd15.prod.outlook.com (2603:10b6:610:232::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8813.21; Fri, 6 Jun 2025 09:21:34 +0000 Received: from PH3PPF1C905D6E6.namprd15.prod.outlook.com ([fe80::97ec:26dc:d62e:daef]) by PH3PPF1C905D6E6.namprd15.prod.outlook.com ([fe80::97ec:26dc:d62e:daef%6]) with mapi id 15.20.8813.018; Fri, 6 Jun 2025 09:21:34 +0000 From: Mark Frost To: "pgsql-performance@lists.postgresql.org" Thread-Topic: [EXTERNAL] Re: Poor row estimates from planner, stat `most_common_elems` sometimes missing for a text[] column Thread-Index: AQHb1ikCQw3lZBlZCEqDxo53AemQGrP0zMQAgAEOsPw= Date: Fri, 6 Jun 2025 09:21:34 +0000 Message-ID: References: <3e539c8b-c95a-4ba9-8462-04045b2da2b0@dalibo.com> In-Reply-To: <3e539c8b-c95a-4ba9-8462-04045b2da2b0@dalibo.com> Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-reactions: allow x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH3PPF1C905D6E6:EE_|CH4PR15MB6698:EE_ x-ms-office365-filtering-correlation-id: 28a94b34-8a4e-4107-365b-08dda4db883a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|366016|376014|38070700018|8096899003; x-microsoft-antispam-message-info: =?Windows-1252?Q?/PfI2vqMHrEB8FYXl3qUSVUOKescrxRwA9DzEDpBmWqzFlAXe6RLR2XX?= =?Windows-1252?Q?k17HmQ7grsdE/vKIaemLbVkrhtXbDule3Bwvqh+fSvGB2W37rex2aOAF?= =?Windows-1252?Q?Zhr3YNjfReprMtSn64o7RgOJn0fEh6sqS6iK3H50FTN1IDeN399gKS/u?= =?Windows-1252?Q?uYpiCJHeo5zGBGXimiz8SWxIF2LEi1hPJPEvINmV25cQn8n4XA5Xa2Tb?= =?Windows-1252?Q?5jt89b/0ZSaslvEnSArX4sTTioO60Fgv0PitRcmGioIiAtQ4AZz3zFsg?= =?Windows-1252?Q?yqrM5xFl3G6vsWKLpqEdQtOfSAa2IT9jBUSli/D62YEw5a1F9mC7qQ/3?= =?Windows-1252?Q?hrEiOsOhugpyDK3xVyXXqF2WCXZHI70JuqfePHZaN35fyHmuKlPuhH/o?= =?Windows-1252?Q?49am2QHDQ62c1IurdCms1begJU4bBf6A+r4LtnPYuC0ZIQYgCNZwg0Gm?= =?Windows-1252?Q?nmL/kFVsOHS5DZvOBy3UKuep+uyyCB/ZSTMWog4egTe/6OBwyotyacEM?= =?Windows-1252?Q?LfVW7AUJC9Fzih6vcX3LfUIMZoJiWSUlTrHbR2A8Ays6CSi3fOTPnO3p?= =?Windows-1252?Q?qWsc9lT39NwAmvB70aoStsihgVxI/qRUv/eHEBKJQfys+suhuBdQB/d4?= =?Windows-1252?Q?2TL6PqCQlG47TrdhJQogGBAVoLePcffR5ui12MO2dXQY2l66SeA4BFHp?= =?Windows-1252?Q?X+nCVLuiqWaiXXGegh8m2X39H/IzOl4/5fLatGupYIeWAkVX+EeD1Zsv?= =?Windows-1252?Q?92NH8nm0bg6V1rpx4KD7Z6L6e8Qyh61YsSVr9ckrthy4DAd5K5RSh6tK?= =?Windows-1252?Q?QmKWpaQLZDZ3befQTSC30F9fZZSY4wbTKgBWknJGVYdp6dZmEsVK0NuY?= =?Windows-1252?Q?kQlgL4ZOLNdCrEEXMMfTr07jnFbGCJzbycxOFZb0VckRC5cXyPeNga2G?= =?Windows-1252?Q?gzyjhiT1R89ovqGUWk8keQXYSAdn2iQ6eKx8U/udajacXg5yCfsaiNn6?= =?Windows-1252?Q?0lndLRBnIlWz4bTZn7XaHurBss6CsdE1+7K2Q7n1I+nZT0WZC9P+kukF?= =?Windows-1252?Q?21gN/8B/neZXZgmaJgGKTuPDnNdKmAmWvyc+qd6bMpNQ/8lTNkANsnmK?= =?Windows-1252?Q?FZ8icWMOXmyr05KSjlEOVdKJ5WBcY0i/mokJHWAx/OsIwT+di9yNJ3sl?= =?Windows-1252?Q?CZhx+HXcMRMfG7f3jYGWTmsEZ2Gqc17NXzIRRipBeVjZfiX/GdaMq+tF?= =?Windows-1252?Q?N7STmRI5kIMh+uqtPqUVyXUIEoSj95Y2ShKXRZaU0TaHH+/2di/rus4j?= =?Windows-1252?Q?TiqlhujkXcmfLHFIawmeXcPgIiVnCuZOrEGOGQAm0zTHSlewIsQ/dk0P?= =?Windows-1252?Q?x6oGft5/Il5SlOGgrAMJLtZufvVEalwsnhRhlULauXGo8LJJMSuSzsmg?= =?Windows-1252?Q?zyt2QmPoaER5tGtfaYFsQP5e9y5C0h+dzOJueV7INbByDLIo3QFandQ0?= =?Windows-1252?Q?2WC75UG0IffzUQQxZKu8i9Hpuuza5BbDAvam1kZkcijIkts8NMnRCRIw?= =?Windows-1252?Q?zEfFcx7X8eA/+CEOWPD6FzjZpBWdsynfwrpJWQ=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH3PPF1C905D6E6.namprd15.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(38070700018)(8096899003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?TIbiSi6knyUcnY6W6OOumBfyPYmBlcry1aRCx0hg32aEhD0wvKEbmvc0?= =?Windows-1252?Q?Kcg3Ift2oZIv0hdzG5+vHIi2FQqMPp2Je0oF92xWOQ+9miVpv2we5N+g?= =?Windows-1252?Q?54ltdrSM+UdfoKI+Mrb8Ljhn1jf7/t1+dsEGrBCuQqhoeSRiVUwxbzft?= =?Windows-1252?Q?tU76qD38ajTZuq84ZApbXZ9Nc8parkRIudkZBCbxJca4PtDNqM6v1Jq2?= =?Windows-1252?Q?q0lHAdOs3++S1G4vdwP0n9WufDKxeOwfOxGk+M/8uRNvBkO4b1WB5O7O?= =?Windows-1252?Q?nI1wg/GAGVqJpGe/be4lS/moxotFm/aa5HxhQU9Cy64I/UFWZMBGtOHO?= =?Windows-1252?Q?5Sq6I0X7uL4aTtORQzSZchh5/3pOZQuDP8XWFCpl7dtLX1vBHL21TSiI?= =?Windows-1252?Q?a51wPy7P+uljweJxbK+I1bQyxbmRFRrCfB9ft625PnkX99rLVEiuJlgm?= =?Windows-1252?Q?CXDW8ZXgq/kaIiwJPQj+icwekORcCUusM8yT1Q9+yMc+GbUhV2Qd5LIw?= =?Windows-1252?Q?JLw0UQCxDiHmn4Dy4N2plBctzrDML4amKEGR9T8hqmUHfmbqV4rzaEWr?= =?Windows-1252?Q?0xtJWnqk3+ISeykmY3Hlbh304l0cteRUXDi54bBaXwOz8vFq2Q8ahCUA?= =?Windows-1252?Q?YGMV7IkrLo3jRD3xZheLaWabjyVMt3refVSRrEGZIkcAc5Gnz7749fjZ?= =?Windows-1252?Q?DX+rZRWO1Kf8dvS3+g+0MOCozbSjkg1/t7a+msg/xWGSlWFO0zskfkr+?= =?Windows-1252?Q?eGcQM/JxulVDhtnNYGDNndTC8xxJbSRdBQCUC+37FZgVAyNyZR23iWn2?= =?Windows-1252?Q?tPQ/lm58KfJrnMxLaddS5JfBIyevRZsj6XLsQdkeVdRjVZB9+mDcxu0v?= =?Windows-1252?Q?GxiBwR/i5NtKeM5GG2ImiTLop2qImIIxlkfTlWoDTxosIMsw6eECMg4M?= =?Windows-1252?Q?2J25P95qmqPIguqRooxXcG6eJ5j83m/J/S54FO3u8iNvceklM4kG4Y3a?= =?Windows-1252?Q?QpnwwpjlglpHpWbB2X1lJxwo2JyToifPfL23N/mWOhP1VE3MeB5IEs3b?= =?Windows-1252?Q?gpzfyOCNYQ4mUWwPQexrlxmIM38MOBhcoeADRgiJYOyEqpfmgk/T4Slp?= =?Windows-1252?Q?aXvZXlmaWb+So4edqvy/T+BGcme6cJ08O+Ny90gkmaMJ+B2Sw0qRwg9L?= =?Windows-1252?Q?/Tr7iCUs8cEzqeviIbH1RsXg8UJA/TeXo+g96s00EIfinybFw96QacGu?= =?Windows-1252?Q?FPdaQDoquhtcPbMW9V57OGGYh42RKES4ProHxJSY0gag0tAIXsp/gFoP?= =?Windows-1252?Q?osp5orfIX1xTal9oqUyjQugwydcGUAB2ejDg/jAUTLNJ372XcBNi2Zdp?= =?Windows-1252?Q?bpzFY9+SLgoRaGewhX+Ox+Z8ljvQgqnKGVZ5pGC/LvmCNptzcsbL3Ioq?= =?Windows-1252?Q?kWkMBus2nJu7LWqLQDF4ZgyvBL5K1PAEsN0Cp3uhK0tXTw8qfbPCCYYC?= =?Windows-1252?Q?ZLjymPVfhZDp8HQopAUhwNGlKq2+QdEUF4A34jS3wPpAgnNfYZBo5Wxk?= =?Windows-1252?Q?sfe1fO20tZ7hY7Duszd3MkGSEo2tX3ug7vcJc+RWH124jan5TX3+qVky?= =?Windows-1252?Q?lvpM5HBWAMkKyLN2ErKBrEPUUGoHVCqktUlx6Z8LyKJ9iO6DMb2D/vtP?= =?Windows-1252?Q?LAdQ49R3X3turtleDlpAWorlpt8vbzXtk5XmjaIxoA62lsE0uvG64g?= =?Windows-1252?Q?=3D=3D?= Content-Type: multipart/alternative; boundary="_000_PH3PPF1C905D6E61EEB89CF46C1F572D402E16EAPH3PPF1C905D6E6_" MIME-Version: 1.0 X-OriginatorOrg: uk.ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH3PPF1C905D6E6.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 28a94b34-8a4e-4107-365b-08dda4db883a X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Jun 2025 09:21:34.6324 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fcf67057-50c9-4ad4-98f3-ffca64add9e9 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Cnbf6fpR6QNQ+zPS0J4zjz0kF4X/HZ33pIyoa7Onua5b9L/XNiu0ZIy4Vi2gy0whybIsXYcPY9rZN6O6UxUkwg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH4PR15MB6698 X-Proofpoint-GUID: 3gwCMJInnwaBJsKaVG0ZXwGYQx_ez_gV X-Proofpoint-ORIG-GUID: 3gwCMJInnwaBJsKaVG0ZXwGYQx_ez_gV X-Authority-Analysis: v=2.4 cv=SO9CVPvH c=1 sm=1 tr=0 ts=6842b321 cx=c_pps a=5IBKRMRyaRRtUKQpU9qwqQ==:117 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=6IFa9wvqVegA:10 a=IUXmofTVTC5u9MR0iaEA:9 a=pILNOxqGKmIA:10 a=yMhMjlubAAAA:8 a=SSmOFEACAAAA:8 a=u6SR_h4kbJ2TLSpBY38A:9 a=of6HvCouH_Iq9vPR:21 a=gKO2Hq4RSVkA:10 a=UiCQ7L4-1S4A:10 a=hTZeC7Yk6K0A:10 a=frz4AuCg-hUA:10 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNjA2MDA4MiBTYWx0ZWRfX3RNyZFhAOnut +/+AEwAvG75UcYIx4jJfocsSg2/Gli+QT3mMfd1pMSvl96rgwYAdpZ2U/BEdTY+mfBhXLtI5sy4 bXGDmu34HoUK3Y1SIy9jOAIytyzldzY+y3ZkBelObybP3nuhB3mWiA7UDQ//SlJXO8ffLOEHIpi VvZHZviqDxTpzCbAA2FQwLGIrlD5VsFi1qLv/F39xfPFIwQmn8rfLfndIIjaDlefs+3WCxmYOs7 8mZVzqWWUOlc/dyfH8IrDikRLPFgyGVHBVLQSWsh8fnafvlxhCg/j8JcGkF+TG/sIKk2HpprYFz fwRvZXbOxoBNMWrVcTdylmUZ3NuWwANXHt9CTT8J5n69x6xkvelX7cQZb88yI5ssGFipEd9vOgv /cc2XqTKBMcztsGyzmY/8PPDUCLlvtBfvaXFKU/hSPYoDnPe+n+UiYaEaF5ZHgfLV9GXKVok Subject: RE: Poor row estimates from planner, stat `most_common_elems` sometimes missing for a text[] column X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40 definitions=2025-06-06_02,2025-06-05_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 impostorscore=0 phishscore=0 priorityscore=1501 adultscore=0 mlxlogscore=999 clxscore=1015 spamscore=0 lowpriorityscore=0 bulkscore=0 mlxscore=0 suspectscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2506060082 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_000_PH3PPF1C905D6E61EEB89CF46C1F572D402E16EAPH3PPF1C905D6E6_ Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="windows-1252" > On 6/5/25 17:42, Mark Frost wrote: > > Is there any good explanation for this behaviour? Preferably we=92d like > > some way for proper `most_common_elems` statistics to be collected in > > our production database, in the hope that influences a good query plan > > to always be selected. > most_common_elems has a limited size, and if all the elements have the > same freq, there's nothing we can do. > You could do: alter table test alter column tags set statistics X; > However, X is capped at 10000=85 Actually *any* most_common_elems stats would be fine, because the reasoning= is: * If the searched element is in most_common_elems we know it=92s freque= ncy * If it=92s not, it=92s less frequent than the least most_common_elems So in our case when every row is unique, we=92d only actually need stats to= record a single most_common_elems (if only it would record one) Unless otherwise stated above: IBM United Kingdom Limited Registered in England and Wales with number 741598 Registered office: Building C, IBM Hursley Office, Hursley Park Road, Winch= ester, Hampshire SO21 2JN --_000_PH3PPF1C905D6E61EEB89CF46C1F572D402E16EAPH3PPF1C905D6E6_ Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="windows-1252"


> On 6/5/25 17:42, Mark Frost wrote:
> > Is there any good explanation for this behaviour? Preferably we= =92d like
> > some way for proper `most_common_elems` statistics to be collecte= d in
> > our production database, in the hope that influences a good query= plan
> > to always be selected.


> most_common_elems has a limited size, and if all the elements have the=

> same freq, the= re's nothing we can do.

>  You could do: alter table test alter column tags set statistics = X;
>  However, X is capped at 10000=85

Actually *any* most_common_elems stats would be fine, because the reasoning is:

  • If the searched element is in most_common_elems we know it=92s fr= equency
  • If it=92s not, it=92s less frequent than = the least most_common_elems

 

So in our case when= every row is unique, we=92d only actually need stats to record a single most_common_elems (if only it would= record one)

Unless otherwise stated above:

IBM United Kingdom Limited
Registered in England and Wales with number 741598
Registered office: Building C, IBM Hursley Office, Hursley Park Road, Winch= ester, Hampshire SO21 2JN
--_000_PH3PPF1C905D6E61EEB89CF46C1F572D402E16EAPH3PPF1C905D6E6_--