mirror of
https://github.com/postgres/postgres.git
synced 2025-05-06 19:59:18 +03:00
Revert "Propagate CTE property flags when copying a CTE list into a rule."
This reverts commit ed290896335414c6c069b9ccae1f3dcdd2fac6ba and equivalent back-branch commits. The issue is subtler than I thought, and it's far from new, so just before a release deadline is no time to be fooling with it. We'll consider what to do at a bit more leisure. Discussion: https://postgr.es/m/CAJcOf-fAdj=nDKMsRhQzndm-O13NY4dL6xGcEvdX5Xvbbi0V7g@mail.gmail.com
This commit is contained in:
parent
01e3fe3275
commit
6f8e393a79
@ -511,9 +511,6 @@ rewriteRuleAction(Query *parsetree,
|
||||
*
|
||||
* This could possibly be fixed by using some sort of internally
|
||||
* generated ID, instead of names, to link CTE RTEs to their CTEs.
|
||||
* However, decompiling the results would be quite confusing; note the
|
||||
* merge of hasRecursive flags below, which could change the apparent
|
||||
* semantics of such redundantly-named CTEs.
|
||||
*/
|
||||
foreach(lc, parsetree->cteList)
|
||||
{
|
||||
@ -535,9 +532,6 @@ rewriteRuleAction(Query *parsetree,
|
||||
/* OK, it's safe to combine the CTE lists */
|
||||
sub_action->cteList = list_concat(sub_action->cteList,
|
||||
copyObject(parsetree->cteList));
|
||||
/* ... and don't forget about the associated flags */
|
||||
sub_action->hasRecursive |= parsetree->hasRecursive;
|
||||
sub_action->hasModifyingCTE |= parsetree->hasModifyingCTE;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
x
Reference in New Issue
Block a user