Re: ABI Compliance Checker GSoC Project

2025-06-05 Thread Álvaro Herrera
On 2025-Jun-04, Mankirat Singh wrote: > Here's the workflow I tried to compile > $ ./configure CFLAGS="-Og -g -fvisibility=hidden" > --prefix=/home/mankirat/install/REL_17_4 > $ make -j$(nproc) > > /usr/bin/ld: /home/mankirat/postgres/src/fe_utils/string_utils.c:1154: > undefined referenc

Re: ABI Compliance Checker GSoC Project

2025-06-04 Thread David E. Wheeler
On Jun 4, 2025, at 12:10, Andres Freund wrote: > No. It just makes the *name* of the struct visible. The type's definition is > in the .c file and therefore not visible outside of read_stream.c. Right, got it, thanks. David signature.asc Description: Message signed with OpenPGP

Re: ABI Compliance Checker GSoC Project

2025-06-04 Thread Andres Freund
Hi, On 2025-06-04 11:15:10 -0400, David E. Wheeler wrote: > On Jun 4, 2025, at 09:43, Álvaro Herrera wrote: > > > You mentioned ReadStream, but that's not exported. > > I this not an export at line 67? > > ``` > ❯ rg ReadStream src/include/storage/read_stream.h > > 50: * the ReadStreamBlockNu

Re: ABI Compliance Checker GSoC Project

2025-06-04 Thread Mankirat Singh
On Wed, 4 Jun 2025 at 19:13, Álvaro Herrera wrote: > > On Tue, 3 Jun 2025 at 23:50, David E. Wheeler wrote: > > > What’s the error? Maybe we can fix it. > > > > As per my knowledge Postgres internal code lacks visibility annotations on > > its symbols, which causes compilation errors when fvisibi

Re: ABI Compliance Checker GSoC Project

2025-06-04 Thread David E. Wheeler
On Jun 4, 2025, at 09:43, Álvaro Herrera wrote: > You mentioned ReadStream, but that's not exported. I this not an export at line 67? ``` ❯ rg ReadStream src/include/storage/read_stream.h 50: * the ReadStreamBlockNumberCB callback to abide by the restrictions of AIO 66:struct ReadStream; 67:ty

Re: ABI Compliance Checker GSoC Project

2025-06-04 Thread Álvaro Herrera
On 2025-Jun-04, Mankirat Singh wrote: > On Tue, 3 Jun 2025 at 23:50, David E. Wheeler wrote: > > >> Ummm, are you saying that it complains about changes to unexported > > >> symbols also? > > > > This is a good question. > No, it doesn’t complain about unexported symbols. You mentioned ReadStrea

Re: ABI Compliance Checker GSoC Project

2025-06-04 Thread Mankirat Singh
On Tue, 3 Jun 2025 at 23:50, David E. Wheeler wrote: > >> Ummm, are you saying that it complains about changes to unexported > >> symbols also? > > This is a good question. No, it doesn’t complain about unexported symbols. But it does complain about some exported symbols that, in my understanding,

Re: ABI Compliance Checker GSoC Project

2025-06-03 Thread David E. Wheeler
On Jun 3, 2025, at 13:23, Mankirat Singh wrote: >> I don't think it's the >> job of the tool to determine that this ABI difference is okay. >> Ultimately that's for a human to determine, > > Yes, but it would be better if we could automate that thing to some > extent, along with the development

Re: ABI Compliance Checker GSoC Project

2025-06-03 Thread Álvaro Herrera
On 2025-Jun-03, Mankirat Singh wrote: > On Tue, 3 Jun 2025 at 20:49, Álvaro Herrera wrote: > > Please elaborate. Can you not write a suppression file that says > > "ignore offset changes for ios_in_progress in ReadStream", for example? > > I can do that, and that's what's causing the problem.

Re: ABI Compliance Checker GSoC Project

2025-06-03 Thread Mankirat Singh
On Tue, 3 Jun 2025 at 20:49, Álvaro Herrera wrote: > > I don't think it's the > job of the tool to determine that this ABI difference is okay. > Ultimately that's for a human to determine, Yes, but it would be better if we could automate that thing to some extent, along with the development of t

Re: ABI Compliance Checker GSoC Project

2025-06-03 Thread Álvaro Herrera
On 2025-Jun-03, Mankirat Singh wrote: > 'struct ReadStream at read_stream.c:109:1' changed: > type size hasn't changed > 1 data member insertion: > 'int16 io_combine_limit', at offset 2 (in bytes) at read_stream.c:112:1 > there are data member changes: > 'int16 ios_in_progress' offse

Re: ABI Compliance Checker GSoC Project

2025-06-03 Thread Mankirat Singh
Thanks for the introduction :D On Tue, 3 Jun 2025 at 00:36, David E. Wheeler wrote: > Since the work naturally gets into what’s considered a public API and > what’s not, we feel that hackers is the best place to ask questions about > bits to include and exclude, as well as other questions relate