Re: PsqlODBC slow on UNION queries

From: Zoltan Boszormenyi <zboszor(at)dunaweb(dot)hu>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: PsqlODBC slow on UNION queries
Date: 2006-01-09 06:13:03
Message-ID: 43C1FEEF.5060107@dunaweb.hu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Tom Lane írta:

>Zoltan Boszormenyi <zboszor(at)dunaweb(dot)hu> writes:
>
>
>>We have some large views, consisting of 6+ UNION members.
>>Recently, I rewrote them to use UNION ALL, since the members
>>give distinct rows across the whole view.
>>
>>
>
>
>
>>The performance difference between the two is enormous, e.g. using UNION,
>>the rows starts flowing only after 30-32 seconds but when using UNION ALL,
>>it starts instantly.
>>
>>
>
>Well, UNION requires fetching all the source rows and then doing a
>duplicate-elimination step (sort+uniq basically). Why does the
>performance change surprise you?
>
> regards, tom lane
>
>

Well, as I said, doing the same test from PSQL, the performance
difference is much less. I was really asking about the difference
between psql and PsqlODBC:

psql(output to file) psqlodbc
UNION total time: < 12 sec first row received after
30 seconds
UNION ALL total time < 4 sec first row received instantly

My question is, why does PsqlODBC does the same unique
seach again, when the server already did it? Only this would explain
the difference between the psql and PsqlODBC timings.

Best regards,
Zoltán Böszörményi

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message zhaoxin 2006-01-09 06:16:22 Output parameter isn't available ???
Previous Message Zoltan Boszormenyi 2006-01-09 05:44:42 PsqlODBC slow on UNION queries