[2021-02-02 15:14:58,226] ERROR Error during binlog processing. Last offset stored = null, binlog reader near position = mysql-bin.000040/225195712 (io.debezium.connector.mysql.BinlogReader:1178) [2021-02-02 15:14:58,226] ERROR Failed due to error: Error processing binlog event (io.debezium.connector.mysql.BinlogReader:219) org.apache.kafka.connect.errors.ConnectException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`( input_activity_id_to_remove VARCHAR(32), input_score_to_remove INT(10), input_user_name VARCHAR(50), input_state_id VARCHAR(2), input_school_name VARCHAR(100), input_subject_id VARCHAR(32), input_completion_time TIMESTAMP, input_activity_id_of_replacement VARCHAR(32), input_score_of_replacement INT(10) ) BEGIN DECLARE change_base_diagnostic TINYINT(1); DECLARE error_text VARCHAR(255); -- Perform all updates within a single transaction DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END; START TRANSACTION; -- Validate that the specified activity is eligible to be removed SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove, input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time, input_activity_id_of_replacement, input_score_of_replacement) INTO error_text; IF (error_text != 'OK') THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text; END IF; -- Update the student's base diagnostic if the current base is the assessment that is being removed SELECT base_diagnostic FROM irp_activity where activity_id = input_activity_id_to_remove INTO change_base_diagnostic; IF (change_base_diagnostic = 1) THEN UPDATE irp_activity SET base_diagnostic = 1 WHERE activity_id = input_activity_id_of_replacement; END IF; -- Mark the activity as cancelled UPDATE irp_activity SET status = 4, status_detail = 'CANCELLED_INVALID_RESULT', completion_time = NULL, base_diagnostic = NULL WHERE activity_id = input_activity_id_to_remove; -- Remove the assessment facts for the completed assessment DELETE cat_calc FROM irs_assessment_category_calc cat_calc INNER JOIN irs_assessment_category_fact cat_fact ON cat_fact.id = cat_calc.assessment_category_fact_id WHERE cat_fact.assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_category_fact WHERE assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_fact WHERE activity_id = input_activity_id_to_remove; COMMIT; END' no viable alternative at input 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`(\n input_activity_id_to_remove VARCHAR(32),\n input_score_to_remove INT(10),\n input_user_name VARCHAR(50),\n input_state_id VARCHAR(2),\n input_school_name VARCHAR(100),\n input_subject_id VARCHAR(32),\n input_completion_time TIMESTAMP,\n input_activity_id_of_replacement VARCHAR(32),\n input_score_of_replacement INT(10)\n)\nBEGIN\n DECLARE change_base_diagnostic TINYINT(1);\n DECLARE error_text VARCHAR(255);\n\n -- Perform all updates within a single transaction\n\n DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END;\n\n START TRANSACTION;\n\n -- Validate that the specified activity is eligible to be removed\n\n SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove,\n input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time,\n input_activity_id_of_replacement, input_score_of_replacement)\n INTO error_text;\n IF (error_text != 'OK') THEN\n SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text' at io.debezium.connector.mysql.AbstractReader.wrap(AbstractReader.java:241) at io.debezium.connector.mysql.AbstractReader.failed(AbstractReader.java:218) at io.debezium.connector.mysql.BinlogReader.handleEvent(BinlogReader.java:607) at com.github.shyiko.mysql.binlog.BinaryLogClient.notifyEventListeners(BinaryLogClient.java:1104) at com.github.shyiko.mysql.binlog.BinaryLogClient.listenForEventPackets(BinaryLogClient.java:955) at com.github.shyiko.mysql.binlog.BinaryLogClient.connect(BinaryLogClient.java:595) at com.github.shyiko.mysql.binlog.BinaryLogClient$7.run(BinaryLogClient.java:839) at java.lang.Thread.run(Thread.java:748) Caused by: io.debezium.text.ParsingException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`( input_activity_id_to_remove VARCHAR(32), input_score_to_remove INT(10), input_user_name VARCHAR(50), input_state_id VARCHAR(2), input_school_name VARCHAR(100), input_subject_id VARCHAR(32), input_completion_time TIMESTAMP, input_activity_id_of_replacement VARCHAR(32), input_score_of_replacement INT(10) ) BEGIN DECLARE change_base_diagnostic TINYINT(1); DECLARE error_text VARCHAR(255); -- Perform all updates within a single transaction DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END; START TRANSACTION; -- Validate that the specified activity is eligible to be removed SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove, input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time, input_activity_id_of_replacement, input_score_of_replacement) INTO error_text; IF (error_text != 'OK') THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text; END IF; -- Update the student's base diagnostic if the current base is the assessment that is being removed SELECT base_diagnostic FROM irp_activity where activity_id = input_activity_id_to_remove INTO change_base_diagnostic; IF (change_base_diagnostic = 1) THEN UPDATE irp_activity SET base_diagnostic = 1 WHERE activity_id = input_activity_id_of_replacement; END IF; -- Mark the activity as cancelled UPDATE irp_activity SET status = 4, status_detail = 'CANCELLED_INVALID_RESULT', completion_time = NULL, base_diagnostic = NULL WHERE activity_id = input_activity_id_to_remove; -- Remove the assessment facts for the completed assessment DELETE cat_calc FROM irs_assessment_category_calc cat_calc INNER JOIN irs_assessment_category_fact cat_fact ON cat_fact.id = cat_calc.assessment_category_fact_id WHERE cat_fact.assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_category_fact WHERE assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_fact WHERE activity_id = input_activity_id_to_remove; COMMIT; END' no viable alternative at input 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`(\n input_activity_id_to_remove VARCHAR(32),\n input_score_to_remove INT(10),\n input_user_name VARCHAR(50),\n input_state_id VARCHAR(2),\n input_school_name VARCHAR(100),\n input_subject_id VARCHAR(32),\n input_completion_time TIMESTAMP,\n input_activity_id_of_replacement VARCHAR(32),\n input_score_of_replacement INT(10)\n)\nBEGIN\n DECLARE change_base_diagnostic TINYINT(1);\n DECLARE error_text VARCHAR(255);\n\n -- Perform all updates within a single transaction\n\n DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END;\n\n START TRANSACTION;\n\n -- Validate that the specified activity is eligible to be removed\n\n SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove,\n input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time,\n input_activity_id_of_replacement, input_score_of_replacement)\n INTO error_text;\n IF (error_text != 'OK') THEN\n SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text' at io.debezium.antlr.ParsingErrorListener.syntaxError(ParsingErrorListener.java:43) at org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:41) at org.antlr.v4.runtime.Parser.notifyErrorListeners(Parser.java:544) at org.antlr.v4.runtime.DefaultErrorStrategy.reportNoViableAlternative(DefaultErrorStrategy.java:310) at org.antlr.v4.runtime.DefaultErrorStrategy.reportError(DefaultErrorStrategy.java:136) at io.debezium.ddl.parser.mysql.generated.MySqlParser.sqlStatements(MySqlParser.java:1157) at io.debezium.ddl.parser.mysql.generated.MySqlParser.root(MySqlParser.java:885) at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.parseTree(MySqlAntlrDdlParser.java:72) at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.parseTree(MySqlAntlrDdlParser.java:45) at io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:80) at io.debezium.connector.mysql.MySqlSchema.applyDdl(MySqlSchema.java:326) at io.debezium.connector.mysql.BinlogReader.handleQueryEvent(BinlogReader.java:810) at io.debezium.connector.mysql.BinlogReader.handleEvent(BinlogReader.java:590) ... 5 more Caused by: org.antlr.v4.runtime.NoViableAltException at org.antlr.v4.runtime.atn.ParserATNSimulator.noViableAlt(ParserATNSimulator.java:2026) at org.antlr.v4.runtime.atn.ParserATNSimulator.execATN(ParserATNSimulator.java:467) at org.antlr.v4.runtime.atn.ParserATNSimulator.adaptivePredict(ParserATNSimulator.java:393) at io.debezium.ddl.parser.mysql.generated.MySqlParser.sqlStatements(MySqlParser.java:959) ... 12 more [2021-02-02 15:14:58,227] INFO Error processing binlog event, and propagating to Kafka Connect so it stops this connector. Future binlog events read before connector is shutdown will be ignored. (io.debezium.connector.mysql.BinlogReader:612) [2021-02-02 15:14:58,330] INFO WorkerSourceTask{id=iready_dbz-0} Committing offsets (org.apache.kafka.connect.runtime.WorkerSourceTask:328) [2021-02-02 15:14:58,330] INFO WorkerSourceTask{id=iready_dbz-0} flushing 0 outstanding messages for offset commit (org.apache.kafka.connect.runtime.WorkerSourceTask:345) [2021-02-02 15:14:58,331] ERROR WorkerSourceTask{id=iready_dbz-0} Task threw an uncaught and unrecoverable exception (org.apache.kafka.connect.runtime.WorkerTask:172) org.apache.kafka.connect.errors.ConnectException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`( input_activity_id_to_remove VARCHAR(32), input_score_to_remove INT(10), input_user_name VARCHAR(50), input_state_id VARCHAR(2), input_school_name VARCHAR(100), input_subject_id VARCHAR(32), input_completion_time TIMESTAMP, input_activity_id_of_replacement VARCHAR(32), input_score_of_replacement INT(10) ) BEGIN DECLARE change_base_diagnostic TINYINT(1); DECLARE error_text VARCHAR(255); -- Perform all updates within a single transaction DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END; START TRANSACTION; -- Validate that the specified activity is eligible to be removed SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove, input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time, input_activity_id_of_replacement, input_score_of_replacement) INTO error_text; IF (error_text != 'OK') THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text; END IF; -- Update the student's base diagnostic if the current base is the assessment that is being removed SELECT base_diagnostic FROM irp_activity where activity_id = input_activity_id_to_remove INTO change_base_diagnostic; IF (change_base_diagnostic = 1) THEN UPDATE irp_activity SET base_diagnostic = 1 WHERE activity_id = input_activity_id_of_replacement; END IF; -- Mark the activity as cancelled UPDATE irp_activity SET status = 4, status_detail = 'CANCELLED_INVALID_RESULT', completion_time = NULL, base_diagnostic = NULL WHERE activity_id = input_activity_id_to_remove; -- Remove the assessment facts for the completed assessment DELETE cat_calc FROM irs_assessment_category_calc cat_calc INNER JOIN irs_assessment_category_fact cat_fact ON cat_fact.id = cat_calc.assessment_category_fact_id WHERE cat_fact.assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_category_fact WHERE assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_fact WHERE activity_id = input_activity_id_to_remove; COMMIT; END' no viable alternative at input 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`(\n input_activity_id_to_remove VARCHAR(32),\n input_score_to_remove INT(10),\n input_user_name VARCHAR(50),\n input_state_id VARCHAR(2),\n input_school_name VARCHAR(100),\n input_subject_id VARCHAR(32),\n input_completion_time TIMESTAMP,\n input_activity_id_of_replacement VARCHAR(32),\n input_score_of_replacement INT(10)\n)\nBEGIN\n DECLARE change_base_diagnostic TINYINT(1);\n DECLARE error_text VARCHAR(255);\n\n -- Perform all updates within a single transaction\n\n DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END;\n\n START TRANSACTION;\n\n -- Validate that the specified activity is eligible to be removed\n\n SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove,\n input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time,\n input_activity_id_of_replacement, input_score_of_replacement)\n INTO error_text;\n IF (error_text != 'OK') THEN\n SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text' at io.debezium.connector.mysql.AbstractReader.wrap(AbstractReader.java:241) at io.debezium.connector.mysql.AbstractReader.failed(AbstractReader.java:218) at io.debezium.connector.mysql.BinlogReader.handleEvent(BinlogReader.java:607) at com.github.shyiko.mysql.binlog.BinaryLogClient.notifyEventListeners(BinaryLogClient.java:1104) at com.github.shyiko.mysql.binlog.BinaryLogClient.listenForEventPackets(BinaryLogClient.java:955) at com.github.shyiko.mysql.binlog.BinaryLogClient.connect(BinaryLogClient.java:595) at com.github.shyiko.mysql.binlog.BinaryLogClient$7.run(BinaryLogClient.java:839) at java.lang.Thread.run(Thread.java:748) Caused by: io.debezium.text.ParsingException: DDL statement couldn't be parsed. Please open a Jira issue with the statement 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`( input_activity_id_to_remove VARCHAR(32), input_score_to_remove INT(10), input_user_name VARCHAR(50), input_state_id VARCHAR(2), input_school_name VARCHAR(100), input_subject_id VARCHAR(32), input_completion_time TIMESTAMP, input_activity_id_of_replacement VARCHAR(32), input_score_of_replacement INT(10) ) BEGIN DECLARE change_base_diagnostic TINYINT(1); DECLARE error_text VARCHAR(255); -- Perform all updates within a single transaction DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END; START TRANSACTION; -- Validate that the specified activity is eligible to be removed SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove, input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time, input_activity_id_of_replacement, input_score_of_replacement) INTO error_text; IF (error_text != 'OK') THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text; END IF; -- Update the student's base diagnostic if the current base is the assessment that is being removed SELECT base_diagnostic FROM irp_activity where activity_id = input_activity_id_to_remove INTO change_base_diagnostic; IF (change_base_diagnostic = 1) THEN UPDATE irp_activity SET base_diagnostic = 1 WHERE activity_id = input_activity_id_of_replacement; END IF; -- Mark the activity as cancelled UPDATE irp_activity SET status = 4, status_detail = 'CANCELLED_INVALID_RESULT', completion_time = NULL, base_diagnostic = NULL WHERE activity_id = input_activity_id_to_remove; -- Remove the assessment facts for the completed assessment DELETE cat_calc FROM irs_assessment_category_calc cat_calc INNER JOIN irs_assessment_category_fact cat_fact ON cat_fact.id = cat_calc.assessment_category_fact_id WHERE cat_fact.assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_category_fact WHERE assessment_fact_id = input_activity_id_to_remove; DELETE FROM irs_assessment_fact WHERE activity_id = input_activity_id_to_remove; COMMIT; END' no viable alternative at input 'CREATE DEFINER=`root`@`localhost` PROCEDURE `remove_diagnostic_from_student_history`(\n input_activity_id_to_remove VARCHAR(32),\n input_score_to_remove INT(10),\n input_user_name VARCHAR(50),\n input_state_id VARCHAR(2),\n input_school_name VARCHAR(100),\n input_subject_id VARCHAR(32),\n input_completion_time TIMESTAMP,\n input_activity_id_of_replacement VARCHAR(32),\n input_score_of_replacement INT(10)\n)\nBEGIN\n DECLARE change_base_diagnostic TINYINT(1);\n DECLARE error_text VARCHAR(255);\n\n -- Perform all updates within a single transaction\n\n DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; RESIGNAL; END;\n\n START TRANSACTION;\n\n -- Validate that the specified activity is eligible to be removed\n\n SELECT can_diagnostic_be_removed_from_student_history(input_activity_id_to_remove, input_score_to_remove,\n input_user_name, input_state_id, input_school_name, input_subject_id, input_completion_time,\n input_activity_id_of_replacement, input_score_of_replacement)\n INTO error_text;\n IF (error_text != 'OK') THEN\n SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = error_text' at io.debezium.antlr.ParsingErrorListener.syntaxError(ParsingErrorListener.java:43) at org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:41) at org.antlr.v4.runtime.Parser.notifyErrorListeners(Parser.java:544) at org.antlr.v4.runtime.DefaultErrorStrategy.reportNoViableAlternative(DefaultErrorStrategy.java:310) at org.antlr.v4.runtime.DefaultErrorStrategy.reportError(DefaultErrorStrategy.java:136) at io.debezium.ddl.parser.mysql.generated.MySqlParser.sqlStatements(MySqlParser.java:1157) at io.debezium.ddl.parser.mysql.generated.MySqlParser.root(MySqlParser.java:885) at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.parseTree(MySqlAntlrDdlParser.java:72) at io.debezium.connector.mysql.antlr.MySqlAntlrDdlParser.parseTree(MySqlAntlrDdlParser.java:45) at io.debezium.antlr.AntlrDdlParser.parse(AntlrDdlParser.java:80) at io.debezium.connector.mysql.MySqlSchema.applyDdl(MySqlSchema.java:326) at io.debezium.connector.mysql.BinlogReader.handleQueryEvent(BinlogReader.java:810) at io.debezium.connector.mysql.BinlogReader.handleEvent(BinlogReader.java:590) ... 5 more Caused by: org.antlr.v4.runtime.NoViableAltException at org.antlr.v4.runtime.atn.ParserATNSimulator.noViableAlt(ParserATNSimulator.java:2026) at org.antlr.v4.runtime.atn.ParserATNSimulator.execATN(ParserATNSimulator.java:467) at org.antlr.v4.runtime.atn.ParserATNSimulator.adaptivePredict(ParserATNSimulator.java:393) at io.debezium.ddl.parser.mysql.generated.MySqlParser.sqlStatements(MySqlParser.java:959) ... 12 more [2021-02-02 15:14:58,331] ERROR WorkerSourceTask{id=iready_dbz-0} Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask:173)