Re: pgsql: instr_time: Represent time as an int64 on all platforms

2023-01-22 Thread Tom Lane
Andres Freund writes: > On 2023-01-23 01:20:54 -0500, Tom Lane wrote: >> Yeah, there was some discussion about that already: >> https://www.postgresql.org/message-id/20230121190303.7xjiwdg3gvb62...@awork3.anarazel.de > I was thinking of starting a starting a separate thread about it - it's >

Re: pgsql: instr_time: Represent time as an int64 on all platforms

2023-01-22 Thread Andres Freund
Hi, On 2023-01-23 01:20:54 -0500, Tom Lane wrote: > Michael Paquier writes: > > On Sat, Jan 21, 2023 at 05:25:19AM +, Andres Freund wrote: > >> instr_time: Represent time as an int64 on all platforms > > > hoverfly is unhappy since this went in: > >

Re: pgsql: instr_time: Represent time as an int64 on all platforms

2023-01-22 Thread Tom Lane
Michael Paquier writes: > On Sat, Jan 21, 2023 at 05:25:19AM +, Andres Freund wrote: >> instr_time: Represent time as an int64 on all platforms > hoverfly is unhappy since this went in: > https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=hoverfly=2023-01-23%2005%3A01%3A44 Yeah, there

Re: pgsql: instr_time: Represent time as an int64 on all platforms

2023-01-22 Thread Michael Paquier
Hi Andres, On Sat, Jan 21, 2023 at 05:25:19AM +, Andres Freund wrote: > instr_time: Represent time as an int64 on all platforms > > Until now we used struct timespec for instr_time on all platforms but > windows. Using struct timespec causes a fair bit of memory (struct timeval is > 16

pgsql: pg_walinspect: Add pg_get_wal_fpi_info()

2023-01-22 Thread Michael Paquier
pg_walinspect: Add pg_get_wal_fpi_info() This function is able to extract the full page images from a range of records, specified as of input arguments start_lsn and end_lsn. Like the other functions of this module, an error is returned if using LSNs that do not reflect real system values. All

pgsql: Allow parallel aggregate on string_agg and array_agg

2023-01-22 Thread David Rowley
Allow parallel aggregate on string_agg and array_agg This adds combine, serial and deserial functions for the array_agg() and string_agg() aggregate functions, thus allowing these aggregates to partake in partial aggregations. This allows both parallel aggregation to take place when these

pgsql: Track logrep apply workers' last start times to avoid useless wa

2023-01-22 Thread Tom Lane
Track logrep apply workers' last start times to avoid useless waits. Enforce wal_retrieve_retry_interval on a per-subscription basis, rather than globally, and arrange to skip that delay in case of an intentional worker exit. This probably makes little difference in the field, where apply