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 1w5W8G-003KUv-2W for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Mar 2026 21:51:20 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w5W8F-00GkU7-0S for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Mar 2026 21:51:19 +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 1w5W8E-00GkTx-2d for pgsql-hackers@lists.postgresql.org; Wed, 25 Mar 2026 21:51:19 +0000 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w5W8D-000000012J7-1v1V for pgsql-hackers@lists.postgresql.org; Wed, 25 Mar 2026 21:51:18 +0000 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-4852b81c73aso3184005e9.3 for ; Wed, 25 Mar 2026 14:51:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774475475; cv=none; d=google.com; s=arc-20240605; b=jmkk/gdcJZsMhcx3X76I2M+3WwqMHBFajfB9w+yULagrpD0tCE6+/fNzUldIOCLN0e VeCoC3LMvG4L05P4x9HBWXszZIms5zvOqoFVTrXcLh+Ol7Y3e5HGEqBrUBv1sJz7t/rU lbOCkqXcilCSzzPQoLPXvKMXTdAKZLxyYzQcEI4UKKCFP1BD32iY5qoeKRP8pPGh5m3S qT1amj75es8Y9XdqQ3Nzr/XU7pKcwUfhZNZy3m0KEMTBIzY4J+TflSzyrEc79rc/FeIg ihw0iRHYb/82/ZK99Fs+3a5n7kKrSh5vs8e4/i7Iw7j0SWDTtExblgVEU/B7oMtAyYjO fcZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=FZNgBTsfLALM33uaH387E4AIWtyp6nc3XxPngPmWrEA=; fh=+6ptbWzX9HM6w9Oy6AQNtqAJM+wz+f8vvv6Q/x3Zrgk=; b=BwCS/7hq12+3WTJSvCP99yOj8KE2kIrjB3sJFY+Hbk/15V4izBHbrFAXCaZz5tXQAy yMaFd0yOILN2eAHYZV210z0lPk6BRDoxi7qkCIXth1HzwFCf6Ytippj+UP30VS+Q9ScV ehCgZvh9ap25YlbUpYAr4qHkfjfKQoQcrSc9yk2uN+DUhxpeWNCbHS+wxOFqTygNDVv7 F+TjsCdkQeX8+0jxtD1xmHm9K+b+jqH50hjXVGiY1WrbEW1+wOqAEgA+lJRKhzMw1swn JnKABtddBkO0vBU4SFjgApe2IQ3HHVZjIOl8pSmY2OVTmjRyz00fVsuP8PSXsTOsUMr3 ZLsg==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774475475; x=1775080275; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=FZNgBTsfLALM33uaH387E4AIWtyp6nc3XxPngPmWrEA=; b=ao1OMlIi3HPWJpMr8AdLNzjDseqN42NBTWtaPobd/UV1etgovUvItCLlnIAQLiMxEF ymEEb8qBKldUDxT+xHqfHXoyFMJ2w3e6GApksSg3QjFEwXlxevokYNZ0JCxDUEKfBy55 3vl0y0K/0fg4M4sc30ss41bWY1Y3mn77Wn26Ps4g1vi+ubV3qWJXr42h2J/kL5sgaaat rUyFfws3/nBCPqOhi31X029UgLUF0OyaMcU2u1KKVWH/IxOK070dvZDzw2cnDFqKecYu 0wwHWBzuKIK2iRtwp4EwcSGRf8nSHf5OT6mNt1Z/VA6mD2RHxEy5PUVOqYxLRqrHwQNQ C6Vg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774475475; x=1775080275; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=FZNgBTsfLALM33uaH387E4AIWtyp6nc3XxPngPmWrEA=; b=Svl4ydVnppilyA6aiVBci2hI0IZ3Q11lh/zOfUFTpNfKxm4bWI3Do9+K6SPg0j6F2p A1Rk0QVauYSm0sbPvMN0EaqxAeEvIix9sZylzqmw8Fns/0SdRYKGmqwtbZGhwBSVjK7q 25Kp94RJF+NaLVTkZVP/s/MUBhUxpLXGl5PCDLxkt43253O58THNQI1mQz3MLuHixAJp IYsawPwzb9CLsBmZ/pmveqWULCWqJpPUwZcycVRrDTKSkkYGcVD4S0LHqKxEXdDwwz4R sfD6eIPq0CiFOnJ1MdSh+QKAMpmrOKp9bPuGTfGA6NfJbu988sVpsHW0Lt8fzwXm/iBY K1wA== X-Forwarded-Encrypted: i=1; AJvYcCVehDhSzN4r35G0rFVAvKRLvnaUDGmlVAwK+2EHlDNLSgMvBVzx45JY1OUFCUjOvoVC9u5Wea24ESfg9o2r@lists.postgresql.org X-Gm-Message-State: AOJu0YyoWOmMwR1W5joN/DNBgmzc7lvrnKOvICjGLGAFp1AEWBfr3mSC mL/WSUvpY2JZ+dBa8a5sXojpKsuQerGIaHs5LPLqZutrRuyS6gRjJe1jrWVf6Mbf4H/LX3Ig5It 7lOBH7r8J9BzAOyYqifZLO0pLxjSUy054Nw== X-Gm-Gg: ATEYQzwQlc8Kn9XSx8LsBZjHznOBsfPdHG2Du8Ip9NLBRsxnwiq1HNYwPDtJ8kTHe6p EoFC0pmQimXVLACQS3lKbxdwXu937EOVQavqO3ACrW57vfLpQmi7YFC61LKF/MjLFjUAVLfgu/p Cnm1Z7KSiIcqVMaJE0gb6MjzCWVnDGVbJAawibNUZ6CjN2ZMsupkebn63jRgcRWyNMO8xXrL/K9 Y7EHe/3YdpZ/kdgWpG5+HrS4AGWjL+YJEGLYqpOXZNj34AcTSk+yP9zUFQ6NzMM2C8v2AAELDNr dqsLTaujahwlIDsqWs/uhoKluYB9Z3kvgcr8TCZ2q3DevlR7yIr1rVuTX0bTzTAyi8JvUGnA X-Received: by 2002:a05:600c:8711:b0:486:ffa3:584 with SMTP id 5b1f17b1804b1-48715febb55mr86186815e9.15.1774475474242; Wed, 25 Mar 2026 14:51:14 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: David Rowley Date: Thu, 26 Mar 2026 10:51:02 +1300 X-Gm-Features: AQROBzCQ8fY4Yiu155u0K9UsqKt1HpccdoVbrkFN33PgR0xcfsEeECUSkiJaZtM Message-ID: Subject: Re: SQL-level pg_datum_image_equal To: Matthias van de Meent Cc: jian he , PostgreSQL Hackers Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Thu, 26 Mar 2026 at 10:25, Matthias van de Meent wrote: > I'm happy to mark this function as STABLE for now (to prevent its > inclusion in permanent storage), and/or to adjust the code to adjust > for subnormal inputs (values with incorrect/inconsistent/unexpected > sign extensions). You lost me at this part. How does marking the function as STABLE prevent users from persisting things on disk based on the return value of the function? I expected the primary use case for this would be in trigger functions that make decisions about data that goes into tables. David