Re: [PATCH] backend: compare word-at-a-time in bcTruelen - Mailing list pgsql-hackers

From Marko Kreen
Subject Re: [PATCH] backend: compare word-at-a-time in bcTruelen
Date
Msg-id e51f66da0906180514i1de3b6cdvc04e5134d416c200@mail.gmail.com
Whole thread Raw
In response to Re: [PATCH] backend: compare word-at-a-time in bcTruelen  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: [PATCH] backend: compare word-at-a-time in bcTruelen
List pgsql-hackers
On 6/18/09, Simon Riggs <simon@2ndquadrant.com> wrote:
>  On Tue, 2009-06-16 at 10:23 -0400, Tom Lane wrote:
>  > Speaking of which, what about some performance numbers?  Like Heikki,
>  > I'm quite suspicious of whether there is any real-world gain to be had
>  > from this approach.
>
>
> It has been "lore" for some time that VARCHAR is cheaper than
>  VARCHAR(n), so I'm looking forward to this improvement as a real-world
>  gain. (If done right).
>
>  I've looked at the code and the thing that bothers me is that I can't
>  see where or why bcTruelen would be called more often for VARCHAR(n)
>  than it would be for VARCHAR, on a Select/Sort only workload.

I'd guess plain VARCHAR simply does not have blanks at the end,
so Truelen is cheap.

>  Are we tuning the right thing? Is there some code we can completely
>  avoid?
>
>  If not, does this mean it is a generic effect? Does this imply that
>  NUMERIC(n) is somehow worse than NUMERIC? etc..

Probably not.  For numeric the (n) seems to be only checked input time.

-- 
marko


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: [PATCH] backend: compare word-at-a-time in bcTruelen
Next
From: Simon Riggs
Date:
Subject: Re: [PATCH] backend: compare word-at-a-time in bcTruelen