At Wed, 03 Jun 2020 02:00:53 -0400, Tom Lane <t...@sss.pgh.pa.us> wrote in 
> ... and InvalidateObsoleteReplicationSlots(), too.
> 
> I am detecting a pattern here.

I looked through 224 locations where SpinLockAcquire and found some.

LogicalIncreaseRestartDecodingForSlot is spotted by Michael.
pg_get_replication_slots has some namecpy as Tom pointed out.
copy_replication_slot has pstrdup as Tom pointed out.
InvalidateObsoleteReplicationSlots has pstrdup as Tom poineed out.

I found another instance of pstrdup, but found some string copy functions.

CreateInitDecodingContext has StrNCpy (up to NAMEDATALEN = 64 bytes).
RequestXLogStreaming has strlcpy (up to MAXCONNINFO = 1024 bytes).
SaveSlotToPath has memcpy on ReplicationSlotOnDisk (176 bytes).
WalReceiverMain has strlcpy(MAXCONINFO + NAMEDATALEN) and memset of MAXCONNINFO.
pg_stat_get_wal_receiver has strlcpy (NAMEDATALEN + NI_MAXHOST(1025) + 
MAXCONNINFO).

regards.

-- 
Kyotaro Horiguchi
NTT Open Source Software Center


Reply via email to