---
grafana:
  backupGaugeMetrics: ["tikv_engine_size_bytes"]
server:
    enableXAccount: [1]
    enableDBQueryLog: true
    enableDMMetering: true
    serverLogLevel: "info"
    featureGates:
      br-3-layer:
        requiredProviders:
          - "azure"
        disabledProjects: 
          - 3200466 # mgmt-service-test
        all: true
    featuresSwitchersConfig:
      publicFeatures:
        - bucket-manager-new-arch
        - recovery-group
        - backup-with-workflow
        - restore-with-workflow
        - biz-changefeed-azure
        - biz-changefeed-aws
        - biz-changefeed-gcp
        - regional-private-link-azure
        - regional-private-link-aws
        - regional-private-link-gcp
        - backup-export
      enabledFeatureByDeployment:
        dwr-alpha:
          regions:
            - us-west-2
            - us-east-1
            - us-west1
            - us-west2
          providers:
            - eks
            - gke
        featureDM:
          regions:
            - ap-northeast-3
            - us-west-2
            - us-east-1
            - us-west2
            - us-west1
            - us-east4
            - eu-west-1
            - eastus
            - eastus2
            - us-east-2
          providers:
            - eks
            - gke
            - aks
        featureCDCToServerlessTiDB:
          regions:
            - us-east-1
          providers:
            - eks
      featuresAllowList:
        skip-cdc-pitr-check-when-import:
          clusterID:
            - 10920099653354561989
        featureDM:
          tenantID:
            - 1372813089187791289 # dbaas test
          deploymentMatcher:
            regions:
              - us-east4
            providers:
              - gke
#        self-signed-issuer:
#          tenantID:
#            - 30073
        ebs:
          projectID:
            - 74031
        featurePiTR:
          projectID:
            - 3198709 # personal-cxw
        dualRegionBR:
          clusterID:
            - 64336 # the cluster for allow list test
          projectID:
            - 73839 # the project dp-gke-test
            - 3198709 # personal-cxw
        skipimportvalidation:
          clusterID:
            - 10659742854805981586
            - 3839022 # the cluster is in "dp default"
            - 3839045 # the cluster is in "dp default"
            - 10920099653354561989
        allowMultiImportJobs:
          tenantID:
            - 60205 # Dedicated Test
          projectID:
            - 3199015 # default
            - 3199044 # qa
            - 3200357 # fangdong-001
          clusterID:
            - 10398129352001214912
        multi-ticdc-clusters:
          projectID:
            - 3200030 # biz-changefeed project
          clusterID:
            - 10302810555599126425
        recovery-group:
          projectID:
            - 43569 # chenfei-test
        regional-private-link-blacklist-aws:
          projectID:
            - 3200289
         #   - 3200557 # migration test
        regional-private-link-blacklist-gcp:
          projectID:
            - 3200289
        ticdc-new-kernel-allowlist:
          projectID:
            - 3200465 # chenfei-without-tiproxy
          clusterID:
            - 10081546780169338636
            - 10484000265066850252
        ticdc-new-kernel-blacklist:
          clusterID:
            - 10311287501871787511
    bucketOptions:
      awsBucketRegionOptions:
        - region: us-west-2
        - region: us-east-1
      gcpBucketRegionOptions:
        - region: asia-east1
          continent: ASIA
        - region: asia-southeast1
          continent: ASIA
        - region: asia-northeast1
          continent: ASIA
          predefined: ASIA1
        - region: asia-northeast2
          continent: ASIA
          predefined: ASIA1
        - region: us-west2
          continent: US
        - region: us-west1
          continent: US
        - region: europe-north1
          continent: EUROPE
        - region: europe-west1
          continent: EUROPE
        - region: europe-west4
          continent: EUROPE
      gcpBucketPredefinedDualRegions:
        asia1:
          - asia-northeast1
          - asia-northeast2
        eur4:
          - europe-north1
          - europe-west4
        eur5:
          - europe-west1
          - europe-west2
        eur7:
          - europe-west2
          - europe-west3
        eur8:
          - europe-west3
          - europe-west6
        nam4:
          - us-central1
          - us-east1
      gcpBucketGeneralDualRegions:  
        asia:
          - asia-east1
          - asia-southeast1
        au:
          - australia-southeast1
          - australia-southeast2
        ca:
          - northamerica-northeast1
          - northamerica-northeast2
        eu:
          - europe-central2
          - europe-north1
          - europe-southwest1
          - europe-west1
          - europe-west3
          - europe-west4
          - europe-west8
          - europe-west9
        in:
          - asia-south1
          - asia-south2
        us:
          - us-central1
          - us-east1
          - us-east4
          - us-east5
          - us-south1
          - us-west1
          - us-west2
          - us-west3
          - us-west4
      gcpBucketRestrictedDualRegions:
        us-east5:
          - us-central1
          - us-east1
    sentry:
      enableSentry: false
