# test name 
name: "scan_end_limit"
creator: "zhenjing"
# type is the type of the test, supported type: prepare / test
# we will run the prepare tests before all test tests
type: "test"
tags:
  - scan

environment: 
  # machine resources
  resources:
    limits:
      cpu: 1000m
      memory: 2Gi
    requests:
      cpu: 500m
      memory: 1Gi
  # image is a docker execution image for running test 
  # default image: hub.pingcap.net/schrodinger/agent:latest
  # image: hub.pingcap.net/schrodinger/agent:latest

  # execution arguments
  args: ""

# manual for users 
manual:
  # description is to introduce the test purpose and instructions for this case.
  description: |-
    Part of the TiDB operation requires the kv_scan interface of TiKV. 
    Currently, this interface adds the function of limiting the end_key 
    of the scan interval to avoid the dirty data that may be left after the drop table is called 
    when the scan is called (which will cause TiKV panic).
    This case is used to ensure that this panic does not occur.
  # describe the purpose of the parameters and optional values
  parameters: |-
    db: the name of the created database
    concurrency: concurrency of sql.DB. default 200
    time: time limit (in minutes) to run the test. pass 0 to run forever. default 60
    log-interval: time interval (in secs) of logging count of executed commands. default 300
    query-threads: threads to run normal CURD queries. default  16
  # notes is to list all matters which need to be noted
  # eg: the special requirements of the test environment
  notes: |-
    If there is an error, the scan_end_limit will fail to run.
    TiKV does not occur panic, case does not generate error or fatal level logs