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 1uaGPO-002uEQ-FK for pgsql-general@arkaria.postgresql.org; Fri, 11 Jul 2025 16:15:34 +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 1uaGPM-006HsP-K4 for pgsql-general@arkaria.postgresql.org; Fri, 11 Jul 2025 16:15:33 +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.94.2) (envelope-from ) id 1uaGPL-006HsF-Rz for pgsql-general@lists.postgresql.org; Fri, 11 Jul 2025 16:15:32 +0000 Received: from fout-a8-smtp.messagingengine.com ([103.168.172.151]) by makus.postgresql.org with smtp (Exim 4.96) (envelope-from ) id 1uaGPK-006mzU-1Q for pgsql-general@lists.postgresql.org; Fri, 11 Jul 2025 16:15:31 +0000 Received: from phl-compute-04.internal (phl-compute-04.phl.internal [10.202.2.44]) by mailfout.phl.internal (Postfix) with ESMTP id 4F46BEC024A; Fri, 11 Jul 2025 12:15:29 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-04.internal (MEProxy); Fri, 11 Jul 2025 12:15:29 -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=1752250529; x=1752336929; bh=Ue9N7ZgUi0YkFvcOC8j9bS5+wt5r11v2sApNHHrHzWw=; b= Cffo6Ofor7VxM+dONyYNGRKfyIyiqSCcU+GL6oryp4q10Y0eYRx7tk5x9RyNDUrg mvRkkFBRvmSyzpj7uf99mUfhHJOipfOmFnUpFyvKqJ8NoMG7i6x0aLr+L8j8hJuj kWN9VKg1SnXaSZtfWAzDPrYXHb7E/5p9C9QKja2TdYMXymg6LD5Qw5gr3vIl10h1 j+XPvxaGlxyIqYtxiDg8C1rYH6plE/syxJOdGb3EnAfiN7t7kuzd4Duu0m3gD1EY s0urOGJXjxwcjOJjlT5skZmSCAPokmuaL2a+RQbNt9+9r1qxelXE2kNpsdHlDTFI IE2eRdBpsHcg8Q8RZtfFRQ== 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=1752250529; x= 1752336929; bh=Ue9N7ZgUi0YkFvcOC8j9bS5+wt5r11v2sApNHHrHzWw=; b=k 2r8eNXj5eha60VgF6aZ07lJ3kSjqsKfQMpKXM18KYRs2R7JpRIWvco7R92wDCBs9 T7uv7SbbCXcFWMuY4MgxUKo2o8PaEfrccIqnOvrQly4j4HLhPWLYEePt6wuc/GkN Id3D04VwvFvlyDRJB6fxwsGg0jnHTUluYb3P84nV4sguDrpgrf19waT0L+Dter37 L3yIfu8mK+9NnbG65MfGkRBJCEFX06+9tLRa/vP8qHFt6mWAcJHP+bRl3DOrfvD5 V6tExQ5breYxuxKPO56NAA5YYKkrG0mFadkAXZcGio7873Ubr7mHiThgGrz1Ykv2 v5x4BG+MQLyJT1vOLbASA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdefgdegfeejjecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjug hrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomheptegurhhirghn ucfmlhgrvhgvrhcuoegrughrihgrnhdrkhhlrghvvghrsegrkhhlrghvvghrrdgtohhmqe enucggtffrrghtthgvrhhnpeeihfeuueeiueejffekvedvgfekjeeitdduffeijeehhfef ueejgeelfefgiefhgeenucffohhmrghinhepshhqlhhithgvrdhorhhgnecuvehluhhsth gvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprggurhhirghnrdhklhgr vhgvrhesrghklhgrvhgvrhdrtghomhdpnhgspghrtghpthhtohepfedpmhhouggvpehsmh htphhouhhtpdhrtghpthhtohepfhhlohhrvghnthhsrdhtshgvlhgrihesghhmrghilhdr tghomhdprhgtphhtthhopeguuggvvhhivghnnhgvsehgmhgrihhlrdgtohhmpdhrtghpth htohepphhgshhqlhdqghgvnhgvrhgrlheslhhishhtshdrphhoshhtghhrvghsqhhlrdho rhhg X-ME-Proxy: Feedback-ID: i76984098:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 11 Jul 2025 12:15:28 -0400 (EDT) Message-ID: Date: Fri, 11 Jul 2025 09:15:28 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Aggregate versions of hashing functions (md5, sha1, etc...) To: Florents Tselai Cc: Dominique Devienne , pgsql-general 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: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 7/11/25 09:03, Florents Tselai wrote: > > That's an ideal use case for an extension indeed . > > @Dominique I'd suggest searching for these function on GitHub, just in > case there are already implementations out there. > I've seen a lot of weird aggregates out there for niche cases. > > If not, it might be an interesting weekend project for me to explore. The SQLite extension that incorporates these functions is here: https://sqlite.org/src/file?name=ext/misc/shathree.c&ci=tip -- Adrian Klaver adrian.klaver@aklaver.com