yux created FLINK-37578: --------------------------- Summary: 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
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)