marketPlace:
    marketplaceBackground: true
billing:
    enableCDCTCUMetering: true
enableBackupMetering:
    enable: true
    refactorEnable: true
    localFullBackupEnable: true
replication:
    cloudAdminReplacementEnable: true
changefeed:
    sqlModeConfig:
      - sqlMode: "PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER,ORACLE"
        tenantID:
          - 111111
        projectID:
          - 111111
        clusterID:
          - 111111
    multiTiCDCClustersFeatureGate:
      enabledCloudProviders:
        - aws
      enabledDownstreamTypes:
        - 3 # mysql
    clusterMaxMachineType:
      3843211:
        cpuNum: 8
    regionalInstanceTypes:
      - region: ap-southeast-5
        instanceType: m7i
    regionalWorkerEnabled: true
    featureEnabledVersions:
      - name: "csv-header"
        newArch: true
        versions:
          - ">= v8.5.5"
compact: # compactbackup
  compactBrInstanceTypes:
    tenantOverrides:
      - level: project
        projectId: "3199728"
        region: us-west-2
        instanceType: "r8g.8xlarge"
      - level: project
        projectId: "3199728"
        region: us-east-1
        instanceType: "r8g.8xlarge"
  compactOverrides:
    customerOverrides:
      - level: project
        projectId: "3199728"
        region: us-west-2
        brImageTag: v9.0.0-crr-advancer-10480-dev
        tikvImageTag: testing-pull-19628-7f4bfb3
      - level: project
        projectId: "3199728"
        region: us-east-1
        brImageTag: v9.0.0-crr-advancer-10480-dev
        tikvImageTag: testing-pull-19628-7f4bfb3
