PG12: Any drawback of increasing wal_keep_segments

2022-03-24 Thread Shukla, Pranjal
Team,
Are there any disadvantages of increasing the “wal_keep_segments” to a higher 
number say, 500? Will it have any impact on performance of streaming 
replication, on primary or secondary servers?

Thanks & Regards
Pranjal Shukla


Re: PG12: Any drawback of increasing wal_keep_segments

2022-03-24 Thread Alvaro Herrera
On 2022-Mar-22, Shukla, Pranjal wrote:

> Team,
> Are there any disadvantages of increasing the “wal_keep_segments” to a
> higher number say, 500? Will it have any impact on performance of
> streaming replication, on primary or secondary servers?

No.  It just means WAL will occupy more disk space.  I've seen people go
even as high as 5000 with no issues.

-- 
Álvaro Herrera PostgreSQL Developer  —  https://www.EnterpriseDB.com/




Get primary key of a table through SPI

2022-03-24 Thread Oskar Stenberg
Hi!

I need to get the primary keys of a few tables for some code that I'm writing 
in C. I've found out how to do this through regular SQL code and I know that I 
can use that SQL code through the SPI. But I was just wondering if there is a 
better/faster way to get information like this directly through the SPI? I'm 
imagining something similar to how I can get for example the name of the column 
with the SPI_fname function? Couldn't find anything when I was looking around, 
but I might have looked in the wrong place?

Best Regards
Oskar


Re: Get primary key of a table through SPI

2022-03-24 Thread Tom Lane
Oskar Stenberg  writes:
> I need to get the primary keys of a few tables for some code that I'm writing 
> in C. I've found out how to do this through regular SQL code and I know that 
> I can use that SQL code through the SPI. But I was just wondering if there is 
> a better/faster way to get information like this directly through the SPI? 
> I'm imagining something similar to how I can get for example the name of the 
> column with the SPI_fname function? Couldn't find anything when I was looking 
> around, but I might have looked in the wrong place?

SPI doesn't concern itself with such things.  If you're writing C code,
there are a lot of server internal APIs you can use for catalog inquiries
--- in this case, RelationGetPrimaryKeyIndex() might be just what you
want.  However, you may or may not find those convenient to use, and in
any case they're less stable across major versions than the SPI APIs.
So it's a tradeoff.

regards, tom lane