From: Alfranio Correia Date: December 3 2010 10:24am Subject: bzr commit into mysql-next-mr-wl5569 branch (alfranio.correia:3226) List-Archive: http://lists.mysql.com/commits/125919 Message-Id: <201012031026.oB39JpNL014758@rcsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1236357241==" --===============1236357241== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/acorreia/workspace.sun/repository.mysql.new/bzrwork/wl-5569/mysql-next-mr-wl5569/ based on revid:andrei.elkin@stripped 3226 Alfranio Correia 2010-12-03 Fixed commit_positions() and removed unnecessary checkpoint thread. modified: sql/rpl_rli_pdb.cc sql/rpl_slave.cc === modified file 'sql/rpl_rli_pdb.cc' --- a/sql/rpl_rli_pdb.cc 2010-12-02 18:13:12 +0000 +++ b/sql/rpl_rli_pdb.cc 2010-12-03 10:15:45 +0000 @@ -160,7 +160,7 @@ bool Slave_worker::commit_positions(Log_ bool error= FALSE; group_relay_log_pos= ev->future_event_relay_log_pos; - group_master_log_pos= ev->mts_group_cnt; + group_master_log_pos= ev->log_pos; strmake(group_master_log_name, c_rli->get_group_master_log_name(), sizeof(group_master_log_name)-1); === modified file 'sql/rpl_slave.cc' --- a/sql/rpl_slave.cc 2010-12-02 18:13:12 +0000 +++ b/sql/rpl_slave.cc 2010-12-03 10:15:45 +0000 @@ -3627,122 +3627,6 @@ bool checkpoint_routine(Relay_log_info * DBUG_RETURN(error); } -pthread_handler_t handle_slave_checkpoint(void *arg) -{ - THD *thd; /* needs to be first for thread_stack */ - int error= 0; - Relay_log_info *rli= (Relay_log_info *) arg; - - my_thread_init(); - DBUG_ENTER("handle_slave_worker"); - - rli->checkpoint_running= 1; - - thd= new THD; - if (!thd) - { - sql_print_error("Failed during slave checkpoint initialization"); - - mysql_mutex_lock(&rli->data_lock); - mysql_cond_broadcast(&rli->checkpoint_start_cond); - mysql_mutex_unlock(&rli->data_lock); - - goto err; - } - - thd->thread_stack = (char*)&thd; - - pthread_detach_this_thread(); - - mysql_mutex_lock(&rli->data_lock); - rli->checkpoint_thd= thd; - mysql_cond_broadcast(&rli->checkpoint_start_cond); - mysql_mutex_unlock(&rli->data_lock); - - if (init_slave_thread(thd, SLAVE_THD_CHECKPOINT)) - { - // todo make SQL thread killed - sql_print_error("Failed during slave worker initialization"); - goto err; - } - thd->init_for_queries(); - mysql_mutex_lock(&LOCK_thread_count); - threads.append(thd); - mysql_mutex_unlock(&LOCK_thread_count); - - DBUG_ASSERT(thd->is_slave_error == 0); - - while (!thd->killed && !error) - { - checkpoint_routine(rli); - sleep(1); - } - - mysql_mutex_lock(&rli->data_lock); - rli->checkpoint_running= 0; - rli->checkpoint_thd= NULL; - mysql_cond_broadcast(&rli->checkpoint_stop_cond); - mysql_mutex_unlock(&rli->data_lock); - - if (error) - { - mysql_mutex_lock(&rli->info_thd->LOCK_thd_data); - rli->info_thd->awake(THD::KILL_QUERY); // notify Crdn - mysql_mutex_unlock(&rli->info_thd->LOCK_thd_data); - } - -err: - - if (thd) - { - mysql_mutex_lock(&LOCK_thread_count); - THD_CHECK_SENTRY(thd); - delete thd; - mysql_mutex_unlock(&LOCK_thread_count); - } - - my_thread_end(); - pthread_exit(0); - DBUG_RETURN(0); -} - -int slave_start_checkpoint(Relay_log_info *rli) -{ - pthread_t th; - int error= 0; - - if (pthread_create(&th, &connection_attrib, handle_slave_checkpoint, - (void*) rli)) - { - sql_print_error("Failed during slave checkpoint thread create"); - error= 1; - } - - while (error == 0 && rli->checkpoint_running == 0) - mysql_cond_wait(&rli->checkpoint_start_cond, &rli->data_lock); - - mysql_mutex_unlock(&rli->data_lock); - - return (error); -} - -int slave_stop_checkpoint(Relay_log_info *rli) -{ - mysql_mutex_lock(&rli->info_thd->LOCK_thd_data); - mysql_mutex_lock(&rli->data_lock); - if (rli->checkpoint_thd) - rli->checkpoint_thd->awake(THD::KILL_QUERY); - mysql_mutex_unlock(&rli->data_lock); - mysql_mutex_unlock(&rli->info_thd->LOCK_thd_data); - - mysql_mutex_lock(&rli->data_lock); - while (rli->checkpoint_running == 1) - mysql_cond_wait(&rli->checkpoint_stop_cond, &rli->data_lock); - mysql_mutex_unlock(&rli->data_lock); - - return 0; -} - /** A single Worker thread is forked out. @@ -3873,12 +3757,6 @@ int slave_start_workers(Relay_log_info * goto err; } - /* if (rli->is_parallel_exec()) - { - slave_start_checkpoint(rli); - } - */ - err: return error; } --===============1236357241== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/alfranio.correia@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: alfranio.correia@stripped\ # 8rvcpbwdzoz8rxuu # target_branch: file:///home/acorreia/workspace.sun\ # /repository.mysql.new/bzrwork/wl-5569/mysql-next-mr-wl5569/ # testament_sha1: f7553d1e1840c5f2432ee90b38194fc1861fe6d2 # timestamp: 2010-12-03 10:24:53 +0000 # source_branch: file:///home/acorreia/workspace.sun\ # /repository.mysql.new/bzrwork/wl-5569/mysql-next-mr-wl5563-labs/ # base_revision_id: andrei.elkin@stripped\ # vpfjgnnpbu4fher6 # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWYSfVsYAAfrfgAAQUGP//3sA AAC////wUAR6LPCZ3CQDqgkkgkyfpNB6p7VNpqabU8SZGQeoMElTEU8ybSRPU8UaAD1AANAJRqam miExqfqnqGjQ0DIaAaAxoaGgAyGgAAAAAkkIyNAIYhPJBT9U9GgmQfpShjVzf9Zn24EgtxzK8JJM 2TAwrSxQlgo0HcXDuzMHTkGzGbJncPc40NK0rp5FhDV/8d/I6Sxm1mLDmS0ufGnZUeBNWc+ekJGE flNW/qd4YoWJYB/bjWedRPDZrInoit0aI2JhhLcgrREpfMVnHK1FvclWwO9damImZx2GRa4zFJMI cCCDYbgixq6ExdHcd80qVO6qIDxwAcchoz3Pgh6FKx2mGGCmyLeXENp6rHfhYMBAiriHhBHNkZYD HHM2Zs8xIFEUXVpJyF/M7StDEijCp50HvIXsiAxzOpXz0OB3MTwWE0xO7AQ4WxGeBEocXprSnHyP +ORoVlYtBlIqA3e40rKZ7SuKJGSrM6smKTVHgzmwizyutGIjgHG4qjGTqtzTLsRSwygWHDwV5zdM dbwScajzIoY30jsoER6lmiq7MjWxbC28x7SOyNlkXVtZLUgZIaEzCgXbVWPMyQQiqkXqecrERSeT oA3AZanEz9Ze5Wy4jTnKRzrKORcWll8QSuTzYopRpedE0CB5vDUYna+yu9ljqL9pVSTu1/ye0ciL EGD8rMMw37nklndQMLfhyV5Nq2r3kB00SAvJYjzahBd2stErik4a30I3NDVMT/dvI4yzpQ4RZelZ zDNeePVNubnm/U9DrApoGeX2oiMB2A9hcykZqvcT+7za81566OocJVCUL3IPcCgi25G/nxN69ORd WTCdYUD6EclgRLXqhFHv8AdTFMAQKnnrcaTibZ1ZwwLSF21OpJ0XcKm60Q0DiyyGppuZSPQ9hF2j M2H24vROFKYLY1QQ19ttcWwzIykiGeRo7E9h8Cs3cQp5NuSIUjzVUF6wII+h5GRBED1MoHf0ENyO 5eL8IvI+pwOhmdBTdFGx14AxqJjBOEYGP8fKGp7KsTjH2ET5frpjCwRkirFHm9vlxw5l6KDkMQRw Q/7H6WgfatEXh2B68yQkweLUHVNFHD6/W+zmJOkpGkzI7HEkOLYxUjf7j65AyG3Ij0MjrCMGgIw+ 6KUMfBMlKwTMDK5MIvKMTTMAoRU1B4Et0VL5iglBMrIzrAboHuY8eTDBwRYBqpKex5otD2virJEp DKw0rzQTSDy4hGuqKCOG5KfS9MSwC9POc1hht/X7YkIqb/AC5yn8DieZHA9WLj0RFxEOLrCY1Tjf FNIVTDbh7xoBSpnYh2VfBbt0vI2okEGB+yXc2Q41NHbXWTxSiN1OMi4DBSvVpSjNG48B2P4MikVY KNhWBOSmRyA/8XckU4UJCEn1bGA= --===============1236357241==--