backup:
    crrfOverrides:
      - gate:
          enabledProjects:
            - 3199728
        image: "gcr.io/pingcap-public/dbaas/br:v9.0.0-advancer-final-10598-dev"
        calculatePiTRTimeRangeV2: true
        autoCRRF: true
      - gate:
          all: true
        image: "gcr.io/pingcap-public/dbaas/br:v9.0.0-advancer-final-10598-dev"
        calculatePiTRTimeRangeV2: true

    restoreOverrides:
      - gate:
          enabledProjects:
            - 3199728
        compactionAcceleratedPiTR: true
        addIndexAsyncForPiTR: true
        brImageTag: v8.5.7-restore-final-10599-dev
        
        componentImageTags:
          tikv: "v8.5.4-20260626-b2a9557"
        tikvDataAdditionalIops: 1200
        cloneImageTags:
          - "tidb"
          - "tikv"
          - "tiflash"
          - "tiproxy"
          - "pd"
        cloneAdditionalIops:
          - "tikv"
    cleanupDeleteConcurrency: 15
    logBackupEnableMinVer: v6.3.0
    # Deprecated: remove
    brInstanceTypes:
      defaults:
        azure:
          globalDefault: Standard_D2ps_v5
          regionOverrides:
            westeurope: Standard_D2s_v6
      tenantOverrides:
        - level: project
          projectId: "3199728"
          region: us-east-1
          instanceType: c8gn.8xlarge
        - level: project
          projectId: "3199728"
          region: us-west-2
          instanceType: c8gn.8xlarge
    backupInstanceTypes:
      defaults:
        azure:
          globalDefault: Standard_D2ps_v5
          regionOverrides:
            westeurope: Standard_D2s_v6
    restoreInstanceTypes:
      defaults:
        azure:
          globalDefault: Standard_D2ps_v5
          regionOverrides:
            westeurope: Standard_D2s_v6
      tenantOverrides:
        - level: project
          projectId: "3199728"
          region: us-east-1
          instanceType: c8gn.8xlarge
        - level: project
          projectId: "3199728"
          region: us-west-2
          instanceType: c8gn.8xlarge
    clusterBackupEnvs:
      10128367851763929258:
        - GOMEMLIMIT
        - 512MiB
        - VAR-1
        - 23
      1290004:
        - GOMEMLIMIT
        - 512MiB
        - VAR-1
        - 23
        - VAR_2
        - ab
    clusterBackupResourceRequirements:
      3841092:
        requests:
          memory: 4Gi
        limits:
          memory: 16Gi
      3842464:
        limits:
          cpu: 2
          memory: 4Gi
        requests:
          cpu: 1
          memory: 2Gi
    projectBackupResourceRequirements:
      # ap-southeast-5 region open test
      3200187:
        limits:
          cpu: 2
          memory: 4Gi
        requests:
          cpu: 1
          memory: 2Gi
      2653522:
        requests:
          memory: 4Gi
        limits:
          memory: 16Gi
      2473533:
        requests:
          memory: 4Gi
        limits:
          memory: 16Gi
      73772:
        requests:
          memory: 4Gi
        limits:
          memory: 16Gi
      3199745:
        requests:
          memory: 2Gi
        limits:
          memory: 4Gi
      3200030:
        limits:
          cpu: 16
          memory: 32Gi
        requests:
          cpu: 8
          memory: 16Gi
    clusterLogBackupResourceRequirements:
      3842295:
        limits:
          cpu: 2
          memory: 4Gi
        requests:
          cpu: 1
          memory: 2Gi
    projectRestoreResourceRequirements:
      2653522:
        limits:
          cpu: 2
          memory: 8Gi
        requests:
          cpu: 1
          memory: 4Gi
      2473533:
        limits:
          cpu: 2
          memory: 8Gi
        requests:
          cpu: 1
          memory: 4Gi
      73772:
        limits:
          cpu: 2
          memory: 8Gi
        requests:
          cpu: 1
          memory: 4Gi
      3199745:
        limits:
          cpu: 2
          memory: 4Gi
        requests:
          cpu: 1
          memory: 2Gi
      3199728:
        limits:
          cpu: 2
          memory: 4Gi
        requests:
          cpu: 1
          memory: 2Gi
      3200030:
        limits:
          cpu: 16
          memory: 32Gi
        requests:
          cpu: 8
          memory: 16Gi
    tenantRestoreEnvs:
      30073:
        - GOMEMLIMIT
        - 1GiB
    tenantRestoreResourceRequirements:
      30073:
        limits:
          cpu: 1
          memory: 1Gi
        requests:
          cpu: 0.2
          memory: 100Mi

tlsConfig:
    enableTLS: true
    enabledTenants: []
    enabledProjects: []
