[资源池化]6.17修复DMS版本的更新
This commit is contained in:
@ -425,7 +425,7 @@ static int SetPrimaryIdOnStandby(int primary_id)
|
||||
|
||||
/* called on both new primary and all standby nodes to refresh status */
|
||||
static int CBSaveStableList(void *db_handle, unsigned long long list_stable, unsigned char reformer_id,
|
||||
unsigned int save_ctrl)
|
||||
unsigned long long list_in, unsigned int save_ctrl)
|
||||
{
|
||||
int primary_id = (int)reformer_id;
|
||||
g_instance.dms_cxt.SSReformerControl.primaryInstId = primary_id;
|
||||
@ -827,7 +827,7 @@ static int CBSetBufLoadStatus(dms_buf_ctrl_t *buf_ctrl, dms_buf_load_status_t dm
|
||||
return DMS_SUCCESS;
|
||||
}
|
||||
|
||||
static void *CBGetHandle(unsigned int *db_handle_index)
|
||||
static void *CBGetHandle(unsigned int *db_handle_index, dms_session_type_e session_type)
|
||||
{
|
||||
void *db_handle = g_instance.proc_base->allProcs[g_instance.dms_cxt.dmsProcSid];
|
||||
*db_handle_index = pg_atomic_fetch_add_u32(&g_instance.dms_cxt.dmsProcSid, 1);
|
||||
|
@ -1,2 +1,2 @@
|
||||
dms_commit_id=1ecf0da9c6bafe2731d75fbddac09e54cc7bfd44
|
||||
dms_commit_id=8f11876adedc59140b721663c9a6fad1e1f5a723
|
||||
dss_commit_id=a62ccb6571d5448df3e91b95f788501836779625
|
||||
|
@ -190,6 +190,7 @@ typedef struct st_dms_xmap_ctx {
|
||||
typedef struct st_dms_context {
|
||||
unsigned int inst_id; // current instance id
|
||||
unsigned int sess_id; // current session id
|
||||
unsigned int rmid; // current rm id
|
||||
dms_session_e sess_type; // request page: recovery session flag
|
||||
void *db_handle;
|
||||
unsigned char is_try;
|
||||
@ -236,9 +237,9 @@ typedef struct dms_opengauss_txn_snapshot {
|
||||
} dms_opengauss_txn_snapshot_t;
|
||||
|
||||
typedef struct dms_opengauss_txn_sw_info {
|
||||
unsigned long long sxid;
|
||||
unsigned int scid;
|
||||
unsigned int server_proc_slot;
|
||||
unsigned long long sxid; // transaction id of master, used for standby write feature
|
||||
unsigned int scid; // command id of master, used for standby write feature
|
||||
unsigned int server_proc_slot; // backend slot of master, used for standby write feature
|
||||
} dms_opengauss_txn_sw_info_t;
|
||||
|
||||
typedef enum dms_opengauss_lock_req_type {
|
||||
@ -489,6 +490,13 @@ typedef enum en_dms_status {
|
||||
DMS_STATUS_IN = 3
|
||||
} dms_status_t; // used in database startup
|
||||
|
||||
typedef enum st_dms_session_type {
|
||||
DMS_SESSION_TYPE_NONE = 0,
|
||||
DMS_SESSION_TYPE_WORKER = 1,
|
||||
DMS_SESSION_TYPE_FULL_RCY = 2,
|
||||
DMS_SESSION_TYPE_FULL_RCY_PARAL = 3,
|
||||
}dms_session_type_e;
|
||||
|
||||
#define DCS_BATCH_BUF_SIZE (1024 * 30)
|
||||
#define DCS_RLS_OWNER_BATCH_SIZE (DCS_BATCH_BUF_SIZE / DMS_PAGEID_SIZE)
|
||||
typedef struct st_dcs_batch_buf {
|
||||
@ -499,7 +507,7 @@ typedef struct st_dcs_batch_buf {
|
||||
|
||||
typedef int(*dms_get_list_stable)(void *db_handle, unsigned long long *list_stable, unsigned char *reformer_id);
|
||||
typedef int(*dms_save_list_stable)(void *db_handle, unsigned long long list_stable, unsigned char reformer_id,
|
||||
unsigned int save_ctrl);
|
||||
unsigned long long list_in, unsigned int save_ctrl);
|
||||
typedef int(*dms_get_dms_status)(void *db_handle);
|
||||
typedef void(*dms_set_dms_status)(void *db_handle, int status);
|
||||
typedef int(*dms_confirm_converting)(void *db_handle, char *pageid, unsigned char smon_chk,
|
||||
@ -544,7 +552,7 @@ typedef void(*dms_leave_local_page)(void *db_handle, dms_buf_ctrl_t *buf_ctrl);
|
||||
typedef void(*dms_get_pageid)(dms_buf_ctrl_t *buf_ctrl, char **pageid, unsigned int *size);
|
||||
typedef char *(*dms_get_page)(dms_buf_ctrl_t *buf_ctrl);
|
||||
typedef int (*dms_invalidate_page)(void *db_handle, char pageid[DMS_PAGEID_SIZE], unsigned char invld_owner);
|
||||
typedef void *(*dms_get_db_handle)(unsigned int *db_handle_index);
|
||||
typedef void *(*dms_get_db_handle)(unsigned int *db_handle_index, dms_session_type_e session_type);
|
||||
typedef void (*dms_release_db_handle)(void *db_handle);
|
||||
typedef void *(*dms_stack_push_cr_cursor)(void *db_handle);
|
||||
typedef void (*dms_stack_pop_cr_cursor)(void *db_handle);
|
||||
|
Reference in New Issue
Block a user