diff options
author | Sergei Golubchik <serg@mariadb.org> | 2017-07-18 19:50:11 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-07-18 19:50:11 +0200 |
commit | 59fca5806af65c8379a993f9e604cb0b20a76e2b (patch) | |
tree | bf45588d87679def85e9bc8cef8a1478e1bd1fed /storage/xtradb/srv/srv0srv.c | |
parent | 58aaae6f2a23e68b23727016844d177f178ea8ff (diff) | |
parent | 46977e0a01ae2118df08c3cccaf2f0eaaabd2715 (diff) | |
download | mariadb-git-mariadb-5.5.57.tar.gz |
Merge branch 'merge-xtradb-5.5' into 5.5mariadb-5.5.57
Diffstat (limited to 'storage/xtradb/srv/srv0srv.c')
-rw-r--r-- | storage/xtradb/srv/srv0srv.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/storage/xtradb/srv/srv0srv.c b/storage/xtradb/srv/srv0srv.c index 31a8b3020cc..6d7327c187f 100644 --- a/storage/xtradb/srv/srv0srv.c +++ b/storage/xtradb/srv/srv0srv.c @@ -1,6 +1,6 @@ /***************************************************************************** -Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved. +Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved. Copyright (c) 2008, 2009 Google Inc. Copyright (c) 2009, Percona Inc. Copyright (c) 2013, 2014, SkySQL Ab. All Rights Reserved. @@ -3230,10 +3230,8 @@ srv_redo_log_follow_thread( } while (srv_shutdown_state < SRV_SHUTDOWN_LAST_PHASE); - srv_track_changed_pages = FALSE; log_online_read_shutdown(); os_event_set(srv_redo_log_thread_finished_event); - srv_redo_log_thread_started = FALSE; /* Defensive, not required */ my_thread_end(); os_thread_exit(NULL); @@ -3412,6 +3410,7 @@ srv_master_thread( ib_uint64_t oldest_lsn; ib_time_t last_print_time; + my_thread_init(); #ifdef UNIV_DEBUG_THREAD_CREATION fprintf(stderr, "Master thread starts, id %lu\n", os_thread_pf(os_thread_get_curr_id())); @@ -4120,6 +4119,7 @@ suspend_thread: os_event_wait(slot->event); if (srv_shutdown_state == SRV_SHUTDOWN_EXIT_THREADS) { + my_thread_end(); os_thread_exit(NULL); } @@ -4145,6 +4145,7 @@ srv_purge_thread( ulint next_itr_time; ib_int64_t sig_count; + my_thread_init(); ut_a(srv_n_purge_threads == 1); #ifdef UNIV_PFS_THREAD @@ -4253,6 +4254,8 @@ srv_purge_thread( os_thread_pf(os_thread_get_curr_id())); #endif /* UNIV_DEBUG_THREAD_CREATION */ + my_thread_end(); + /* We count the number of threads in os_thread_exit(). A created thread should always use that to exit and not use return() to exit. */ os_thread_exit(NULL); |