rbacConfig:
    switch: true
    rbacPathPattern2ResourceMap:
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/connectivity/ip-white-list": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/connectivity/ip-white-list/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/private-links": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/private-links/create"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/private-links/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/private-links/{id}/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/connectivity/validate/remote": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/connectivity/validate/remote"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/connectivity/validate/cluster": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/connectivity/validate/cluster"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/pre-check": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/pre-check/create"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/create"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/list"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/update"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/delete"
      "put:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs/(\\d+)/status": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/status/update"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/jobs/(\\d+)/scale-up-down": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/jobs/{id}/scale-up-down/create"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/source-tables": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/source-tables/get"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/pre-check/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/pre-check/{id}/delete"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/pre-check/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/pre-check/{id}/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/quota": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/quota/get"
      "put:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/create"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/local/table-columns": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/local/table-columns/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/validate-target-table-empty": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate-target-table-empty"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/import-target-tables": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/import-target-tables/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/search-import-files": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/search-import-files"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/preview-csv-file": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview-csv-file"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/(\\d+)/cancel": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/cancel"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/(\\d+)/exit": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/{id}/exit"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/data-ingestion-profile": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/data-ingestion-profile/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/validate": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports:precheck": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/validate"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/schemas-meta": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/schemas-meta/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/preview": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/preview-local": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview-local"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/preview-one-table": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/preview-one-table"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/imports/upload": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/imports/upload"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/crrf": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/list"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/crrf": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/list"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/crrf": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/log-backups": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/log-backups/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/options": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/options/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/setting": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting/update"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/setting": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/schedules": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/schedules/create"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/schedules": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/schedules/get"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{id}/delete"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/(\\d+)/restore": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{id}/restore/create"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/pitr/ranges": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/pitr/ranges/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/restores/progress": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/restores/progress/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/serverless_restores": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/serverless_restores/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/serverless_pitr_ranges": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/serverless_pitr_ranges/list"
      "post:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/(\\d+)/exports": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{backup_id}/exports/create"
      "post:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/(\\d+)/exports/(\\d+):cancel": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{backup_id}/exports/{export_id}/cancel"
      "get:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/exports": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/exports/get"
      "get:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/(\\d+)/export-profile": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/{backup_id}/export-profile/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/recycle-bin": "orgs/{org_id}/projects/{project_id}/recycle-bin/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/recycle-bin/(\\d+)": "orgs/{org_id}/projects/{project_id}/recycle-bin/list"
      "get:/api/v1/orgs/(\\d+)/recycle-bin": "orgs/{org_id}/recycle-bin/list"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/recycle-bin/(\\d+)/backups": "orgs/{org_id}/projects/{project_id}/recycle-bin/{cluster_id}/backups/delete"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/tcu": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/tcu/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/(\\d+)/start": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/start"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/(\\d+)/stop": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/stop"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/create"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/delete"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/test": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/test"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/edit": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/edit"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/kafka-private-links": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/kafka-private-links/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/(\\d+)/detail": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/detail"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/(\\d+)/ticdc_cluster": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/{connector_id}/ticdc_cluster"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/kafka-private-links": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/kafka-private-links"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/kafka-private-links/auth-info": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/kafka-private-links/auth-info/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/kafka-private-links/generate-advertised-pattern-group": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/kafka-private-links/generate-advertised-pattern-group"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/kafka-private-links/available-zones": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/kafka-private-links/available-zones/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/connectors/enabled-features": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/connectors/enabled-features/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/enabled_dp_features": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/enabled_dp_features/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/dm/cost": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/dm/cost/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dataflow/conn-profiles": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dataflow/conn-profiles/create"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/describeSchemaTable": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/describeSchemaTable"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/changefeeds/(\\d+)/scale": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/changefeeds/{changefeed_id}/scale"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/cal_changefeed_fee": "orgs/{org_id}/projects/{project_id}/cal_changefeed_fee"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/admin_profile": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/admin_profile/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/list"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/create"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/delete"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication/(\\d+)/terminate": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/{dw_replication_id}/terminate"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication/test": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/test"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dw_replication/source_tables": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dw_replication/source_tables"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dumpling/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dumpling/{dumpling_id}/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dumpling": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dumpling/create"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/dumpling/(\\d+)": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/dumpling/{dumpling_id}/delete"
      "get:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/setting": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting/get/v2"
      "post:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/backups/setting": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/backups/setting/update/v2"
      "get:/api/v2/orgs/(\\d+)/projects/(\\d+)/clusters/(\\d+)/restores": "orgs/{org_id}/projects/{project_id}/clusters/{cluster_id}/restores/list/v2"
      "post:/api/v1beta1/recovery_groups": "orgs/{org_id}/projects/{project_id}/recovery_groups/create"
      "patch:/api/v1beta1/recovery_groups/(\\d+)": "orgs/{org_id}/projects/{project_id}/recovery_groups/{recovery_group_id}/patch"
      "delete:/api/v1beta1/recovery_groups/(\\d+)": "orgs/{org_id}/projects/{project_id}/recovery_groups/{recovery_group_id}/delete"
      "get:/api/v1beta1/recovery_groups/(\\d+)": "orgs/{org_id}/projects/{project_id}/recovery_groups/{recovery_group_id}/get"
      "get:/api/v1beta1/recovery_groups": "orgs/{org_id}/projects/{project_id}/recovery_groups/list"
      "post:/api/v1beta1/recovery_groups/(\\d+):failover": "orgs/{org_id}/projects/{project_id}/recovery_groups/{recovery_group_id}/failover"
      "post:/api/v1beta1/recovery_groups/(\\d+):reprotect": "orgs/{org_id}/projects/{project_id}/recovery_groups/{recovery_group_id}/reprotect"
      "get:/api/v1beta1/recovery_groups/fee": "orgs/{org_id}/projects/{project_id}/recovery_groups/fee/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints": "orgs/{org_id}/projects/{project_id}/sink-endpoints/post"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints": "orgs/{org_id}/projects/{project_id}/sink-endpoints/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints/(\\d+)": "orgs/{org_id}/projects/{project_id}/sink-endpoints/sink_endpoint_id/get"
      "delete:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints/(\\d+)": "orgs/{org_id}/projects/{project_id}/sink-endpoints/sink_endpoint_id/delete"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints/availability-zones": "orgs/{org_id}/projects/{project_id}/sink-endpoints/availability-zones/get"
      "get:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints/auth-info": "orgs/{org_id}/projects/{project_id}/sink-endpoints/auth-info/get"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints/generate-advertised-listener": "orgs/{org_id}/projects/{project_id}/sink-endpoints/generate-advertised-listener/post"
      "post:/api/v1/orgs/(\\d+)/projects/(\\d+)/sink-endpoints/validate-advertised-listener-domain": "orgs/{org_id}/projects/{project_id}/sink-endpoints/validate-advertised-listener-domain/post"
    rbacPathWhitelist:
      - "/health_check"
      - "/ping"
      - "/local_test"
      - "/api/v1/dataflow/dm/supported-sources"
      - "/api/v1/dataflow/dm/job-specs"
      - "/api/v1/dataflow/get-s3-bucket-region"
      - "/api/v1/dataflow/imports/apply-table-filters"
      - "/api/v1/dataflow/imports/data-type"
      - "/api/v1/changefeed/instance_types"
      - "/api/v1/dw_replication/target_schemas"
      - "/api/v1/dw_replication/target_warehouses"
      - "/api/v1/orgs/\\d+/clusters/\\d+/replications/\\d+/type/\\w+"
      - "/api/v1/dataflow/ops/.+"
      - "/v1beta2/tidbs/\\d+/imports" # implemented by auth sdk, skip it 
      - "/api/v2025/cloud/v1beta2/tidbs/\\d+/imports" # implemented by auth sdk, skip it 
      - "/v1beta2/tidbs/\\d+/premiumMigration" # implemented by auth sdk, skip it 
      - "/api/v2025/cloud/v1beta2/tidbs/\\d+/premiumMigration" # implemented by auth sdk, skip it 
