aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2008-08-05 21:29:01 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2008-08-05 21:29:01 +0000
commit45b8e6ed687c7a7c595d116ecb6fe898041fd7c5 (patch)
treeb1c915e581696235294cc0419976b8bd74d005bb
parent20c20dfeec4420d0c63ae29c950281cb70f64c39 (diff)
downloadpostgresql-45b8e6ed687c7a7c595d116ecb6fe898041fd7c5.tar.gz
postgresql-45b8e6ed687c7a7c595d116ecb6fe898041fd7c5.zip
Do not allow Unique nodes to be scanned backwards. The code claimed that it
would work, but in fact it didn't return the same rows when moving backwards as when moving forwards. This would have no visible effect in a DISTINCT query (at least assuming the column datatypes use a strong definition of equality), but it gave entirely wrong answers for DISTINCT ON queries.
-rw-r--r--src/backend/executor/execAmi.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/backend/executor/execAmi.c b/src/backend/executor/execAmi.c
index ca7797a37ed..6de11be5b1a 100644
--- a/src/backend/executor/execAmi.c
+++ b/src/backend/executor/execAmi.c
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.75.4.2 2004/03/02 18:56:28 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/executor/execAmi.c,v 1.75.4.3 2008/08/05 21:29:01 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -338,9 +338,6 @@ ExecSupportsBackwardScan(Plan *node)
case T_Sort:
return true;
- case T_Unique:
- return ExecSupportsBackwardScan(outerPlan(node));
-
case T_Limit:
return ExecSupportsBackwardScan(outerPlan(node));