Skip to content

Unverified changefeed updates are still saved into Coordinator memory despite not persisted into backend #4133

@kennytm

Description

@kennytm

What did you do?

  1. Prepare
tiup playground-ng:nightly v8.5.5 --db 1 --kv 1 --pd 1 --ticdc 2 --ticdc.binpath ~/.tiup/components/cdc/v8.5.6-release.1/cdc --ticdc.config ./ticdc-newarch.toml --without-monitor

tiup cdc:v8.5.6-release.1 cli changefeed create -c c --sink-uri 'blackhole:'
tiup cdc:v8.5.6-release.1 cli changefeed pause -c c
tiup cdc:v8.5.6-release.1 cli changefeed query -c c | jq .sink_uri
# "blackhole:"
  1. Update changefeed to an invalid Sink
echo 'y' | tiup cdc:v8.5.6-release.1 cli changefeed update -c c --sink-uri 'whitehole:'
# Error: [CDC:ErrSinkURIInvalid]sink uri invalid 'whitehole:': [CDC:ErrSinkURIInvalid]sink uri invalid 'whitehole:'
  1. Check the Sink URI again
tiup cdc:v8.5.6-release.1 cli changefeed query -c c | jq .sink_uri
# "whitehole:" (<-- unexpected!)
  1. Move coordinator and check again
curl -X POST 'http://127.0.0.1:8300/api/v2/owner/resign'
# (move the coordinator to the other CDC)
tiup cdc:v8.5.6-release.1 cli changefeed query -c c | jq .sink_uri
# "blackhole:"

What did you expect to see?

If changefeed update failed, the in-memory changefeed info should not be modified. That is, step 3 should still print "blackhole:".

What did you see instead?

^

Versions of the cluster

v8.5.6-release.1
v8.5.5

Metadata

Metadata

Assignees

No one assigned

    Labels

    type/bugThe issue is confirmed as a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions