Re: B-Tree support function number 3 (strxfrm() optimization)

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: Peter Geoghegan <pg(at)heroku(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>, Noah Misch <noah(at)leadboat(dot)com>, Marti Raudsepp <marti(at)juffo(dot)org>, Stephen Frost <sfrost(at)snowman(dot)net>, Greg Stark <stark(at)mit(dot)edu>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: B-Tree support function number 3 (strxfrm() optimization)
Date: 2015-01-20 03:47:02
Message-ID: CAB7nPqQ9BL_ZWfzMecMrXRDbgQPt4hj2-=xwNP0gk5U5P3FwCQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jan 20, 2015 at 11:29 AM, Peter Geoghegan <pg(at)heroku(dot)com> wrote:
> On Mon, Jan 19, 2015 at 5:59 PM, Peter Geoghegan <pg(at)heroku(dot)com> wrote:
>> On Mon, Jan 19, 2015 at 5:33 PM, Alvaro Herrera
>> <alvherre(at)2ndquadrant(dot)com> wrote:
>>> You did notice that bowerbird isn't building, right?
>>> http://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=bowerbird&dt=2015-01-19%2023%3A54%3A46
>>
>> Yeah. Looks like strxfrm_l() isn't available on the animal, for whatever reason.
>
> I think that the attached patch should at least fix that much. Maybe
> the problem on the other animal is also explained by the lack of this,
> since there could also be a MinGW-ish strxfrm_l(), I suppose.
On MinGW-32, not that I know of:
$ find . -name *.h | xgrep strxfrm_l
./lib/gcc/mingw32/4.8.1/include/c++/mingw32/bits/c++config.h:/* Define if strxfr
m_l is available in <string.h>. */
./mingw32/lib/gcc/mingw32/4.8.1/include/c++/mingw32/bits/c++config.h:/* Define i
f strxfrm_l is available in <string.h>. */
strxfrm is defined in string.h though.

With your patch applied, the failure with MSVC disappeared, but there
is still a warning showing up:
(ClCompile target) ->
src\backend\lib\hyperloglog.c(73): warning C4334: '<<' : result of
32-bit shift implicitly converted to 64 bits (was 64-bit shift
intended?
--
Michael

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message tim_wilson 2015-01-20 03:53:03 Re: Inaccuracy in VACUUM's tuple count estimates
Previous Message Amit Kapila 2015-01-20 03:41:42 Re: Merging postgresql.conf and postgresql.auto.conf