@@ -146,16 +146,9 @@ func (config *PartitionConfig) GetDbTableInfo(fromCron bool, host Host) (ptlist
146
146
slog .Error ("GetDbTableInfo" , sql , err .Error ())
147
147
return nil , err
148
148
}
149
- // (1)兼容【分区字段为空】的历史问题,对于某些特殊的分区类型,旧系统已经不在页面上支持,所以旧系统有意将分区字段留空,
150
- // 使其无法在页面编辑,避免改变了其他所属分区类别,因此无法核对比较,但不影响新增和删除分区。
151
- // (2)兼容web、dnf业务的特殊定制类型,分区字段类型为int,但是系统记录为timestamp,因此无法核对比较,但不影响新增和删除分区。
152
- // (3)兼容minigame业务的特殊定制类型,分区类型为0,但是实际定义与分区类型存在差异,因此无法核对比较,但不影响新增和删除分区。
153
- webCustomization := config .BkBizId == 159 && config .PartitionColumn == "Fcreate_time"
154
- iegamsCustomization := config .BkBizId == 5016839 && config .PartitionColumn == "Fcreate_time"
155
- minigameCustomization := config .BkBizId == 121 && config .ImmuteDomain == "gamedb.game-record.minigame.db"
156
- dnfCustomization := config .BkBizId == 105 && config .PartitionColumn == "occ_date"
157
- if config .PartitionColumn != "" && ! webCustomization && ! iegamsCustomization &&
158
- ! minigameCustomization && ! dnfCustomization {
149
+
150
+ flag := config .CustomizationCheck ()
151
+ if flag {
159
152
// 分区表至少会有一个分区
160
153
for _ , v := range output .CmdResults [0 ].TableData {
161
154
// 如果发现分区字段、分区间隔与规则不符合,需要重新做分区,页面调整了分区规则
@@ -215,6 +208,19 @@ func (config *PartitionConfig) GetDbTableInfo(fromCron bool, host Host) (ptlist
215
208
return ptlist , nil
216
209
}
217
210
211
+ func (config * PartitionConfig ) CustomizationCheck () (flag bool ) {
212
+ // (1)兼容【分区字段为空】的历史问题,对于某些特殊的分区类型,旧系统已经不在页面上支持,所以旧系统有意将分区字段留空,
213
+ // 使其无法在页面编辑,避免改变了其他所属分区类别,因此无法核对比较,但不影响新增和删除分区。
214
+ // (2)兼容web、dnf业务的特殊定制类型,分区字段类型为int,但是系统记录为timestamp,因此无法核对比较,但不影响新增和删除分区。
215
+ // (3)兼容minigame业务的特殊定制类型,分区类型为0,但是实际定义与分区类型存在差异,因此无法核对比较,但不影响新增和删除分区。
216
+ var custFlag bool
217
+ if val , ok := model .CustimazationMap [config .BkBizId ]; ok {
218
+ custFlag = config .PartitionColumn == val || config .ImmuteDomain == val
219
+ }
220
+ flag = config .PartitionColumn != "" && ! custFlag
221
+ return flag
222
+ }
223
+
218
224
func CheckPartitionExpression (expression , method , column string , partitionType int ) (bool , error ) {
219
225
columnWithBackquote := fmt .Sprintf ("`%s`" , column )
220
226
switch partitionType {
0 commit comments