codekingpro/portable-devtools
115k
1/* ----------2 * backend_progress.h3 * Command progress reporting definition.4 *5 * Note that this file provides the infrastructure for storing a single6 * backend's command progress counters, without ascribing meaning to the7 * individual fields. See commands/progress.h and system_views.sql for that.8 *9 * Copyright (c) 2001-2023, PostgreSQL Global Development Group10 *11 * src/include/utils/backend_progress.h12 * ----------13 */14#ifndef BACKEND_PROGRESS_H15#define BACKEND_PROGRESS_H16 17 18/* ----------19 * Command type for progress reporting purposes20 * ----------21 */22typedef enum ProgressCommandType23{24 PROGRESS_COMMAND_INVALID,25 PROGRESS_COMMAND_VACUUM,26 PROGRESS_COMMAND_ANALYZE,27 PROGRESS_COMMAND_CLUSTER,28 PROGRESS_COMMAND_CREATE_INDEX,29 PROGRESS_COMMAND_BASEBACKUP,30 PROGRESS_COMMAND_COPY31} ProgressCommandType;32 33#define PGSTAT_NUM_PROGRESS_PARAM 2034 35 36extern void pgstat_progress_start_command(ProgressCommandType cmdtype,37 Oid relid);38extern void pgstat_progress_update_param(int index, int64 val);39extern void pgstat_progress_incr_param(int index, int64 incr);40extern void pgstat_progress_update_multi_param(int nparam, const int *index,41 const int64 *val);42extern void pgstat_progress_end_command(void);43 44 45#endif /* BACKEND_PROGRESS_H */46 