You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Leonard Xu (Jira)" <ji...@apache.org> on 2025/04/21 08:44:00 UTC
[jira] [Resolved] (FLINK-37578) CDC Pipeline distributed schema evolution topology with bad internal state
[ https://issues.apache.org/jira/browse/FLINK-37578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Leonard Xu resolved FLINK-37578.
--------------------------------
Resolution: Implemented
Fixed via master: 47433993575d222808eb9cabe17b63c79270ae3d
> CDC Pipeline distributed schema evolution topology with bad internal state
> --------------------------------------------------------------------------
>
> Key: FLINK-37578
> URL: https://issues.apache.org/jira/browse/FLINK-37578
> Project: Flink
> Issue Type: Bug
> Components: Flink CDC
> Reporter: yux
> Assignee: yux
> Priority: Major
> Labels: pull-request-available
> Fix For: cdc-3.4.0
>
>
> Currently, a CDC pipeline job with distributed schema evolution topology might throw exceptions like this:
>
> Caused by: org.apache.flink.util.FlinkException: Global failure triggered by OperatorCoordinator for 'SchemaMapper -> Sink Writer: Value Sink' (operator 9899a42c64d67ef3172b7e3be3c1bbb9).
> at org.apache.flink.runtime.operators.coordination.OperatorCoordinatorHolder$LazyInitializedCoordinatorContext.failJob(OperatorCoordinatorHolder.java:673)
> ... 4 more
> Caused by: java.lang.IllegalStateException: Unexpected evolving status: EVOLVING
> at org.apache.flink.cdc.common.utils.Preconditions.checkState(Preconditions.java:161)
> at org.apache.flink.cdc.runtime.operators.schema.distributed.SchemaCoordinator.handleSchemaEvolveRequest(SchemaCoordinator.java:278)
> at org.apache.flink.cdc.runtime.operators.schema.distributed.SchemaCoordinator.handleCustomCoordinationRequest(SchemaCoordinator.java:195)
> at org.apache.flink.cdc.runtime.operators.schema.common.SchemaRegistry.lambda$handleCoordinationRequest$0(SchemaRegistry.java:257)
> at org.apache.flink.cdc.runtime.operators.schema.common.SchemaRegistry.lambda$runInEventLoop$3(SchemaRegistry.java:349)
> ... 3 more
>
> The underlying reason is SchemaRegistry releases operator clients before restoring its internal state, causing newly coming requests to fail.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)