Re: Better management of mergejoinable operators

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: andrew(at)supernews(dot)com
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Better management of mergejoinable operators
Date: 2006-12-13 06:30:24
Message-ID: 1394.1165991424@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andrew - Supernews <andrew+nonews(at)supernews(dot)com> writes:
> On 2006-12-13, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> BTW, I think it's possible to prove that there need never be two for the
>> case of both sides the same datatype.

> Counterexample even for a single data type: define an operator x =* y
> which is true when 2x = y. This is mergejoinable using the following
> operators: SORT1 = <, SORT2 = <, LTCMP = (2x < y), RTCMP = (2x > y)
> (which is of course the same sortops as for regular =).

I think not --- the corresponding sort operators would have to be
"2x < y" etc, else the trichotomy law fails, and so do all standard
sort algorithms.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jim C. Nasby 2006-12-13 06:32:43 Re: Load distributed checkpoint
Previous Message Tom Lane 2006-12-13 05:57:06 Re: LOCK_DEBUG breaks compile in 8.2 (and possibly later)