Skip to content

Commit

Permalink
cdc: remove maxwell protocol, add simple protocol (#18286) (#18394) (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
ti-chi-bot authored Jul 29, 2024
1 parent 829609a commit 1331731
Show file tree
Hide file tree
Showing 10 changed files with 9 additions and 14 deletions.
2 changes: 0 additions & 2 deletions releases/release-4.0.10.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ TiDB version: 4.0.10

+ TiCDC

- Enable the old value feature for the `maxwell` protocol [#1144](https://github.com/pingcap/tiflow/pull/1144)
- Enable the unified sorter feature by default [#1230](https://github.com/pingcap/tiflow/pull/1230)

+ Dumpling
Expand Down Expand Up @@ -82,7 +81,6 @@ TiDB version: 4.0.10

+ TiCDC

- Fix the `maxwell` protocol issues, including the issue of `base64` data output and the issue of outputting TSO to unix timestamp [#1173](https://github.com/pingcap/tiflow/pull/1173)
- Fix a bug that outdated metadata might cause the newly created changefeed abnormal [#1184](https://github.com/pingcap/tiflow/pull/1184)
- Fix the issue of creating the receiver on the closed notifier [#1199](https://github.com/pingcap/tiflow/pull/1199)
- Fix a bug that the TiCDC owner might consume too much memory in the etcd watch client [#1227](https://github.com/pingcap/tiflow/pull/1227)
Expand Down
2 changes: 0 additions & 2 deletions releases/release-4.0.6.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,6 @@ TiDB version: 4.0.6

+ TiCDC (GA since v4.0.6)

- Support outputting data in the `maxwell` format [#869](https://github.com/pingcap/tiflow/pull/869)

## Improvements

+ TiDB
Expand Down
1 change: 0 additions & 1 deletion releases/release-4.0.8.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,6 @@ TiDB version: 4.0.8

- Fix the unexpected exit caused by the failure to update the GC safepoint [#979](https://github.com/pingcap/tiflow/pull/979)
- Fix the issue that the task status is unexpectedly flushed because of the incorrect mod revision cache [#1017](https://github.com/pingcap/tiflow/pull/1017)
- Fix the unexpected empty Maxwell messages [#978](https://github.com/pingcap/tiflow/pull/978)

+ TiDB Lightning

Expand Down
2 changes: 1 addition & 1 deletion releases/release-5.0.6.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ TiDB version: 5.0.6
- Fix the issue that Avro sink does not support parsing JSON type columns [#3624](https://github.com/pingcap/tiflow/issues/3624)
- Fix the bug that TiCDC reads the incorrect schema snapshot from TiKV when the TiKV owner restarts [#2603](https://github.com/pingcap/tiflow/issues/2603)
- Fix the memory leak issue after processing DDLs [#3174](https://github.com/pingcap/ticdc/issues/3174)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on Canal and Maxwell protocols [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on the Canal protocol [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the timezone error that occurs when the `cdc server` command runs on some Red Hat Enterprise Linux releases (such as 6.8 and 6.9) [#3584](https://github.com/pingcap/tiflow/issues/3584)
- Fix the issue of the inaccurate `txn_batch_size` monitoring metric for Kafka sink [#3431](https://github.com/pingcap/tiflow/issues/3431)
- Fix the issue that `tikv_cdc_min_resolved_ts_no_change_for_1m` keeps alerting when there is no changefeed [#11017](https://github.com/tikv/tikv/issues/11017)
Expand Down
2 changes: 1 addition & 1 deletion releases/release-5.1.4.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ TiDB version: 5.1.4
- Fix the TiCDC panic issue that occurs when manually cleaning the task status in etcd [#2980](https://github.com/pingcap/tiflow/issues/2980)
- Fix the issue that the service cannot be started because of a timezone issue in the RHEL release [#3584](https://github.com/pingcap/tiflow/issues/3584)
- Fix the issue of overly frequent warnings caused by MySQL sink deadlock [#2706](https://github.com/pingcap/tiflow/issues/2706)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on Canal and Maxwell protocols [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on the Canal protocol [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the issue that Avro sink does not support parsing JSON type columns [#3624](https://github.com/pingcap/tiflow/issues/3624)
- Fix the negative value error in the changefeed checkpoint lag [#3010](https://github.com/pingcap/ticdc/issues/3010)
- Fix the OOM issue in the container environment [#1798](https://github.com/pingcap/tiflow/issues/1798)
Expand Down
2 changes: 1 addition & 1 deletion releases/release-5.2.4.md
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ TiDB version: 5.2.4
- Fix the issue that the service cannot be started because of a timezone issue in the RHEL release [#3584](https://github.com/pingcap/tiflow/issues/3584)
- Fix the issue that `stopped` changefeeds resume automatically after a cluster upgrade [#3473](https://github.com/pingcap/tiflow/issues/3473)
- Fix the issue of overly frequent warnings caused by MySQL sink deadlock [#2706](https://github.com/pingcap/tiflow/issues/2706)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on Canal and Maxwell protocols [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on the Canal protocol [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the issue that Avro sink does not support parsing JSON type columns [#3624](https://github.com/pingcap/tiflow/issues/3624)
- Fix the negative value error in the changefeed checkpoint lag [#3010](https://github.com/pingcap/tiflow/issues/3010)
- Fix the OOM issue in the container environment [#1798](https://github.com/pingcap/tiflow/issues/1798)
Expand Down
2 changes: 1 addition & 1 deletion releases/release-5.3.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ TiDB version: 5.3.1
- Fix the issue that `stopped` changefeeds resume automatically after a cluster upgrade [#3473](https://github.com/pingcap/tiflow/issues/3473)
- Fix the issue that default values cannot be replicated [#3793](https://github.com/pingcap/tiflow/issues/3793)
- Fix the issue of overly frequent warnings caused by MySQL sink deadlock [#2706](https://github.com/pingcap/tiflow/issues/2706)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on Canal and Maxwell protocols [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the bug that the `enable-old-value` configuration item is not automatically set to `true` on the Canal protocol [#3676](https://github.com/pingcap/tiflow/issues/3676)
- Fix the issue that Avro sink does not support parsing JSON type columns [#3624](https://github.com/pingcap/tiflow/issues/3624)
- Fix the negative value error in the changefeed checkpoint lag [#3010](https://github.com/pingcap/tiflow/issues/3010)

Expand Down
6 changes: 3 additions & 3 deletions ticdc/manage-ticdc.md
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ The following are descriptions of parameters and parameter values that can be co
| `max-message-bytes` | The maximum size of data that is sent to Kafka broker each time (optional, `10MB` by default). From v5.0.6 and v4.0.6, the default value has changed from 64MB and 256MB to 10MB. |
| `replication-factor` | The number of Kafka message replicas that can be saved (optional, `1` by default) |
| `compression` | The compression algorithm used when sending messages (value options are `none`, `lz4`, `gzip`, `snappy`, and `zstd`; `none` by default). |
| `protocol` | The protocol with which messages are output to Kafka. The value options are `canal-json`, `open-protocol`, `avro` and `maxwell`. |
| `protocol` | The protocol with which messages are output to Kafka. The value options are `canal-json`, `open-protocol`, and `avro`. |
| `auto-create-topic` | Determines whether TiCDC creates the topic automatically when the `topic-name` passed in does not exist in the Kafka cluster (optional, `true` by default) |
| `enable-tidb-extension` | Optional. `false` by default. When the output protocol is `canal-json`, if the value is `true`, TiCDC sends Resolved events and adds the TiDB extension field to the Kafka message. From v6.1.0, this parameter is also applicable to the `avro` protocol. If the value is `true`, TiCDC adds three TiDB extension fields to the Kafka message. |
| `max-batch-size` | New in v4.0.9. If the message protocol supports outputting multiple data changes to one Kafka message, this parameter specifies the maximum number of data changes in one Kafka message. It currently takes effect only when Kafka's `protocol` is `open-protocol`. (optional, `16` by default) |
Expand Down Expand Up @@ -341,7 +341,7 @@ The following are descriptions of parameters that can be configured for the sink
| `auth.tls` | Uses the TLS mode to verify the downstream Pulsar (optional). For example, `auth=tls&auth.tlsCertFile=/path/to/cert&auth.tlsKeyFile=/path/to/key`. |
| `auth.token` | Uses the token mode to verify the downstream Pulsar (optional). For example, `auth=token&auth.token=secret-token` or `auth=token&auth.file=path/to/secret-token-file`. |
| `name` | The name of Pulsar producer in TiCDC (optional) |
| `protocol` | The protocol with which messages are output to Pulsar. The value options are `canal-json`, `open-protocol`, `avro`, and `maxwell`. |
| `protocol` | The protocol with which messages are output to Pulsar. The value options are `canal-json`, `open-protocol`, and `avro`. |
| `maxPendingMessages` | Sets the maximum size of the pending message queue, which is optional and defaults to 1000. For example, pending for the confirmation message from Pulsar. |
| `disableBatching` | Disables automatically sending messages in batches (optional) |
| `batchingMaxPublishDelay` | Sets the duration within which the messages sent are batched (default: 10ms) |
Expand Down Expand Up @@ -650,7 +650,7 @@ worker-num = 16
# {matcher = ['test6.*'], partition = "ts"}
# ]
# For the sink of MQ type, you can specify the protocol format of the message.
# Currently the following protocols are supported: canal-json, open-protocol, avro, and maxwell.
# Currently the following protocols are supported: canal-json, open-protocol, and avro.
# protocol = "canal-json"
```
Expand Down
2 changes: 1 addition & 1 deletion ticdc/ticdc-open-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ The configuration parameters of sink are as follows:

`matcher`: The matching syntax of matcher is the same as the filter rule syntax.

`protocol`: For the sink of MQ type, you can specify the protocol format of the message. Currently the following protocols are supported: `canal-json`, `open-protocol`, `avro`, and `maxwell`.
`protocol`: For the sink of MQ type, you can specify the protocol format of the message. Currently the following protocols are supported: `canal-json`, `open-protocol`, and `avro`.

### Example

Expand Down
2 changes: 1 addition & 1 deletion ticdc/troubleshoot-ticdc.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ Since v4.0.9, you can try to enable the unified sorter feature in your replicati

## After I upgrade the TiCDC cluster to v4.0.8, the `[CDC:ErrKafkaInvalidConfig]Canal requires old value to be enabled` error is reported when I execute a changefeed. What should I do?

Since v4.0.8, if the `canal-json` or `maxwell` protocol is used for output in a changefeed, TiCDC enables the old value feature automatically. However, if you have upgraded TiCDC from an earlier version to v4.0.8 or later, when the changefeed uses the `canal-json` or `maxwell` protocol and the old value feature is disabled, this error is reported.
Since v4.0.8, if the `canal-json` protocol is used for output in a changefeed, TiCDC enables the old value feature automatically. However, if you have upgraded TiCDC from an earlier version to v4.0.8 or later, when the changefeed uses the `canal-json` protocol and the old value feature is disabled, this error is reported.

To fix the error, take the following steps:

Expand Down

0 comments on commit 1331731

Please sign in to comment.