Skip to content

flaky insert error `data did not match any variant of untagged enum EncodedValue`

sbroad versions: current master, tag 1.4.5
tarantool version: Tarantool 2.10.3-8-g6c323b (the problem is not relevant for 2.10.4-14-g7160549 version)
OS: centos 7

for repro you will need this space:

spaces:
    test4:
      format:
      - type: integer
        name: id
        is_nullable: false
      - type: integer
        name: accounts_id
        is_nullable: true
      - type: integer
        name: timestamp_col
        is_nullable: true
      - type: integer
        name: time_col
        is_nullable: true
      - type: string
        name: uuid_col
        is_nullable: true
      - type: string
        name: char_col
        is_nullable: true
      - type: integer
        name: int32_col
        is_nullable: true
      - type: string
        name: link_col
        is_nullable: true
      - type: number
        name: sys_op
        is_nullable: false
      - type: unsigned
        name: bucket_id
        is_nullable: true
      temporary: false
      indexes:
      - unique: true
        parts:
        - path: id
          is_nullable: false
          type: integer
        type: TREE
        name: id
      - unique: false
        parts:
        - path: bucket_id
          is_nullable: true
          type: unsigned
        type: TREE
        name: bucket_id
      is_local: false
      engine: memtx
      sharding_key:
      - id

(I tried to reduce the number of fields, but it does not work)

Insert values:

sbroad.execute("INSERT INTO \"test4\" (\"id\", \"accounts_id\", \"timestamp_col\", \"time_col\", \"uuid_col\", \"char_col\", \"int32_col\", \"link_col\", \"sys_op\") VALUES  (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?), (?, ?, ?, ?, ?, ?, ?, ?, ?)", {1, 2, 1, 1, "d92beee8-749f-4539-aa15-3d2941dbb0f1", "x", 32, "x", 0, 2, 1, 1, 1, "d92beee8-749f-4539-aa15-3d2941dbb0f1", "x", 32, "x", 0, 3, 5, 1, 1, "x", "x", 32, "x", 0, 4, 5, 1, 1, "x", "x", 32, "x", 0, 5, 4, 1, 1, "x", "x", 32, "x", 0})

---
{row_count = 5}

Now you can just repeat query below. Somethimes it raises error "Duplicate key exists", somethimes:

---
- null
- 'Sbroad Error: failed to decode tuple: motion node 233. Failed to decode tuple: data did not match any variant of untagged enum EncodedValue'
Edited by Asya Lomakina