Zhihong Yu <zyu@yugabyte.com> writes:
> On Thu, Mar 3, 2022 at 7:44 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Zhihong Yu <zyu@yugabyte.com> writes:
>>> In test output, I saw:
>>> src/backend/utils/adt/tid.c:112:16: runtime error: left shift of 65535 by
>>> 16 places cannot be represented in type 'int'
> Jenkins build is alma8-clang12-asan
Oh, I misread this as a compile-time warning, but it must be from ASAN.
Was the test case one of your own, or just our normal regression tests?
(I think the code is indeed incorrect, but I'm wondering why this hasn't
been reported before. It's been like that for a long time.)
regards, tom lane
Hi,
The Jenkins test is ported from contrib/postgres_fdw/sql/postgres_fdw.sql - so theoretically PG would see the same error for clang12 on Alma.
Here were a few lines prior to the sanitizer complaint:
ts1|pid123867|:30045 2022-03-02 01:47:57.098 UTC [124161] STATEMENT: CREATE TRIGGER trig_row_before
ts1|pid123867|:30045 BEFORE INSERT OR UPDATE OR DELETE ON rem1
ts1|pid123867|:30045 FOR EACH ROW EXECUTE PROCEDURE trigger_data(23,'skidoo');
ts1|pid123867|:30045 2022-03-02 01:47:57.106 UTC [124161] ERROR: function trigger_data() does not exist
ts1|pid123867|:30045 2022-03-02 01:47:57.106 UTC [124161] STATEMENT: CREATE TRIGGER trig_row_after
ts1|pid123867|:30045 AFTER INSERT OR UPDATE OR DELETE ON rem1
ts1|pid123867|:30045 FOR EACH ROW EXECUTE PROCEDURE trigger_data(23,'skidoo');
I think the ASAN build on Alma is able to detect errors such as this.
Cheers