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 1wE2k2-003bXO-33 for pgsql-hackers@arkaria.postgresql.org; Sat, 18 Apr 2026 10:17:35 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wE2k2-00ClUP-0F for pgsql-hackers@arkaria.postgresql.org; Sat, 18 Apr 2026 10:17:34 +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 1wE2k1-00ClUG-2O for pgsql-hackers@lists.postgresql.org; Sat, 18 Apr 2026 10:17:33 +0000 Received: from mail-ot1-x32a.google.com ([2607:f8b0:4864:20::32a]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wE2jz-00000001bop-36fp for pgsql-hackers@lists.postgresql.org; Sat, 18 Apr 2026 10:17:32 +0000 Received: by mail-ot1-x32a.google.com with SMTP id 46e09a7af769-7dbba5076c8so815827a34.0 for ; Sat, 18 Apr 2026 03:17:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776507451; cv=none; d=google.com; s=arc-20240605; b=GzykzdhyiKL736hmM8JVt1153QzkuBwiwHLNhuJTv8ntvlWNA5FsmOLFgYuEhIrC7o hy7Sz8QztPm75vgOmsZQbgMR0nURSfmKF5Zmspz6SWXdNJjnWuqViq+rz3o6uGvIooeS wZRRIHkvfu8/3dZsZm0vhpZE/KND2deWVHglb1UxtVA/kJlS4Zo3WTDjYITTHaTAHMSD XGqgGiC6NH3zZjF4ZpXaBt0fJ5nlhJrjnvKu3VCPNuJ+FRHmLsGov3ojmEiBlgKlKF2I K93un6TO+uNG3FmAxb9kErVAumA/oG4hXvpVo/bjI1FRJnYEzWF9kTmszOuOsXFantjN D7cQ== 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=FeCQxml7hiP8FkA6fWjldCbs5I84V8uoD+kROmOlJSc=; fh=EuTZuoz6LLhsbFycISt4S3a1HSXQFaBvgalbKOBmWUg=; b=XT4JlKLNy++wfTYLdwD9J/LUB4uDfkN2W71gXapjosXBL+h23NG+M3x5GE2cuGX+M3 yDiKPXU5gOvYpiX50HjevB/vzQ6AzIOAYSUULQnmJx2Rn2dvUqj2UIagysOPoAskNhtK snApvv8CZnw457cZsp7ol8BlPFdUSKcvo0dEAd2xHq7QXl5n6RHh9wPwUO7rE6AqAPNt zuNRXyF+PkbpmhlPJ7FVwg55Mrswr2mQ7SD0iA7luSkPZr1YlXMypHtzaaw31XNHU1vv LkeQ5VVQqY9McmdxjpN/85EkwFaVrxa1sPPaiQ8wBJBwODRVkrMZiBES5s0sh8GS42sy rtaA==; 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=1776507451; x=1777112251; 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=FeCQxml7hiP8FkA6fWjldCbs5I84V8uoD+kROmOlJSc=; b=F0/F5wK68a8NKvdgphkSqKFhHUsiYEsr8v2Ghm6wUFiZQU7u/MSScZFRQKKqEaKM+W 6Ogbpozxn5osKjiYrH61iPJHAOFpJrClWAJA/hu6blUtJwOM8LFKBYzoaWN/P9qlTYMb s0RVKB5SJFukKrNXmlbgaG5ZNwPuyh1iQ5P5CbLcX+rEfwgdHXvyg7F23sa1hqu/goYE vlq5sPddZzpTFdc+nh8yw0Mi3qoKpO73YgG1zB8bAbGhJNiJfWMJpghBqTvMUNNXOi2z rLo+8BvdQtlyFl1G5qlS4eRyZ5OXa7uXQqx71Ar+3tjaN38eMjKfU7F6xeYZisKu2SzH emtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776507451; x=1777112251; 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=FeCQxml7hiP8FkA6fWjldCbs5I84V8uoD+kROmOlJSc=; b=s6Y9WyLmgu6pUFR5DB9OBWm5IEhNdZF+1UEjZA6fGhRwnNn9tJGyGns3AhUFHw3p1B EDaQZr7djdPqmCo9+/q+DsY8DS1X5xY2iCBs6RdJ3RzY7x844QGIjSGUb2COAM5u66E+ yB755+o9Cci1QL/lrrxx1WBOiF4epHzs3t/BmjvEH233RlnL1+EMnzeTLiYKZ/Gb6zlv uAhrvvWbv/C071h0PuCvOQnik49Ky9kg6vhXhK+DzquGJ13SGysAoOjIQeA/Rkpr1m1u l6LmCZHcIIixz6XDPqQPmyoYKYCqJXmLnWo153r1i+S3FwFEnI1cqcbKZE6cVHzjzJai 3R3g== X-Gm-Message-State: AOJu0YwTdIQI354/lF36JGhEuw/9RvKOpkzDKFwVrOOi1xIIgegPEAVt optMbFslkbypcZmXbh6WPWoCHOvbEnAIC4S9EahjquDd+tL0lqHzy9xsffrkpWDhMY4zP3NEC4m Wp3+mTXBDga9QzKqS3qpTRYZLhpRWCRnxXIPg X-Gm-Gg: AeBDievxyaYTO7rN3yOSoNev4EuItGB+7Pm01oA+vyKLcET1NeDVGRPWgybv65jn0SY l1RgxbNEQRNR2vk9CN1A51uuWEc5nutep9R4JtZg+WnH5Ewon5GnJi8lDNJWS0eaYFE94hv43I4 f88NhLunSv1df1bxHij3M2m0HoJTuf10W4TSUaRn8PmK3N4QCq1GA2v89nQgejy6TnFZM7r45wQ htKYNAhIOTFox+mzU+bcRi6cQoU+Al+E4WJ3iDcIMBuF7OQcwkccQK1KAkzwPVRXI7jkpBLIqwK hctL8KBPHyHD0K9umZEh X-Received: by 2002:a05:6820:824:b0:683:99ad:33fd with SMTP id 006d021491bc7-69462f1926amr3360774eaf.42.1776507451307; Sat, 18 Apr 2026 03:17:31 -0700 (PDT) MIME-Version: 1.0 References: <7f6439c7-e5a7-4d0c-82c9-4087794cd9d0@gmail.com> In-Reply-To: From: Richard Guo Date: Sat, 18 Apr 2026 19:17:20 +0900 X-Gm-Features: AQROBzC1DJsWu6DGyZHC5iLPAaACjYg0Nbz39qZZSsIBwKIi9lSpmT2EM99IZmQ Message-ID: Subject: Re: Clean up remove_rel_from_query() after self-join elimination commit To: wenhui qiu Cc: Pg 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 Tue, Apr 7, 2026 at 6:57=E2=80=AFPM wenhui qiu w= rote: > Assert(!is_outer_join || joinrelids !=3D NULL); Worth asserting. If a caller sets sjinfo but passes NULL for joinrelids, this would silently over-delete PHVs. > Assert(!is_self_join || joinrelids =3D=3D NULL); I prefer to not add this one. It's not defending any invariant. - Richard