Re: Union test case broken in make check?

From: Kenneth Marshall <ktm(at)rice(dot)edu>
To: Emmanuel Cecchet <manu(at)asterdata(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Emmanuel Cecchet <Emmanuel(dot)Cecchet(at)asterdata(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Union test case broken in make check?
Date: 2009-11-20 02:27:45
Message-ID: 20091120022745.GA2953@it.is.rice.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Without an order by, the order is not defined. The answers are the
same but the test gives a false failure because of the lack of
ordering.

Regards,
Ken

On Thu, Nov 19, 2009 at 07:54:30PM -0500, Emmanuel Cecchet wrote:
> Tom Lane wrote:
>> Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
>>
>>> Emmanuel Cecchet wrote:
>>>
>>>> Is it just me or the union test case fails in CVS head?
>>>>
>>
>>
>>> The buildfarm is pretty much all green:
>>> <http://www.pgbuildfarm.org/cgi-bin/show_status.pl>
>>> So it looks like it's you :-)
>>>
>>
>> When in doubt, try "make distclean" and a full rebuild before assuming
>> you've got a problem worth tracking down ...
>>
> Well, I did:
> 1. make distclean
> 2. configure with CFLAGS=-O0 --enable-cassert --enable-debug --without-perl
> --without-python --without-tcl --without-openssl
> 3. make (everything normal)
> 4. make check
> And it still fails for me. I am attaching my regression.diffs if someone
> thinks it is worth tracking down ...
>
> Emmanuel

> *** /home/manu/workspace/PG-HEAD/src/test/regress/expected/union.out 2009-02-09 16:18:28.000000000 -0500
> --- /home/manu/workspace/PG-HEAD/src/test/regress/results/union.out 2009-11-19 19:37:32.000000000 -0500
> ***************
> *** 198,208 ****
> WHERE f1 BETWEEN 0 AND 1000000;
> five
> -----------------------
> - -1004.3
> - -34.84
> - -1.2345678901234e-200
> 0
> 123456
> (5 rows)
>
> SELECT CAST(f1 AS char(4)) AS three FROM VARCHAR_TBL
> --- 198,208 ----
> WHERE f1 BETWEEN 0 AND 1000000;
> five
> -----------------------
> 0
> 123456
> + -34.84
> + -1.2345678901234e-200
> + -1004.3
> (5 rows)
>
> SELECT CAST(f1 AS char(4)) AS three FROM VARCHAR_TBL
> ***************
> *** 263,278 ****
> SELECT q2 FROM int8_tbl INTERSECT SELECT q1 FROM int8_tbl;
> q2
> ------------------
> - 4567890123456789
> 123
> (2 rows)
>
> SELECT q2 FROM int8_tbl INTERSECT ALL SELECT q1 FROM int8_tbl;
> q2
> ------------------
> 4567890123456789
> 4567890123456789
> - 123
> (3 rows)
>
> SELECT q2 FROM int8_tbl EXCEPT SELECT q1 FROM int8_tbl ORDER BY 1;
> --- 263,278 ----
> SELECT q2 FROM int8_tbl INTERSECT SELECT q1 FROM int8_tbl;
> q2
> ------------------
> 123
> + 4567890123456789
> (2 rows)
>
> SELECT q2 FROM int8_tbl INTERSECT ALL SELECT q1 FROM int8_tbl;
> q2
> ------------------
> + 123
> 4567890123456789
> 4567890123456789
> (3 rows)
>
> SELECT q2 FROM int8_tbl EXCEPT SELECT q1 FROM int8_tbl ORDER BY 1;
> ***************
> *** 305,320 ****
> SELECT q1 FROM int8_tbl EXCEPT ALL SELECT q2 FROM int8_tbl;
> q1
> ------------------
> - 4567890123456789
> 123
> (2 rows)
>
> SELECT q1 FROM int8_tbl EXCEPT ALL SELECT DISTINCT q2 FROM int8_tbl;
> q1
> ------------------
> 4567890123456789
> 4567890123456789
> - 123
> (3 rows)
>
> --
> --- 305,320 ----
> SELECT q1 FROM int8_tbl EXCEPT ALL SELECT q2 FROM int8_tbl;
> q1
> ------------------
> 123
> + 4567890123456789
> (2 rows)
>
> SELECT q1 FROM int8_tbl EXCEPT ALL SELECT DISTINCT q2 FROM int8_tbl;
> q1
> ------------------
> + 123
> 4567890123456789
> 4567890123456789
> (3 rows)
>
> --
> ***************
> *** 341,348 ****
> SELECT q1 FROM int8_tbl INTERSECT SELECT q2 FROM int8_tbl UNION ALL SELECT q2 FROM int8_tbl;
> q1
> -------------------
> - 4567890123456789
> 123
> 456
> 4567890123456789
> 123
> --- 341,348 ----
> SELECT q1 FROM int8_tbl INTERSECT SELECT q2 FROM int8_tbl UNION ALL SELECT q2 FROM int8_tbl;
> q1
> -------------------
> 123
> + 4567890123456789
> 456
> 4567890123456789
> 123
> ***************
> *** 353,367 ****
> SELECT q1 FROM int8_tbl INTERSECT (((SELECT q2 FROM int8_tbl UNION ALL SELECT q2 FROM int8_tbl)));
> q1
> ------------------
> - 4567890123456789
> 123
> (2 rows)
>
> (((SELECT q1 FROM int8_tbl INTERSECT SELECT q2 FROM int8_tbl))) UNION ALL SELECT q2 FROM int8_tbl;
> q1
> -------------------
> - 4567890123456789
> 123
> 456
> 4567890123456789
> 123
> --- 353,367 ----
> SELECT q1 FROM int8_tbl INTERSECT (((SELECT q2 FROM int8_tbl UNION ALL SELECT q2 FROM int8_tbl)));
> q1
> ------------------
> 123
> + 4567890123456789
> (2 rows)
>
> (((SELECT q1 FROM int8_tbl INTERSECT SELECT q2 FROM int8_tbl))) UNION ALL SELECT q2 FROM int8_tbl;
> q1
> -------------------
> 123
> + 4567890123456789
> 456
> 4567890123456789
> 123
> ***************
> *** 416,423 ****
> SELECT q1 FROM int8_tbl EXCEPT (((SELECT q2 FROM int8_tbl ORDER BY q2 LIMIT 1)));
> q1
> ------------------
> - 4567890123456789
> 123
> (2 rows)
>
> --
> --- 416,423 ----
> SELECT q1 FROM int8_tbl EXCEPT (((SELECT q2 FROM int8_tbl ORDER BY q2 LIMIT 1)));
> q1
> ------------------
> 123
> + 4567890123456789
> (2 rows)
>
> --
>
> ======================================================================
>

>
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Emmanuel Cecchet 2009-11-20 02:52:55 Re: Union test case broken in make check?
Previous Message Florian G. Pflug 2009-11-20 02:21:34 column DEFAULTs and prepared statements