使用taosgen生成测试数据报Exception - Unsupported action type: tdengine/insert

【TDengine 使用环境】
生产环境 /测试/ Poc/预生产环境

【TDengine 版本】

taos version: 3.4.0.2.enterprise compatible_version: 3.0.0.0

【操作系统以及版本】

CentOS Stream 9

【部署方式】容器/非容器部署

非容器部署

【集群节点数】

1

【集群副本数】

1

【描述业务影响】

【问题复现路径/shan】做过哪些操作出现的问题

【遇到的问题:问题现象及影响】

【资源配置】

【报错完整截图】(不要大段的粘贴报错代码,论坛直接看报错代码不直观)

官网文档中对taosgen的示例个人感觉不是特别详细

请提供一下 taosgen_st_device_10w.yaml 文件内容

就是官网示例中的TDengine方式导入,只改了设备数量

把文件提供一下吧,看提示是文件内容有问题。

tdengine:
dsn: taos+ws://root:taosdata@127.0.0.1:6041/tsbench
drop_if_exists: true
props: precision ‘ms’ vgroups 4

schema:
name: meters
tbname:
prefix: d
count: 100000
from: 0
columns:

  • name: ts
    type: timestamp
    start: 1700000000000
    precision : ms
    step: 300s
  • name: current
    type: float
    min: 0
    max: 1000
  • name: voltage
    type: int
    expr: ‘220 * math.sqrt(2) * math.sin(_i)’
  • name: phase
    type: float
    min: 0
    max: 360
    tags:
  • name: groupid
    type: int
    min: 1
    max: 10
  • name: location
    type: binary(24)
    values:
  • New York
  • Los Angeles
  • Chicago
  • Houston
  • Phoenix
  • Philadelphia
  • San Antonio
  • San Diego
  • Dallas
  • Austin
    generation:
    interlace: 1
    rows_per_table: 100000
    rows_per_batch: 100000
    num_cached_batches: 0

jobs:

TDengine insert job

insert:
steps:

  • uses: tdengine/create-super-table
  • uses: tdengine/create-child-table
    with:
    batch:
    size: 1000
    concurrency: 10
  - uses: tdengine/insert
    with:
      concurrency: 8
tdengine:
  dsn: taos+ws://root:taosdata@127.0.0.1:6041/tsbench
  drop_if_exists: true
  props: precision 'ms' vgroups 4

schema:
  name: meters
  tbname:
    prefix: d
    count: 100000
    from: 0
  columns:
    - name: ts
      type: timestamp
      start: 1700000000000
      precision : ms
      step: 300s
    - name: current
      type: float
      min: 0
      max: 100
    - name: voltage
      type: int
      expr: '220 * math.sqrt(2) * math.sin(_i)'
    - name: phase
      type: float
      min: 0
      max: 360
  tags:
    - name: groupid
      type: int
      min: 1
      max: 10
    - name: location
      type: binary(24)
      values:
        - New York
        - Los Angeles
        - Chicago
        - Houston
        - Phoenix
        - Philadelphia
        - San Antonio
        - San Diego
        - Dallas
        - Austin
  generation:
    interlace: 1
    rows_per_table: 100000
    rows_per_batch: 100000
    num_cached_batches: 0

jobs:
  insert:
    steps:
      - uses: tdengine/create-super-table
      - uses: tdengine/create-child-table
        with:
          batch:
            size: 1000
            concurrency: 10

      - uses: tdengine/insert
        with:
          concurrency: 8

用这个试试,我把数值改成与你的一样了,我测试没有问题。
yaml 对空格和制表符非常敏感,一定要注意格式。
你粘贴上来的格式是乱的,我无法判断格式是否有问题。

还是报一样的错

登录到数据库,看是否已经有 tsbench,
show transactions; 看是否有阻塞的事务。

库和表都是创建成功的,也没有阻塞事务,我的taosgen版本是0.7.2

把之前的 tsbench 库删掉,重新试一下。
你本地什么配置?
props: precision ‘ms’ vgroups 4
改成
props: precision ‘ms’ vgroups 1

试一下。

找到原因了,但是不知道为什么版本不一样

真相了

会不会升级造成的?

我这个环境没有升级过,先装了TSDB再装的IDMP,另外taosgen 0.7.2版本是不支持tdengine/insert吗?

是的,`tdengine/insert-data` 是 v0.7.x 之前使用的旧名称,v0.8.0 起继续使用会收到一个提示:
”Action ‘tdengine/insert-data’ is deprecated and will be removed in future versions. Please use ‘tdengine/insert’ instead”
并于 v0.8.3 不再支持。
v0.8.0之后的版本建议使用 tdengine/insert