Re: PL/R regression on windows, but not linux with master. - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: PL/R regression on windows, but not linux with master.
Date
Msg-id c1bf8d44-aee9-6f5a-7207-757b835956fc@dunslane.net
Whole thread Raw
In response to Re: PL/R regression on windows, but not linux with master.  (Tomas Vondra <tomas.vondra@enterprisedb.com>)
Responses Re: PL/R regression on windows, but not linux with master.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On 4/10/21 8:56 PM, Tomas Vondra wrote:
> On 4/11/21 2:38 AM, Dave Cramer wrote:
>>
>>
>>
>> On Sat, 10 Apr 2021 at 20:34, Tom Lane <tgl@sss.pgh.pa.us
>> <mailto:tgl@sss.pgh.pa.us>> wrote:
>>
>>     Dave Cramer <davecramer@gmail.com <mailto:davecramer@gmail.com>> writes:
>>     > On Sat, 10 Apr 2021 at 20:24, Tom Lane <tgl@sss.pgh.pa.us
>>     <mailto:tgl@sss.pgh.pa.us>> wrote:
>>     >> That's quite bizarre.  What is the actual error level according to
>>     >> the source code, and where is the error being thrown exactly?
>>
>>     > Well it really is an ERROR, and is being downgraded on windows to
>>     WARNING.
>>
>>     That seems quite awful.
>>
>>     However, now that I think about it, the elog.h error-level constants
>>     were renumbered not so long ago.  Maybe you've failed to recompile
>>     everything for v14?
>>
>>
>> We see this on a CI with a fresh pull from master.
>>
>> As I said I will dig into it and figure it out. 
>>
> Well, plr.h does this:
>
> #define WARNING        19
> #define ERROR        20
>
> which seems a bit weird, because elog.h does this (since 1f9158ba481):
>
> #define WARNING        19
> #define WARNING_CLIENT_ONLY    20
> #define ERROR        21
>
> Not sure why this would break Windows but not Linux, though.
>
>


The coding pattern in plr.h looks quite breakable. Instead of hard
coding values like this they should save the value from the postgres
headers in another variable before undefining it and then restore that
value after inclusion of the R headers. That would work across versions
even if we renumber them.


cheers


andrew

-- 

Andrew Dunstan
EDB: https://www.enterprisedb.com




pgsql-hackers by date:

Previous
From: Rémi Lapeyre
Date:
Subject: Re: Add header support to text format and matching feature
Next
From: Zhihong Yu
Date:
Subject: Re: Add header support to text format and matching feature