apiVersion: api/v1
kind: Plan
name: endless-htap-currency
#type: ONE_SHOT
schedule: "@daily"
tags: []
testbed:
  generateName: endless-htap-currency-
  reclaimPolicy:
    lease: 24h
    gcStrategy:
      onFailure:
        artifact:
          monitor: true
          log: true
        reserveEnv:
          durationOnWorkingHour: '{{meta.parameters.onFailureNoReserve}}'
          notification:
            feishu: https://open.feishu.cn/open-apis/bot/v2/hook/573d5985-7c9e-4a4d-8e9f-a0e0b4bda9e2
        onSuccess:
          notification:
            feishu: https://open.feishu.cn/open-apis/bot/v2/hook/ea22c6ca-afc8-4b8b-a196-025e5b96fccf
          artifact:
            monitor: true
            log: true
  items:
    - name: tc
      type: TIDB_CLUSTER
      spec:
        timezone: Asia/Shanghai
        pd:
          replicas: 3
          requests:
            cpu: 4000m
            memory: 8Gi
          limits:
            cpu: 4000m
            memory: 8Gi
          service:
            type: NodePort
          config: |
            [dashboard]
            internal-proxy = true
          baseImage: '{{meta.parameters.pd_base_image}}'
          version: '{{meta.parameters.pd_component_version}}'
        tikv:
          replicas: 3
          storageClassName: "fast-disks"
          requests:
            cpu: 16000m
            memory: 24Gi
          limits:
            cpu: 16000m
            memory: 24Gi
          baseImage: '{{meta.parameters.tikv_base_image}}'
          version: '{{meta.parameters.tikv_component_version}}'
        tiflash:
          replicas: 2
          storageClaims:
            - resources:
                requests:
                  storage: 500Gi
              storageClassName: "fast-disks"
          requests:
            cpu: 16000m
            memory: 48Gi
          limits:
            cpu: 16000m
            memory: 48Gi
          config:
            config: |
              ## 数据块元信息的内存 cache 大小限制，通常不需要修改
              mark_cache_size = 5368709120
              ## 数据块 min-max 索引的内存 cache 大小限制，通常不需要修改
              minmax_index_cache_size = 5368709120
              [logger]
              level = "debug"
              size = "1000M"
              count = 100
              [profiles.default]
              ## 存储引擎的 segment 分裂是否使用逻辑分裂。使用逻辑分裂可以减小写放大，提高写入速度，但是会造成一定程度的硬盘空间回收不及时。默认为 true
              ## 单次 coprocessor 查询过程中，对中间数据的内存限制，单位为 byte，默认为 0，表示不限制
              max_memory_usage = 30737418240
              ## 所有查询过程中，对中间数据的内存限制，单位为 byte，默认为 0，表示不限制
              max_memory_usage_for_all_queries = 30737418240
            proxy: |
              log-file = "/data0/logs/tiflash_tikv.log"
          baseImage: '{{meta.parameters.tiflash_base_image}}'
          version: '{{meta.parameters.tiflash_component_version}}'
        tidb:
          replicas: 2
          requests:
            cpu: 8000m
            memory: 24Gi
          limits:
            cpu: 8000m
            memory: 24Gi
          baseImage: '{{meta.parameters.tidb_base_image}}'
          version: '{{meta.parameters.tidb_component_version}}'
        version: '{{meta.parameters.base_image_version}}'
    - name: gotpc
      type: WORKLOAD_NODE
      spec:
        container:
          name: go-tpc
          image: hub.pingcap.net/qa/go-tpc:v1.0.7
          command:
            - tail
            - "-f"
            - "/dev/null"
    - name: br
      type: BR_NODE
      spec:
        image: '{{meta.parameters.br_image}}'
steps:
  - name: tiflash-high-currency
    caseName: tiflash_high_currency_mpp_query
    arguments:
    - name: tc
      value: "{{testbed.tc}}"
    - name: br
      value: '{{testbed.br}}'
    - name: gotpc
      value: '{{testbed.gotpc}}'
    - name: workload
      value: ch
  - name: tiflash-high-currency2
    caseName: tiflash_high_currency_mpp_query2
    arguments:
      - name: tc
        value: "{{testbed.tc}}"
      - name: br
        value: '{{testbed.br}}'
      - name: workload
        value: tpch
failFast: false
