pingcap / tiflow

This repo maintains DM (a data migration platform) and TiCDC (change data capture for TiDB)
Apache License 2.0
428 stars 286 forks source link

dm: syncer failed to sync remaining dml after shard-ddl is resolved #8253

Open D3Hunter opened 1 year ago

D3Hunter commented 1 year ago

What did you do?

task config

name: test
task-mode: all
is-sharding: true
shard-mode: optimistic
ignore-checking-items: ["all"]

target-database:
  host: "127.0.0.1"
  port: 4000
  user: "root"
  password: ""

mysql-instances:
  - source-id: "mysql-3306"
    block-allow-list:  "ba-rule1"
    route-rules: ["global"]
    mydumper-config-name: "dump1"
    loader-config-name: "load1"
  - source-id: "mysql-3307"
    block-allow-list:  "ba-rule1"
    route-rules: ["global"]
    mydumper-config-name: "dump2"
    loader-config-name: "load2"

block-allow-list:
  ba-rule1:
    do-dbs: ["test"]
mydumpers:
  dump1:
    mydumper-path: "dumped_data-dump1"
  dump2:
    mydumper-path: "dumped_data-dump2"
loaders:
  load1:
    dir: "loader_load1"
  load2:
    dir: "loader_load2"

routes:
  global:
    schema-pattern: test
    table-pattern: "t*"
    target-schema: test
    target-table: "t"

What did you expect to see?

No response

What did you see instead?

No response

Versions of the cluster

DM version (run dmctl -V or dm-worker -V or dm-master -V):

6.5.0

Upstream MySQL/MariaDB server version:

one 5.7, one 8.0

Downstream TiDB cluster version (execute SELECT tidb_version(); in a MySQL client):

6.1

How did you deploy DM: tiup or manually?

(leave TiUP or manually here)

Other interesting information (system version, hardware config, etc):

>
>

current status of DM cluster (execute query-status <task-name> in dmctl)

(paste current status of DM cluster here)
fubinzh commented 1 year ago

/severity major

fubinzh commented 1 year ago

This could be a problem, If user wants to wait for the 2 DML synced to downstream before other DMLs.

D3Hunter commented 1 year ago

very rare case in real environment, change to minor