apiVersion: api/v1
kind: Plan
name: tp-test
tags: ['team:transaction', 'owner:zyguan', 'branch:master']
schedule: '0 0 * * 0,3'
testbed:
  generateName: tp-test-
  resourcePool: test-store
  items:
  - name: tidb-a
    type: TIDB_CLUSTER
    spec:
      version: '{{meta.parameters.base_image_version}}'
      pd:
        replicas: 1
        baseImage: '{{meta.parameters.pd_base_image}}'
        version: '{{meta.parameters.pd_component_version}}'
      tikv:
        replicas: 1
        baseImage: '{{meta.parameters.tikv_base_image}}'
        config: |
          [storage]
          reserve-space = 0
          enable-async-apply-prewrite = true
          [pessimistic-txn]
          pipelined = true
          in-memory = true
        version: '{{meta.parameters.tikv_component_version}}'
      tidb:
        replicas: 1
        baseImage: '{{meta.parameters.tidb_base_image}}'
        env:
        - name: GO_FAILPOINTS
          value: "github.com/pingcap/tidb/server/enableTestAPI=return"
        config: |
          new_collations_enabled_on_first_bootstrap = true
          [prepared-plan-cache]
          enabled = true
          [experimental]
          allow-expression-index = true
        version: '{{meta.parameters.tidb_component_version}}'
  - name: tidb-b
    type: TIDB_CLUSTER
    spec:
      version: '{{meta.parameters.base_image_version}}'
      pd:
        replicas: 1
        baseImage: '{{meta.parameters.pd_base_image}}'
        version: '{{meta.parameters.pd_component_version}}'
      tikv:
        replicas: 1
        baseImage: '{{meta.parameters.tikv_base_image}}'
        config: |
          [storage]
          reserve-space = 0
          enable-async-apply-prewrite = false
          [pessimistic-txn]
          pipelined = false
          in-memory = false
        version: '{{meta.parameters.tikv_component_version}}'
      tidb:
        replicas: 1
        baseImage: '{{meta.parameters.tidb_base_image}}'
        env:
        - name: GO_FAILPOINTS
          value: "github.com/pingcap/tidb/server/enableTestAPI=return"
        config: |
          new_collations_enabled_on_first_bootstrap = true
          [prepared-plan-cache]
          enabled = false
          [experimental]
          allow-expression-index = false
        version: '{{meta.parameters.tidb_component_version}}'
pipeline:
- name: executor
  caseName: tp-test
  after: []
  arguments:
  - {name: yy, value: 'https://raw.githubusercontent.com/PingCAP-QE/tp-test/tp-test/tp-test/scenarios/executor.yy'}
  - {name: db, value: executor}
  - {name: dsn1, value: 'mysql://{{testbed.items.tidb-a.tidb.host}}:{{testbed.items.tidb-a.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=1&tidb_enable_index_merge=1&tidb_enable_mutation_checker=1&tidb_txn_assertion_level=strict&tidb_partition_prune_mode=dynamic'}
  - {name: dsn2, value: 'mysql://{{testbed.items.tidb-b.tidb.host}}:{{testbed.items.tidb-b.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=0&tidb_enable_index_merge=0&tidb_enable_mutation_checker=0&tidb_txn_assertion_level=off&tidb_partition_prune_mode=static'}
  - {name: threads, value: '3'}
- name: general1
  caseName: tp-test
  after: []
  arguments:
  - {name: yy, value: 'https://raw.githubusercontent.com/PingCAP-QE/tp-test/tp-test/tp-test/scenarios/general1.yy'}
  - {name: db, value: general1}
  - {name: dsn1, value: 'mysql://{{testbed.items.tidb-a.tidb.host}}:{{testbed.items.tidb-a.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=1&tidb_enable_index_merge=1&tidb_enable_mutation_checker=1&tidb_txn_assertion_level=strict'}
  - {name: dsn2, value: 'mysql://{{testbed.items.tidb-b.tidb.host}}:{{testbed.items.tidb-b.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=0&tidb_enable_index_merge=0&tidb_enable_mutation_checker=0&tidb_txn_assertion_level=off'}
  - {name: threads, value: '3'}
