PostgreSQL Source Code git master
|
#include <signal.h>
Go to the source code of this file.
Functions | |
void | ApplyWorkerMain (Datum main_arg) |
void | ParallelApplyWorkerMain (Datum main_arg) |
void | TablesyncWorkerMain (Datum main_arg) |
bool | IsLogicalWorker (void) |
bool | IsLogicalParallelApplyWorker (void) |
void | HandleParallelApplyMessageInterrupt (void) |
void | HandleParallelApplyMessages (void) |
void | LogicalRepWorkersWakeupAtCommit (Oid subid) |
void | AtEOXact_LogicalRepWorkers (bool isCommit) |
Variables | |
PGDLLIMPORT volatile sig_atomic_t | ParallelApplyMessagePending |
void ApplyWorkerMain | ( | Datum | main_arg | ) |
Definition at line 4787 of file worker.c.
References DatumGetInt32(), InitializingApplyWorker, proc_exit(), run_apply_worker(), and SetupApplyOrSyncWorker().
void AtEOXact_LogicalRepWorkers | ( | bool | isCommit | ) |
Definition at line 5116 of file worker.c.
References lfirst, lfirst_oid, logicalrep_worker_wakeup_ptr(), logicalrep_workers_find(), LW_SHARED, LWLockAcquire(), LWLockRelease(), NIL, and on_commit_wakeup_workers_subids.
Referenced by AbortTransaction(), CommitTransaction(), and PrepareTransaction().
void HandleParallelApplyMessageInterrupt | ( | void | ) |
Definition at line 989 of file applyparallelworker.c.
References InterruptPending, MyLatch, ParallelApplyMessagePending, and SetLatch().
Referenced by procsignal_sigusr1_handler().
void HandleParallelApplyMessages | ( | void | ) |
Definition at line 1063 of file applyparallelworker.c.
References ALLOCSET_DEFAULT_SIZES, AllocSetContextCreate, appendBinaryStringInfo(), StringInfoData::data, data, ereport, errcode(), errmsg(), ERROR, ParallelApplyWorkerInfo::error_mq_handle, HandleParallelApplyMessage(), HOLD_INTERRUPTS, initStringInfo(), lfirst, MemoryContextReset(), MemoryContextSwitchTo(), ParallelApplyMessagePending, ParallelApplyWorkerPool, pfree(), res, RESUME_INTERRUPTS, shm_mq_receive(), SHM_MQ_SUCCESS, SHM_MQ_WOULD_BLOCK, and TopMemoryContext.
Referenced by ProcessInterrupts().
bool IsLogicalParallelApplyWorker | ( | void | ) |
Definition at line 4855 of file worker.c.
References am_parallel_apply_worker(), and IsLogicalWorker().
Referenced by mq_putmessage().
bool IsLogicalWorker | ( | void | ) |
Definition at line 4846 of file worker.c.
References MyLogicalRepWorker.
Referenced by IsLogicalParallelApplyWorker(), and ProcessInterrupts().
void LogicalRepWorkersWakeupAtCommit | ( | Oid | subid | ) |
Definition at line 5102 of file worker.c.
References list_append_unique_oid(), MemoryContextSwitchTo(), on_commit_wakeup_workers_subids, and TopTransactionContext.
Referenced by AlterObjectRename_internal(), AlterSubscription(), and AlterSubscriptionOwner_internal().
void ParallelApplyWorkerMain | ( | Datum | main_arg | ) |
Definition at line 857 of file applyparallelworker.c.
References Assert, BackgroundWorkerUnblockSignals(), before_shmem_exit(), BackgroundWorker::bgw_extra, CacheRegisterSyscacheCallback(), CommitTransactionCommand(), DatumGetInt32(), die, dsm_attach(), dsm_segment_address(), ereport, errcode(), errmsg(), ERROR, LogicalRepWorker::generation, InitializeLogRepWorker(), InitializingApplyWorker, INVALID_PROC_NUMBER, invalidate_syncing_table_states(), InvalidOid, LogicalRepWorker::last_recv_time, LogicalRepWorker::last_send_time, LogicalRepWorker::leader_pid, LogicalParallelApplyLoop(), logicalrep_worker_attach(), ParallelApplyWorkerShared::logicalrep_worker_generation, ParallelApplyWorkerShared::logicalrep_worker_slot_no, ParallelApplyWorkerShared::mutex, MyBgworkerEntry, MyLogicalRepWorker, MyParallelShared, MyProc, MySubscription, NAMEDATALEN, Subscription::oid, pa_shutdown(), PARALLEL_APPLY_KEY_ERROR_QUEUE, PARALLEL_APPLY_KEY_MQ, PARALLEL_APPLY_KEY_SHARED, PG_LOGICAL_APPLY_SHM_MAGIC, PointerGetDatum(), pq_redirect_to_shm_mq(), pq_set_parallel_leader(), pqsignal, ReplicationOriginNameForLogicalRep(), replorigin_by_name(), replorigin_session_origin, replorigin_session_setup(), LogicalRepWorker::reply_time, set_apply_error_context_origin(), shm_mq_attach(), shm_mq_set_receiver(), shm_mq_set_sender(), shm_toc_attach(), shm_toc_lookup(), SIGHUP, SignalHandlerForConfigReload(), SignalHandlerForShutdownRequest(), SpinLockAcquire, SpinLockRelease, and StartTransactionCommand().
void TablesyncWorkerMain | ( | Datum | main_arg | ) |
Definition at line 1719 of file tablesync.c.
References DatumGetInt32(), run_tablesync_worker(), and SetupApplyOrSyncWorker().
|
extern |
Definition at line 245 of file applyparallelworker.c.
Referenced by HandleParallelApplyMessageInterrupt(), HandleParallelApplyMessages(), and ProcessInterrupts().