-
Bug
-
Resolution: Done
-
Minor
-
None
-
False
-
False
-
Undefined
-
-
The runtime for the `message.key.columns` validation regex blows up under certain conditions and can cause misleading failures. The validation needs to be adjusted such that the connector start up will fail rather than explode the runtime.
Regex in question:
private static final Pattern MSG_KEY_COLUMNS_PATTERN = Pattern.compile("^(([^:]+):([^:;\\s]+))+[^;]$");
In the case this regex never completes, the connector will never fully start up and will continue to chew on validating `message.key.columns` for an eternity. The connector will continuously spam this log making it seem like there was some other kind of error causing the connector to crash, but in fact the connector hasn't started up yet and it still validating.
Couldn't commit processed log positions with the source database due to a concurrent connector shutdown or restart
A way to make the regex's runtime blow up is to create a list of tables/columns and to add an extra semi-colon at the end.