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 1wANAP-002Joe-2v for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Apr 2026 07:17:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wANAO-005imZ-14 for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Apr 2026 07:17:36 +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 1wANAO-005imR-08 for pgsql-hackers@lists.postgresql.org; Wed, 08 Apr 2026 07:17:36 +0000 Received: from mail-qv1-xf43.google.com ([2607:f8b0:4864:20::f43]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wANAM-00000001BAg-33x5 for pgsql-hackers@lists.postgresql.org; Wed, 08 Apr 2026 07:17:35 +0000 Received: by mail-qv1-xf43.google.com with SMTP id 6a1803df08f44-899a9f445cbso73587096d6.0 for ; Wed, 08 Apr 2026 00:17:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775632654; cv=none; d=google.com; s=arc-20240605; b=Ye5LFFSEJqkMAtMXJfOt8+0A/ouYF8PiA7bzE+JELiDW5Tk/iPFDQ4oS8/dJIbvDFR +EiKuqmyxKVv7CYhJQMDO8IdUI+lMbH/oS+2cayHoAx21fsZdP/j5QQLnyk5Kjm8zs5u 3I2PxZ01x4qPrFMdqHLhjDtJiKOsP9HAiE+NdjRut6JtxXUKCRfbua1wAwpKN+W8Tt+P Y6TKc8JniXawJ3yMy7QBCb0xf8hCDepuznz+Gms9EWdG118dDmiZbwt6OLR76kDeLFNN HCzhexjFQr3BxKSlkGE53woFbpHoG+XgXHcE9x5FO/iOW0zNK6aZwEYeoF7IRkxw4rgj PZbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=UJOywq0PEGjlKD5tF4D5Qaowhr0A8Pm/r8dkKHqmaz4=; fh=DxPX0sVOh1844IZyS9YUfjpswpZ0AKB7oOZcHyPtY8w=; b=GAJBFyMvKB7/MrrQ2m2nETNb0nNHc/4ff6g2URWrkiTVzlyBe3VrcHbuiWGFC+AIiu 4/WbAwSBjyZrpO1Zv+24HXxcaehiCMb3l55EMD2cx+c2Hj+FLyorS1tieTdp6rqHB50R RgESi2p6scCTWedmLqXYPLDhjxxpdRaefZnfeO+iVA/U4PmMj1MzMY+acOuKGApiySp7 KqbPaY57KyR6aRW3utSDvwP8yRRBsFMhuEgobIsOEUmVM+7B1ks/pVGGVtQWrv3EDhP9 IcfL72sGroND2Y8w8v1cCNQyeS1PoyFySP9khJj87CgV0uWSALq9JypvssDllosmXGTp z4PA==; 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=1775632654; x=1776237454; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=UJOywq0PEGjlKD5tF4D5Qaowhr0A8Pm/r8dkKHqmaz4=; b=qzAmPogipajbJdgTxYlbWu668cq7sQUJ7+manoaMfqIFK5hJSeST4dB4aouEMYNHhv lru/h9kZJtI5+v96/yMP4AqbWVTZCK+wnbDntmkmX+wY0svTgWcCMOrPPpuT4OG/O5GR B7Nf+cQ3hehE8WglN3G7lsIJXYbRDSrykQWoHoBVPymfbbIPD3izHMyd4z3jKHWtgLgW yZ7W3qaJXUv9fQfWMU60bIjaj7KwmR2p01UnbDTJFV8F2oLhCMpcU6HfZGc92yCA0xL0 uVd1E4GTh6oub7jvTNZVv417nww+6Ru903eFF79cx7r2w0hCQpH9XyHMxR/0jglPCNwl Up8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775632654; x=1776237454; h=content-transfer-encoding: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=UJOywq0PEGjlKD5tF4D5Qaowhr0A8Pm/r8dkKHqmaz4=; b=KbQ6Kfd4vzCNQwb6awW1Iy8MhcC/PvOuVBHZ8eqXaayJ6RHcR6qmMisM8LCh4DrWrC +JaNLhxnugbxMd+tZCaEpphChdxMeHTqnoJxiQ0M+CVKhxC+m4GUfZ+3oP2ksHSvcJAW edBIJ6QnlBvsVR95gfhdgSIbjjWepqZjZcsgA1w9BCvugctEEP2zC+xjRi37iXmQsAQ8 pamn1zCd5mXr2Mjilk4jcgbdsaObilxDI9fDVsJZg7pP4NhNdU+W3Tn3h+SBNfW7CElT Sa7fT9rGaYVwHPobSYdRmzxUQvIVbzRtoSgLaFrjn+mNqIGfXg0hGXWRyh8lBEQPDZ28 Nt2Q== X-Forwarded-Encrypted: i=1; AJvYcCUp78kUeKVeM15iLluPQfwoh2pZY6bLTr1DPmujCB/y8GFe4uvt6pPXYCr1tn7TdxxillTo1qvscBVqXGRP@lists.postgresql.org X-Gm-Message-State: AOJu0Yy02GClHQrIeJG+XWcDoUxZ+FybrvdXpTzvSsuz79g8mPcfkRg8 qSYeCAEIsH8e6cHwl4dcdH8zdGkuGxYvWIVBmHlrzVAFCvtjJLr/kf/QK6dL4eVVA3OfWJPJqlu zqD44ecd2dnvalmTdpCZ7rmy4apVnR9Y= X-Gm-Gg: AeBDieuB6NzIi3Nh/zYud9ZP8WKQmRiM9H+FBnnccf0mAIKsWDR6DfsgqHfLTGijOH7 RNpzF09FrkB5EN/JoPvl8uMV5a4xihtc9T/OG8NF1oCSyZUM5qLH/+EiM3pyLtzljf63HPPfSrf bA62YylH94g9R8I31hinTKXputUA6150jUpkYPcbNMXLPiLjx7nnbF5oEt7RvekSBHOcZAuuTcm YJGneFekFp9goLTDFTE4fzC7VZ19LrAs2RB0Z7kVGA2lR5ozcXMrKWsmIUJz32K+phpeZK6GJRZ QuaphTjB8ESCqf/+tyS3BGE7ksSBTFOjzQKpagJ5iyi8G83TXA+dk1i70AuZtrO+3t4Tr4xmYCW uTaECU/YDNklAHBTtKkwSeUZkbiQ= X-Received: by 2002:a05:6214:800c:b0:89c:8667:5c07 with SMTP id 6a1803df08f44-8a703075031mr302849676d6.26.1775632653951; Wed, 08 Apr 2026 00:17:33 -0700 (PDT) MIME-Version: 1.0 References: <269A8FB9-6D43-43CF-A6FE-52D28CBDB8A9@Outlook.com> <606C775A-4C1A-482B-BE7D-2E7A46AE14B9@gmail.com> <9D3D4647-868B-4562-B382-D201478AD67B@gmail.com> <54659731-2232-4E74-9533-D136D01B153F@gmail.com> In-Reply-To: From: John Naylor Date: Wed, 8 Apr 2026 14:17:22 +0700 X-Gm-Features: AQROBzDwo5YAiKuckb-C_zleE-GpIaWsn8YpxWdIBopOMCLcbHQdmsakxvHzXeE Message-ID: Subject: Re: tuple radix sort To: cca5507 Cc: zengman , pgsql-hackers Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Wed, Apr 1, 2026 at 4:27=E2=80=AFPM cca5507 wrote: > > Hi John, > > How about adding an assertion here: > + Assert(next_level > level); > + Good idea. I also thought we should change this cast: if (ssup->comparator =3D=3D ssup_datum_signed_cmp) { - norm_datum1 =3D orig + ((uint64) PG_INT64_MAX) + 1; + norm_datum1 =3D orig + (Int64GetDatum(PG_INT64_MAX)) + 1; } Upthread you mention something else about treating Datum as an integer, but I'm not sure if this is what you meant since you didn't say. If you have concrete suggestions, feel free to share them. -- John Naylor Amazon Web Services