From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | Ashutosh Sharma <ashu(dot)coek88(at)gmail(dot)com>, Sandeep Thakkar <sandeep(dot)thakkar(at)enterprisedb(dot)com>, Christoph Berg <myon(at)debian(dot)org>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: pl/perl extension fails on Windows |
Date: | 2017-08-10 15:22:01 |
Message-ID: | 14268.1502378521@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> On Thu, Aug 10, 2017 at 10:36 AM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> Yeah ... however, if that's there, then there's something wrong with
>> Ashutosh's explanation, because that means we *are* building with
>> _USE_32BIT_TIME_T in 32-bit builds. It's just getting there in a
>> roundabout way. (Or, alternatively, this code is somehow not doing
>> anything at all.)
> I don't follow.
The stanzas you pointed to in the MSVC build scripts should mean that
a 32-bit PG build is using _USE_32BIT_TIME_T, no? And Ashutosh stated
that he saw _USE_32BIT_TIME_T in "perl -V" output. So how are they
not ending up compatible?
Now, if that statement was wrong and his 32-bit Perl actually *isn't*
built with _USE_32BIT_TIME_T, then this is clearly what's causing the
problem.
>> Really? We try to avoid touching "time_t" at all in most of the code.
>> I bet that we could drop the above-cited code, and compile only plperl
>> with _USE_32BIT_TIME_T, taken (if present) from the Perl flags, and
>> it'd be fine. At least, that's my first instinct for what to try.
> Oh. Well, if that's an OK thing to do, then sure, wfm. I guess we've
> got pg_time_t plastered all over the backend but that's not actually
> time_t under the hood, so it's fine. I do see time_t being used in
> frontend code, but that won't matter for this.
Yeah. I think this should work as long as plperl itself doesn't use
time_t, or at least doesn't exchange time_t with any other part of the
system, and since we don't use that type in any common APIs that seems
like an OK assumption.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Ashutosh Sharma | 2017-08-10 15:23:33 | Re: pl/perl extension fails on Windows |
Previous Message | Amit Kapila | 2017-08-10 15:18:23 | Re: parallelize queries containing initplans |