@@ -49,6 +49,8 @@ typedef enum CatalogTable
4949 CONTINUOUS_AGGS_MATERIALIZATION_INVALIDATION_LOG ,
5050 CONTINUOUS_AGGS_MATERIALIZATION_RANGES ,
5151 CONTINUOUS_AGGS_JOBS_REFRESH_RANGES ,
52+ CONTINUOUS_AGGS_TENANT_TRACKING ,
53+ HYPERTABLE_CAGG_SETTINGS ,
5254 COMPRESSION_SETTINGS ,
5355 COMPRESSION_CHUNK_SIZE ,
5456 CONTINUOUS_AGGS_BUCKET_FUNCTION ,
@@ -1080,6 +1082,84 @@ enum
10801082 _MAX_CONTINUOUS_AGGS_JOBS_REFRESH_RANGES_INDEX ,
10811083};
10821084
1085+ /****** CONTINUOUS_AGGS_TENANT_TRACKING definitions */
1086+ #define CONTINUOUS_AGGS_TENANT_TRACKING_TABLE_NAME "continuous_aggs_tenant_tracking"
1087+
1088+ typedef enum Anum_continuous_aggs_tenant_tracking
1089+ {
1090+ Anum_continuous_aggs_tenant_tracking_hypertable_id = 1 ,
1091+ Anum_continuous_aggs_tenant_tracking_tenant_id ,
1092+ Anum_continuous_aggs_tenant_tracking_min_timestamp ,
1093+ Anum_continuous_aggs_tenant_tracking_max_timestamp ,
1094+ Anum_continuous_aggs_tenant_tracking_seqnum ,
1095+ _Anum_continuous_aggs_tenant_tracking_max ,
1096+ } Anum_continuous_aggs_tenant_tracking ;
1097+
1098+ #define Natts_continuous_aggs_tenant_tracking (_Anum_continuous_aggs_tenant_tracking_max - 1)
1099+
1100+ typedef struct FormData_continuous_aggs_tenant_tracking
1101+ {
1102+ int32 hypertable_id ;
1103+ text * tenant_id ;
1104+ int64 min_timestamp ;
1105+ int64 max_timestamp ;
1106+ int32 seqnum ;
1107+ } FormData_continuous_aggs_tenant_tracking ;
1108+
1109+ typedef FormData_continuous_aggs_tenant_tracking * Form_continuous_aggs_tenant_tracking ;
1110+
1111+ enum
1112+ {
1113+ CONTINUOUS_AGGS_TENANT_TRACKING_IDX = 0 ,
1114+ _MAX_CONTINUOUS_AGGS_TENANT_TRACKING_INDEX ,
1115+ };
1116+ typedef enum Anum_continuous_aggs_tenant_tracking_idx
1117+ {
1118+ Anum_continuous_aggs_tenant_tracking_idx_hypertable_id = 1 ,
1119+ Anum_continuous_aggs_tenant_tracking_idx_seqnum ,
1120+ _Anum_continuous_aggs_tenant_tracking_idx_max ,
1121+ } Anum_continuous_aggs_tenant_tracking_idx ;
1122+
1123+ #define Natts_continuous_aggs_tenant_tracking_idx \
1124+ (_Anum_continuous_aggs_tenant_tracking_idx_max - 1)
1125+
1126+ /****** HYPERTABLE_CAGG_SETTINGS definitions */
1127+ #define HYPERTABLE_CAGG_SETTINGS_TABLE_NAME "hypertable_cagg_settings"
1128+
1129+ typedef enum Anum_hypertable_cagg_settings
1130+ {
1131+ Anum_hypertable_cagg_settings_hypertable_id = 1 ,
1132+ Anum_hypertable_cagg_settings_granular_refresh_column ,
1133+ Anum_hypertable_cagg_settings_granular_refresh_start_offset ,
1134+ Anum_hypertable_cagg_settings_granular_refresh_end_offset ,
1135+ _Anum_hypertable_cagg_settings_max ,
1136+ } Anum_hypertable_cagg_settings ;
1137+
1138+ #define Natts_hypertable_cagg_settings (_Anum_hypertable_cagg_settings_max - 1)
1139+
1140+ typedef struct FormData_hypertable_cagg_settings
1141+ {
1142+ int32 hypertable_id ;
1143+ NameData granular_refresh_column ;
1144+ text * granular_refresh_start_offset ;
1145+ text * granular_refresh_end_offset ;
1146+ } FormData_hypertable_cagg_settings ;
1147+
1148+ typedef FormData_hypertable_cagg_settings * Form_hypertable_cagg_settings ;
1149+
1150+ enum
1151+ {
1152+ HYPERTABLE_CAGG_SETTINGS_PKEY = 0 ,
1153+ _MAX_HYPERTABLE_CAGG_SETTINGS_INDEX ,
1154+ };
1155+ typedef enum Anum_hypertable_cagg_settings_pkey
1156+ {
1157+ Anum_hypertable_cagg_settings_pkey_hypertable_id = 1 ,
1158+ _Anum_hypertable_cagg_settings_pkey_max ,
1159+ } Anum_hypertable_cagg_settings_pkey ;
1160+
1161+ #define Natts_hypertable_cagg_settings_pkey (_Anum_hypertable_cagg_settings_pkey_max - 1)
1162+
10831163typedef enum Anum_continuous_aggs_jobs_refresh_ranges_idx
10841164{
10851165 Anum_continuous_aggs_jobs_refresh_ranges_idx_materialization_id = 1 ,
0 commit comments