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 1uaFej-002Xke-Ux for pgsql-general@arkaria.postgresql.org; Fri, 11 Jul 2025 15:27:21 +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 1uaFeg-005nzj-NW for pgsql-general@arkaria.postgresql.org; Fri, 11 Jul 2025 15:27:19 +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 1uaFeg-005nza-CL for pgsql-general@lists.postgresql.org; Fri, 11 Jul 2025 15:27:19 +0000 Received: from fhigh-a1-smtp.messagingengine.com ([103.168.172.152]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uaFee-0072uJ-2X for pgsql-general@lists.postgresql.org; Fri, 11 Jul 2025 15:27:18 +0000 Received: from phl-compute-10.internal (phl-compute-10.phl.internal [10.202.2.50]) by mailfhigh.phl.internal (Postfix) with ESMTP id 0F1BC14001AF; Fri, 11 Jul 2025 11:27:15 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-10.internal (MEProxy); Fri, 11 Jul 2025 11:27:15 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aklaver.com; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1752247635; x=1752334035; bh=P+v+Bm+DvfyWfY7dCSVRQhMTMLB3qrQCZXx2TOzLN+Y=; b= bp1vQKMwh7ouEvObUExNo5Wi9HaOSt2irkFiUbuv6se9v34MUfc4PXWcKGJqFWkz HGGB0t2PpdCfwqgz89dEBZRXADP8clMW8pAGokt83eRSIGoi803/HvU5B1mbIwAM VsOV9l5HY28TsRUZXtzpqWfi7L+VZWhbkhbAtegoXnjJEDbF9OJUXx/G70YDNxlE 3AE3HljPFFmPKUGBNz/HEn0nc0uB9PwILmKcMDEMC/ygRxGqBn3UAzP9I5yZTT5t HJ3qm48RsjPBgMsAvh1q3r1YPzhUFf1PYLNbElTvhCHEGa0ave/ijVPLdiplnQZk Pg57fTBvNHe4QYvCyu9eTA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1752247635; x= 1752334035; bh=P+v+Bm+DvfyWfY7dCSVRQhMTMLB3qrQCZXx2TOzLN+Y=; b=A UOHP5HMzRuuEhK0nwwQM/GqUf5yVExjD0rbIZ+NfqTVpeCcn/kOWTtwGmnzBcfF7 9OZ8VmmyROHqoO+rf1oeb1gbyGGVviToCxQ8E+a9se2UtsUayFAxolPPgMaQ+CzV IRspm3E/vw6iQGycQXQkzewveTxzf9GJMHDTCVOoxmP/XnRuW0mxncZmzpaPOPMU KA9fPLwhUCn7oZbLHTKp0ZYINzwQNYgjPkre1tuILfGw77Et2ogKf3dwAfV+6g0z vb6qO1KTxbSUrva6kkD8S554f/O/OSHgkSIw8dmGVlzGir9AIqtd448ryvDZO7g1 GpcILOvfsdrbbz6n1DHEQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdefgdegfeeikecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjug hrpefkffggfgfuvfevfhfhjggtgfesthekredttddvjeenucfhrhhomheptegurhhirghn ucfmlhgrvhgvrhcuoegrughrihgrnhdrkhhlrghvvghrsegrkhhlrghvvghrrdgtohhmqe enucggtffrrghtthgvrhhnpeefgeefieeutdfggfetgefgheekjeehteeileeigfetieek jedvieeviefgheevtdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih hlfhhrohhmpegrughrihgrnhdrkhhlrghvvghrsegrkhhlrghvvghrrdgtohhmpdhnsggp rhgtphhtthhopedvpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopeguuggvvhhivg hnnhgvsehgmhgrihhlrdgtohhmpdhrtghpthhtohepphhgshhqlhdqghgvnhgvrhgrlhes lhhishhtshdrphhoshhtghhrvghsqhhlrdhorhhg X-ME-Proxy: Feedback-ID: i76984098:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 11 Jul 2025 11:27:13 -0400 (EDT) Message-ID: Date: Fri, 11 Jul 2025 08:27:10 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Aggregate versions of hashing functions (md5, sha1, etc...) To: Dominique Devienne Cc: pgsql-general@lists.postgresql.org References: <7f90e1f3-7e0b-4b87-8cb6-f2862755fd3c@aklaver.com> Content-Language: en-US From: Adrian Klaver In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 7/11/25 01:49, Dominique Devienne wrote: > On Thu, Jul 10, 2025 at 6:25 PM Adrian Klaver wrote: >> On 7/10/25 04:48, Dominique Devienne wrote: >>> Seems so logical to me, that these hashing functions were available >>> are aggregates, I can't be the first one to think of that, can it? >> >> I've been on this list since late 2002 and I don't recall this ever >> being brought up. Now it is entirely possible that age has dimmed my >> recall abilities:) Though a quick search seems to confirm my memory. > > Hi. Given that [SQLite's SHA3 hasher][1] has it (OK, for [8 months only][2]), > it's hardly an original idea. And when considering that `sha3_query` > (and `sha1_query` before it) have been there for years, and provide > equivalent functionality, again, this is not novel by any stretch of > the imagination. Even if there was interest in writing the code, given that Postgres 18 is in Beta I don't see this happening for it's release. That means the earliest it would arrive would be Fall of 2026. The alternative would be to do like Sqlite and create an extension that incorporates the code. > > So again, I've really surprised this hasn't come up before. --DD No one else had the need? Or they came up with workarounds. -- Adrian Klaver adrian.klaver@aklaver.com