Bug #91933 MySQL Group Replication - Transaction hangs in COMMIT state at primary
Submitted: 8 Aug 2018 9:22
Reporter: Yashwanth Aluru Email Updates:
Status: Open Impact on me:
Category:MySQL Server: Group Replication Severity:S1 (Critical)
Version:8.0.11 OS:CentOS
Assigned to: CPU Architecture:Any

[8 Aug 2018 9:22] Yashwanth Aluru
I've setup Group Replication on two of our MySQL servers running on unix with version 8.0.11 commercial.

Data transfers happen daily on our servers where we run some ETL services. After setting group replication, I ran our ETL service and observed that certain transactions are hanged up in COMMIT command in the state STARTING when observed in SHOW PROCESSLIST;

I configured the following variables on both primary and secondary,

loose-group_replication_transaction_size_limit = 1073741824
loose-group_replication_flow_control_certifier_threshold = 1
loose-group_replication_flow_control_applier_threshold = 1
slave_parallel_workers = 10
slave_preserve_commit_order = 1
slave_parallel_type = LOGICAL_CLOCK

Below are the default options which I didn't edit,

group_replication_flow_control_mode = QUOTA
group_replication_flow_control_hold_percent = 10
group_replication_flow_control_max_quota = 0
group_replication_flow_control_member_quota_percent = 0
group_replication_flow_control_min_quota = 0
group_replication_flow_control_min_recovery_quota = 0
group_replication_flow_control_period = 1
group_replication_flow_control_release_percent = 50

A transaction that commits around 600 000 records hangs at COMMIT command. Do I need to modify any of the above options or is there any option I need to configure other than these in my my.cnf?

How to repeat:
Ensure above variables are set when you configure group replication. Start a transaction at primary where it performs operations on around 600 000 records of a table. Later see the processlist and the transaction hangs at COMMIT command in the state STARTING for ages.