1
0
mirror of https://github.com/postgrespro/pg_probackup.git synced 2025-09-16 09:26:30 +02:00

[PBCKP-1238] Warning when using the community Version of pg_pro backup 2 for ENT

- Call check_version in add_instance subcmd to get correct error
This commit is contained in:
Stepan Neretin
2024-07-24 22:45:44 +07:00
parent 0c02283931
commit 98863ae0cd
3 changed files with 9 additions and 3 deletions

View File

@@ -66,7 +66,6 @@ static bool pgpro_support(PGconn *conn);
static bool pg_is_checksum_enabled(PGconn *conn);
static bool pg_is_in_recovery(PGconn *conn);
static bool pg_is_superuser(PGconn *conn);
static void check_server_version(PGconn *conn, PGNodeInfo *nodeInfo);
static void confirm_block_size(PGconn *conn, const char *name, int blcksz);
static void rewind_and_mark_cfs_datafiles(parray *files, const char *root, char *relative, size_t i);
static bool remove_excluded_files_criterion(void *value, void *exclude_args);
@@ -947,7 +946,7 @@ do_backup(InstanceState *instanceState, pgSetBackupParams *set_backup_params,
/*
* Confirm that this server version is supported
*/
static void
void
check_server_version(PGconn *conn, PGNodeInfo *nodeInfo)
{
PGresult *res = NULL;

View File

@@ -980,7 +980,13 @@ main(int argc, char *argv[])
wal_file_path, wal_file_name, batch_size, !no_validate_wal);
break;
case ADD_INSTANCE_CMD:
return do_add_instance(instanceState, &instance_config);
{
PGNodeInfo nodeInfo;
pgNodeInit(&nodeInfo);
instanceState->conn = pgut_connect(dbhost, dbport, dbname, dbuser);
check_server_version(instanceState->conn, &nodeInfo);
return do_add_instance(instanceState, &instance_config);
}
case DELETE_INSTANCE_CMD:
return do_delete_instance(instanceState);
case INIT_CMD:

View File

@@ -1225,6 +1225,7 @@ extern const char *base36enc_to(long unsigned int value, char buf[ARG_SIZE_HINT
extern long unsigned int base36dec(const char *text);
extern uint32 parse_server_version(const char *server_version_str);
extern uint32 parse_program_version(const char *program_version);
void check_server_version(PGconn *conn, PGNodeInfo *nodeInfo);
extern bool parse_page(Page page, XLogRecPtr *lsn);
extern int32 do_compress(void* dst, size_t dst_size, void const* src, size_t src_size,
CompressAlg alg, int level, const char **errormsg);