dm:
  rcuPriceMap:
    aws:
      us-west-2:      0.1307
      us-east-1:      0.1307
      ap-south-1:     0.1393
      ap-southeast-1: 0.1623
      ap-southeast-2: 0.1623 # Sydney
      ap-northeast-1: 0.1669
      eu-central-1:   0.1564
      ap-northeast-2: 0.1588 # Seoul
      sa-east-1:      0.2145 # São Paulo
    gcp:
      us-west1:        0.1452
      us-west2:        0.1743 # only on DEV, Los Angeles (340.62+102)/730/8*2.3
      us-east4:        0.1626
      us-central1:     0.1452
      asia-southeast1: 0.1746
      asia-east1:      0.1628
      asia-northeast1: 0.1868
      asia-northeast2: 0.1868
    azure:
      eastus:          0.1307
  dmTaskConfigs:
    - matcher:
        tenantID:
          - 60205
        clusterID:
          - 10291965072311247236
      onlineDDL: true
      workerCount: 64
      batch: 400
import:
  taskConfigs:
    # - matcher:
    #     projectID:
    #       - 3199728
    #   tikvBackend: tidb
  matchArchType: 3layer
  matchConditions:
    - provider: aks
    - provider: eks
    - provider: gke

debugConfig:
  enableCompatService: true
  enableConfigCenter: true

replay:
  workerConcurrency: 10
  defaultReplayImage: gcr.io/pingcap-public/dbaas/tiproxy-replayer:main-4eb66d
