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 1w2U13-000KT5-2t for pgsql-bugs@arkaria.postgresql.org; Tue, 17 Mar 2026 12:59:22 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w2U12-001NQ6-2V for pgsql-bugs@arkaria.postgresql.org; Tue, 17 Mar 2026 12:59:20 +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.96) (envelope-from ) id 1w2U12-001NPx-1f for pgsql-bugs@lists.postgresql.org; Tue, 17 Mar 2026 12:59:20 +0000 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w2U10-00000000bZs-0Q3u for pgsql-bugs@lists.postgresql.org; Tue, 17 Mar 2026 12:59:20 +0000 Received: by mail-ej1-x62c.google.com with SMTP id a640c23a62f3a-b97b7e0368eso320699366b.3 for ; Tue, 17 Mar 2026 05:59:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1773752356; cv=none; d=google.com; s=arc-20240605; b=bH0kcgjl/nTk0r9GOBJTnS3BL5U0vt4Te/GUqnNJON+Jw9wRHuc2KvzBGtiwknmLLU 9VWZF/76za2Wch5DlQA4FHA+/CiZAln02nRpFV8IYMASHheG4BrS3xR41JXDNqvfUEsc JuSRzujlWKhMG80RCDxr3HE1T4ZwAdlOOBbVMrefH+WSd3y8kppxbfEGg42DF1EAGQlM rBKErjHMaOUdA+YkRmowIGya0FghiG+LFtRRS+qEfFCYawy9lM6/RBT8Zxo/2nRhSdvG x6X5FZXHWw4zC+a88PQFHv5K7plM5cqIELaEQ3Pb5ItBCaOc1df7+8aF7BGSvK/IYl2d sxmQ== 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=0lCCqgfV+j/CFaHs4ObASxa4hqYEh/Ikj8QLpBemtCI=; fh=kPVfyHnmp0A8rTLjNxpnpOgKJHqjfLZ8MQkbcOlf4Fk=; b=jHVhmvSaGmU1wkUFZDrWCCPjB06FhssfdQdjqh7pqZNjGzL3XWbtpLJXVLjc9a9bGk OBen0gxWn3iSLtOYRtjZxY30prdN8nNEf4kzgKXux0OzsU9tOWI4blA3Q7J1fVGGqq8j 0R40GqbW1FI0s37pxtJtMsrTGx5B7sue/qOrr8KIMuXeSJOgfCJ0CkUXIS4EyBpGbjHX qVqox18KU9V9/1zDVbuzRDubs6Ud20C6TxsP6WxV+T6uPKZwtra3fjHg1oamydXRNCHH wUYWGzMHNBEZml/rxwST0Pmg1oCC9gJY5zSm8dprcHvqJ+awTI9qRXz/DoXpBsi7MRUC CCIg==; 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=20230601; t=1773752356; x=1774357156; 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=0lCCqgfV+j/CFaHs4ObASxa4hqYEh/Ikj8QLpBemtCI=; b=ka+EE5uvr/W4Xxc2DQ9rlSge/JVz7y+Phhl9+J8027gQ32ax7C2XhaH3/b9vZhnBzU 0zh40FgbogJBvYJu8WhUFzPXhHdsc6UM6ozzQai+/st+TsAtQA01MgAYMEOL69DYvzIb 07dsN3P/L4jsOcPoD/JUpbBvrjn3uOc1+6uruI8YRSESJgqmEVW7iTe/GuzJvaqFSdYP kmpbkcO8mMLqkdBs1h3agSRaKIdEEQLCg5pe16qTw84n91I9JcOzj7Ggif2IWTW7JqE3 g4UqcRPAslYyGhmr9Eo38Znwk1CDq878ftTpJ1HJlisPKG2kmuTddtkh1J9Hu1a2sBmm o08Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773752356; x=1774357156; 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=0lCCqgfV+j/CFaHs4ObASxa4hqYEh/Ikj8QLpBemtCI=; b=ijMDrm2FNrQrCMJ0nSySS0RLlkaiMz5esLDzB7cqL/cEY8wdxqGKcK3kj85iq8ACN7 uoCHOkYlHQ9UvRnvv36yzDSe14g7fe2mxMkYH8uBL4VgVfRgiJpLmeTx+ULMK4w8gRAH oT0KLO+lchlxnvd4RTEsDfCmx7pLpOB6cmW21ssl9s0J7VaZ8qjUREluCjogOsvl6kA4 4DLXzONf4YAikgJHli2+PEpAQzHyLR+3oeFrI81OdA7imduV0wj5yc998dH+58A2l6Pz 49xozOFIQKAVQwIPowRXeVAd4DYm4T5gGY10ebuGsabAfIUN4otzPJ/SgY6AzBeu03Gb d81w== X-Forwarded-Encrypted: i=1; AJvYcCVLydVXk71hPRPzs2VAm6u8f6aZni5Tk8t+jlvgi1DBq681NBfMToYIzwCydjbF9xwA/+vk0uUG2T6u@lists.postgresql.org X-Gm-Message-State: AOJu0Yxbdw0NdN66Ohy6XRvJEj905B9CrW737eAgDzdQ2SIhYrsLk3/Q 23ftATbXNbAtXME5G7OTiXh0yslzT8xtbshq8ba13yRdznPpmy/x9ENvaqtOM1hd1gI4XGZa3z0 0YW0qZ2mVZCTClf5py4rwS2UDbSRGUpc= X-Gm-Gg: ATEYQzyihPEvxR/t8ntRpLniw/9FgKHfz22LTFtiDUzjuyY3VJe2h7m71i77PPXFjQi uHmDQdDeLGFNyj2qbuUFhkoP8BnDiV37r+cw1lFACa6VYv2SpLdFwwAvejUCTX+TMFYp/yr++Iv 4SCO/BWTmQcGxpzMbQZ02Uta0bo0oBrjwCwqEZKNKF1RqU355Hm8RUoAr6hURg/ZFIqf1UFmO2r ct2XxYQGsLurgypBRme0dXVd2wFiOjf1LCUCZUNIVTTkJnSzuzh/VsnTdVlkyy5NG3WPwR8PSI1 sMLyQygQ X-Received: by 2002:a17:906:a14e:b0:b96:eee1:bb66 with SMTP id a640c23a62f3a-b9764fc9b73mr919288666b.10.1773752356230; Tue, 17 Mar 2026 05:59:16 -0700 (PDT) MIME-Version: 1.0 References: <19435-3cc1a87f291129f1@postgresql.org> In-Reply-To: From: Tender Wang Date: Tue, 17 Mar 2026 20:59:04 +0800 X-Gm-Features: AaiRm52M-Leq7R64TaSu3G0980yoWQdmJfTEXpZBb45B-K3VYR2m4R3apuJGCXs Message-ID: Subject: Re: BUG #19435: Error: "No relation entry for relid 2" Triggered by Complex Join with Self-Referencing Tables To: Alexander Korotkov Cc: Fujii Masao , ammmkilo@163.com, pgsql-bugs@lists.postgresql.org 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 Alexander Korotkov =E4=BA=8E2026=E5=B9=B43=E6=9C=881= 7=E6=97=A5=E5=91=A8=E4=BA=8C 20:26=E5=86=99=E9=81=93=EF=BC=9A > > On Tue, Mar 17, 2026 at 2:14=E2=80=AFPM Fujii Masao wrote: > > > > On Tue, Mar 17, 2026 at 7:34=E2=80=AFPM PG Bug reporting form > > wrote: > > > > > > The following bug has been logged on the website: > > > > > > Bug reference: 19435 > > > Logged by: Hang ammmkilo > > > Email address: ammmkilo@163.com > > > PostgreSQL version: 18.3 > > > Operating system: Ubuntu 22.04 > > > Description: > > > > > > A user encountered an error when attempting to execute a query involv= ing > > > multiple RIGHT JOIN operations and a NATURAL JOIN on the same table > > > (pg_table_a). The error message returned was: > > > [XX000]ERROR: no relation entry for relid 2 > > > This error seems to be an internal one and should not be triggered by= users. > > > It might be a bug. > > > ```sql > > > DROP TABLE IF EXISTS pg_table_a; > > > > > > CREATE TABLE pg_table_a ( > > > id INTEGER PRIMARY KEY, > > > col_bool BOOLEAN > > > ); > > > > > > INSERT INTO pg_table_a (id, col_bool) > > > VALUES (5, TRUE); > > > > > > SELECT 1 AS c1 > > > FROM ( > > > pg_table_a AS tom0 > > > RIGHT JOIN ( > > > (pg_table_a AS tom1 NATURAL JOIN pg_table_a AS tom2) > > > RIGHT JOIN pg_table_a AS tom3 > > > ON tom1.col_bool IS NOT NULL > > > ) > > > ON tom1.col_bool > > > ); > > > ``` > > > > Thanks for the report! > > > > I was able to reproduce this issue on the master. git bisect that I ran= pointed > > to commit fc069a3a631 as the likely cause. So I've CC'd its committer, > > Alexander, on this thread. > > Thank you for adding me to the thread. I'm lookin at this. The error was reported in rebuild_joinclause_attr_needed() when processing Relid =3D 1(rtindex =3D1), When processing its joininfo" ON tom1.col_bool IS NOT NULL", (gdb) pgprint rinfo->clause Var [varno=3D2 varattno=3D2 vartype=3D16 varreturningtype=3DVAR_RETURNING_DEFAULT varnosyn=3D2 varattnosyn=3D2] The varno=3D2, rtindex=3D2(tom1) has been removed. In add_vars_to_attr_needed(), to find the base_rel, but the root->simple_rel_array[2] is NULL. So the error is reporting. It seems the joininfo should be replaced by rtindex =3D 3, because the rtindex=3D2 would be removed. --=20 Thanks, Tender Wang