pgsql: postgres_fdw: Fix subabort cleanup of connections used in asynch

2022-01-21 Thread Etsuro Fujita
postgres_fdw: Fix subabort cleanup of connections used in asynchronous execution. Commit 27e1f1456 resets the per-connection states of connections used to scan foreign tables asynchronously during abort cleanup at main transaction end, but it failed to do so during subabort cleanup at subtransact

pgsql: postgres_fdw: Fix subabort cleanup of connections used in asynch

2022-01-21 Thread Etsuro Fujita
postgres_fdw: Fix subabort cleanup of connections used in asynchronous execution. Commit 27e1f1456 resets the per-connection states of connections used to scan foreign tables asynchronously during abort cleanup at main transaction end, but it failed to do so during subabort cleanup at subtransact

pgsql: fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

2022-01-21 Thread Andres Freund
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap(). While individual logical rewrite files were synced to disk, the directory was not. On some filesystems that could lead to loosing directory entries after a crash. Reported-By: Tom Lane Author: Nathan Bossart Discussion: https://postgr

pgsql: fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

2022-01-21 Thread Andres Freund
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap(). While individual logical rewrite files were synced to disk, the directory was not. On some filesystems that could lead to loosing directory entries after a crash. Reported-By: Tom Lane Author: Nathan Bossart Discussion: https://postgr

pgsql: fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

2022-01-21 Thread Andres Freund
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap(). While individual logical rewrite files were synced to disk, the directory was not. On some filesystems that could lead to loosing directory entries after a crash. Reported-By: Tom Lane Author: Nathan Bossart Discussion: https://postgr

pgsql: fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

2022-01-21 Thread Andres Freund
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap(). While individual logical rewrite files were synced to disk, the directory was not. On some filesystems that could lead to loosing directory entries after a crash. Reported-By: Tom Lane Author: Nathan Bossart Discussion: https://postgr

pgsql: fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

2022-01-21 Thread Andres Freund
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap(). While individual logical rewrite files were synced to disk, the directory was not. On some filesystems that could lead to loosing directory entries after a crash. Reported-By: Tom Lane Author: Nathan Bossart Discussion: https://postgr

pgsql: fsync pg_logical/mappings in CheckPointLogicalRewriteHeap().

2022-01-21 Thread Andres Freund
fsync pg_logical/mappings in CheckPointLogicalRewriteHeap(). While individual logical rewrite files were synced to disk, the directory was not. On some filesystems that could lead to loosing directory entries after a crash. Reported-By: Tom Lane Author: Nathan Bossart Discussion: https://postgr

pgsql: Fix race condition in gettext() initialization in libpq and ecpg

2022-01-21 Thread Tom Lane
Fix race condition in gettext() initialization in libpq and ecpglib. In libpq and ecpglib, multiple threads can concurrently enter the initialization logic for message localization. Since we set the its-done flag before actually doing the work, it'd be possible for some threads to reach gettext()

pgsql: Fix race condition in gettext() initialization in libpq and ecpg

2022-01-21 Thread Tom Lane
Fix race condition in gettext() initialization in libpq and ecpglib. In libpq and ecpglib, multiple threads can concurrently enter the initialization logic for message localization. Since we set the its-done flag before actually doing the work, it'd be possible for some threads to reach gettext()

pgsql: Fix race condition in gettext() initialization in libpq and ecpg

2022-01-21 Thread Tom Lane
Fix race condition in gettext() initialization in libpq and ecpglib. In libpq and ecpglib, multiple threads can concurrently enter the initialization logic for message localization. Since we set the its-done flag before actually doing the work, it'd be possible for some threads to reach gettext()

pgsql: Fix race condition in gettext() initialization in libpq and ecpg

2022-01-21 Thread Tom Lane
Fix race condition in gettext() initialization in libpq and ecpglib. In libpq and ecpglib, multiple threads can concurrently enter the initialization logic for message localization. Since we set the its-done flag before actually doing the work, it'd be possible for some threads to reach gettext()

pgsql: Fix race condition in gettext() initialization in libpq and ecpg

2022-01-21 Thread Tom Lane
Fix race condition in gettext() initialization in libpq and ecpglib. In libpq and ecpglib, multiple threads can concurrently enter the initialization logic for message localization. Since we set the its-done flag before actually doing the work, it'd be possible for some threads to reach gettext()

pgsql: Fix race condition in gettext() initialization in libpq and ecpg

2022-01-21 Thread Tom Lane
Fix race condition in gettext() initialization in libpq and ecpglib. In libpq and ecpglib, multiple threads can concurrently enter the initialization logic for message localization. Since we set the its-done flag before actually doing the work, it'd be possible for some threads to reach gettext()