- name: general2
  caseName: tp-test
  after: []
  arguments:
  - {name: yy, value: 'https://raw.githubusercontent.com/PingCAP-QE/tp-test/tp-test/tp-test/scenarios/general2.yy'}
  - {name: db, value: general2}
  - {name: dsn1, value: 'mysql://{{testbed.items.tidb-a.tidb.host}}:{{testbed.items.tidb-a.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=1&tidb_enable_index_merge=1&tidb_enable_mutation_checker=1&tidb_txn_assertion_level=strict'}
  - {name: dsn2, value: 'mysql://{{testbed.items.tidb-b.tidb.host}}:{{testbed.items.tidb-b.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=0&tidb_enable_index_merge=0&tidb_enable_mutation_checker=0&tidb_txn_assertion_level=off'}
  - {name: threads, value: '3'}
- name: multitable
  caseName: tp-test
  after: []
  arguments:
  - {name: yy, value: 'https://raw.githubusercontent.com/PingCAP-QE/tp-test/tp-test/tp-test/scenarios/multi-table.yy'}
  - {name: db, value: multitable}
  - {name: dsn1, value: 'mysql://{{testbed.items.tidb-a.tidb.host}}:{{testbed.items.tidb-a.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=1&tidb_enable_index_merge=1&tidb_enable_mutation_checker=1&tidb_txn_assertion_level=strict&tidb_partition_prune_mode=dynamic'}
  - {name: dsn2, value: 'mysql://{{testbed.items.tidb-b.tidb.host}}:{{testbed.items.tidb-b.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=0&tidb_enable_index_merge=0&tidb_enable_mutation_checker=0&tidb_txn_assertion_level=off&tidb_partition_prune_mode=static'}
  - {name: threads, value: '3'}
- name: plan-cache-general
  caseName: tp-test
  after: []
  arguments:
  - {name: yy, value: 'https://raw.githubusercontent.com/PingCAP-QE/tp-test/tp-test/tp-test/scenarios/general-plan-cache.yy'}
  - {name: db, value: plan_cache_general}
  - {name: dsn1, value: 'mysql://{{testbed.items.tidb-a.tidb.host}}:{{testbed.items.tidb-a.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=1&tidb_enable_index_merge=1&tidb_enable_mutation_checker=1&tidb_txn_assertion_level=strict'}
  - {name: dsn2, value: 'mysql://{{testbed.items.tidb-b.tidb.host}}:{{testbed.items.tidb-b.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=0&tidb_enable_index_merge=0&tidb_enable_mutation_checker=0&tidb_txn_assertion_level=off'}
  - {name: threads, value: '3'}
- name: plan-cache-multitable
  caseName: tp-test
  after: []
  arguments:
  - {name: yy, value: 'https://raw.githubusercontent.com/PingCAP-QE/tp-test/tp-test/tp-test/scenarios/multi-table-plan-cache.yy'}
  - {name: db, value: plan_cache_multitable}
  - {name: dsn1, value: 'mysql://{{testbed.items.tidb-a.tidb.host}}:{{testbed.items.tidb-a.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=1&tidb_enable_index_merge=1&tidb_enable_mutation_checker=1&tidb_txn_assertion_level=strict&tidb_partition_prune_mode=dynamic'}
  - {name: dsn2, value: 'mysql://{{testbed.items.tidb-b.tidb.host}}:{{testbed.items.tidb-b.tidb.port}}/?tidb_general_log=1&tidb_enable_clustered_index=0&tidb_enable_index_merge=0&tidb_enable_mutation_checker=0&tidb_txn_assertion_level=off&tidb_partition_prune_mode=static'}
  - {name: threads, value: '3'}
