infinite recursion detected in rules for relation "..."

Started by Sebastian Böckover 21 years ago4 messagesgeneral
Jump to latest
#1Sebastian Böck
sebastianboeck@freenet.de

Hello all,

i have a problem migrating my application from version
7.4 to 8.0. Everything is fine in 7.4 but with 8.0 i get
the following error:

infinite recursion detected in rules for relation "..."

I've been able to narrow the problem down to the
attached SQL.

I don't know wether its a bug or a "feature".

Can someone explain me this behaviour.

Thanks in advance

Sebastian

Attachments:

bug.sqltext/plain; name=bug.sqlDownload
#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Sebastian Böck (#1)
Re: infinite recursion detected in rules for relation "..."

=?ISO-8859-1?Q?Sebastian_B=F6ck?= <sebastianboeck@freenet.de> writes:

i have a problem migrating my application from version
7.4 to 8.0. Everything is fine in 7.4 but with 8.0 i get
the following error:
infinite recursion detected in rules for relation "..."

I don't know wether its a bug or a "feature".

It's a bug. Thanks for the report.

regards, tom lane

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Sebastian Böck (#1)
Re: infinite recursion detected in rules for relation "..."

=?ISO-8859-1?Q?Sebastian_B=F6ck?= <sebastianboeck@freenet.de> writes:

infinite recursion detected in rules for relation "..."

If you need a patch immediately, here it is.

*** src/backend/rewrite/rewriteHandler.c.orig	Sat Nov  6 12:46:35 2004
--- src/backend/rewrite/rewriteHandler.c	Sat Nov 20 12:47:21 2004
***************
*** 1267,1272 ****
--- 1267,1274 ----
  					newstuff = RewriteQuery(pt, rewrite_events);
  					rewritten = list_concat(rewritten, newstuff);
  				}
+ 
+ 				rewrite_events = list_delete_first(rewrite_events);
  			}
  		}

regards, tom lane

#4Sebastian Böck
sebastianboeck@freenet.de
In reply to: Tom Lane (#3)
Re: infinite recursion detected in rules for relation "..."

Tom Lane wrote:

=?ISO-8859-1?Q?Sebastian_B=F6ck?= <sebastianboeck@freenet.de> writes:

infinite recursion detected in rules for relation "..."

If you need a patch immediately, here it is.

*** src/backend/rewrite/rewriteHandler.c.orig	Sat Nov  6 12:46:35 2004
--- src/backend/rewrite/rewriteHandler.c	Sat Nov 20 12:47:21 2004
***************
*** 1267,1272 ****
--- 1267,1274 ----
newstuff = RewriteQuery(pt, rewrite_events);
rewritten = list_concat(rewritten, newstuff);
}
+ 
+ 				rewrite_events = list_delete_first(rewrite_events);
}
}

regards, tom lane

Thanks for the quick patch!
Everything is working now.

Sebastian