pgsql: ci: Use windows VMs instead of windows containers

2023-02-02 Thread Andres Freund
ci: Use windows VMs instead of windows containers So far we have used containers for testing windows on cirrus-ci. Unfortunately they come with substantial overhead: First, the container images are pulled onto the host on-demand. Due to the large size of windows containers, that ends up taking

pgsql: ci: Use windows VMs instead of windows containers

2023-02-02 Thread Andres Freund
ci: Use windows VMs instead of windows containers So far we have used containers for testing windows on cirrus-ci. Unfortunately they come with substantial overhead: First, the container images are pulled onto the host on-demand. Due to the large size of windows containers, that ends up taking

pgsql: Reduce code duplication between heapgettup and heapgettup_pagemo

2023-02-02 Thread David Rowley
Reduce code duplication between heapgettup and heapgettup_pagemode The code to get the next block number was exactly the same between these two functions, so let's just put it into a helper function and call that from both locations. Author: Melanie Plageman Reviewed-by: Andres Freund, David

pgsql: Optimize the origin drop functionality.

2023-02-02 Thread Amit Kapila
Optimize the origin drop functionality. To interlock against concurrent drops, we use to hold ExclusiveLock on pg_replication_origin till xact commit. This blocks even concurrent drops of different origins by tablesync workers. So, instead, lock the specific origin to interlock against concurrent

pgsql: ci: Upgrade macOS version from 12 to 13.

2023-02-02 Thread Thomas Munro
ci: Upgrade macOS version from 12 to 13. Back-patch to 15, where in-tree CI began. Author: Justin Pryzby Discussion: https://postgr.es/m/1441145.1675300332%40sss.pgh.pa.us Branch -- REL_15_STABLE Details ---

pgsql: ci: Upgrade macOS version from 12 to 13.

2023-02-02 Thread Thomas Munro
ci: Upgrade macOS version from 12 to 13. Back-patch to 15, where in-tree CI began. Author: Justin Pryzby Discussion: https://postgr.es/m/1441145.1675300332%40sss.pgh.pa.us Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/2e9f120b657e540b36843dbb075dab196e79fbfd

Re: pgsql: Ensure that numeric.c compiles with other NBASE values.

2023-02-02 Thread Tom Lane
Dean Rasheed writes: > However, looking more closely, I think this function is more or less > completely broken: > 1). It doesn't work if log10val2 < 0, because then m < 0, and it > doesn't multiply by the remainder. And it then throws an overflow > error, because result.dscale comes out wrong

Re: pgsql: Ensure that numeric.c compiles with other NBASE values.

2023-02-02 Thread Dean Rasheed
On Thu, 2 Feb 2023 at 15:15, Tom Lane wrote: > > Looking at this diff made me wonder why the static pow10[] array > isn't marked "const"? > Good point. However, looking more closely, I think this function is more or less completely broken: 1). It doesn't work if log10val2 < 0, because then m <

pgsql: Add helper functions to simplify heapgettup code

2023-02-02 Thread David Rowley
Add helper functions to simplify heapgettup code Here we add heapgettup_start_page() and heapgettup_continue_page() to simplify the code in the heapgettup() function. Author: Melanie Plageman Reviewed-by: David Rowley Discussion:

pgsql: Further refactor of heapgettup and heapgettup_pagemode

2023-02-02 Thread David Rowley
Further refactor of heapgettup and heapgettup_pagemode Backward and forward scans share much of the same page acquisition code. Here we consolidate that code to reduce some duplication. Additionally, add a new rs_coffset field to HeapScanDescData to track the offset of the current tuple. The

pgsql: Retire PG_SETMASK() macro.

2023-02-02 Thread Thomas Munro
Retire PG_SETMASK() macro. In the 90s we needed to deal with computers that still had the pre-standard signal masking APIs. That hasn't been relevant for a very long time on Unix systems, and c94ae9d8 got rid of a remaining dependency in our Windows porting code. PG_SETMASK didn't expose

Re: pgsql: Do assorted mop-up in the planner.

2023-02-02 Thread Tom Lane
Robins Tharakan writes: > I'll probably switch off testing master for a day (and probably stop > posting more on this thread), but thought I'd post one last > (seemingly different) signature around the same commit, before > I wrap up for the day. Thanks for all the test cases! I remembered that

Re: pgsql: Ensure that numeric.c compiles with other NBASE values.

2023-02-02 Thread Tom Lane
Dean Rasheed writes: > Ensure that numeric.c compiles with other NBASE values. Looking at this diff made me wonder why the static pow10[] array isn't marked "const"? regards, tom lane

pgsql: Document installing perltidy with cpanm

2023-02-02 Thread Andrew Dunstan
Document installing perltidy with cpanm Installing with plain cpan failed for me recently, as the archive it searched has been purged of old releases. However, you can give cpanm a complete URL to the exact version you want to install, so document using that. Branch -- master Details

Re: pgsql: Do assorted mop-up in the planner.

2023-02-02 Thread Robins Tharakan
Hi Tom, I'll probably switch off testing master for a day (and probably stop posting more on this thread), but thought I'd post one last (seemingly different) signature around the same commit, before I wrap up for the day. On Thu, 2 Feb 2023 at 23:25, Robins Tharakan wrote: > > To add, although

Re: pgsql: Do assorted mop-up in the planner.

2023-02-02 Thread Robins Tharakan
Thanks for taking a look. To add, although a slightly different signature, it looks like Bug #17769 is also related to this commit b448f1c8d83f. https://www.postgresql.org/message-id/17769-e4f7a5c9d84a80a7%40postgresql.org === SQL SELECT FROM pg_catalog.pg_statio_all_tables AS ref_0,

pgsql: Ensure that numeric.c compiles with other NBASE values.

2023-02-02 Thread Dean Rasheed
Ensure that numeric.c compiles with other NBASE values. As noted in the comments, support for different NBASE values is really only of historical interest, but as long as we're keeping it, we might as well make sure that it compiles. Joel Jacobson Discussion:

pgsql: Clarify the choice of rscale in numeric_sqrt().

2023-02-02 Thread Dean Rasheed
Clarify the choice of rscale in numeric_sqrt(). Improve the comment explaining the choice of rscale in numeric_sqrt(), and ensure that the code works consistently when other values of NBASE/DEC_DIGITS are used. Note that, in practice, we always expect DEC_DIGITS == 4, and this does not change

Re: pgsql: Remove over-optimistic Assert.

2023-02-02 Thread Tom Lane
Richard Guo writes: > On Thu, Feb 2, 2023 at 8:40 AM Tom Lane wrote: >> In commit 2489d76c4, I'd thought it'd be safe to assert that a >> PlaceHolderVar appearing in a scan-level expression has empty >> nullingrels. However this is not so, as when we determine that a >> join relation is

Re: pgsql: Remove over-optimistic Assert.

2023-02-02 Thread Richard Guo
On Thu, Feb 2, 2023 at 8:40 AM Tom Lane wrote: > Remove over-optimistic Assert. > > In commit 2489d76c4, I'd thought it'd be safe to assert that a > PlaceHolderVar appearing in a scan-level expression has empty > nullingrels. However this is not so, as when we determine that a > join relation