Loading innobase/include/srv0srv.h +1 −2 Original line number Diff line number Diff line Loading @@ -77,7 +77,7 @@ extern ulint srv_n_log_groups; extern ulint srv_n_log_files; extern ulint srv_log_file_size; extern ulint srv_log_buffer_size; extern ulint srv_flush_log_at_trx_commit; extern ulong srv_flush_log_at_trx_commit; extern byte srv_latin1_ordering[256];/* The sort order table of the latin1 character set */ Loading Loading @@ -195,7 +195,6 @@ extern mutex_t* kernel_mutex_temp;/* mutex protecting the server, trx structs, #define kernel_mutex (*kernel_mutex_temp) #define SRV_MAX_N_IO_THREADS 100 #define SRV_CONCURRENCY_THRESHOLD 20 /* Array of English strings describing the current state of an i/o handler thread */ Loading innobase/srv/srv0srv.c +6 −5 Original line number Diff line number Diff line Loading @@ -113,7 +113,7 @@ ulint srv_n_log_groups = ULINT_MAX; ulint srv_n_log_files = ULINT_MAX; ulint srv_log_file_size = ULINT_MAX; /* size in database pages */ ulint srv_log_buffer_size = ULINT_MAX; /* size in database pages */ ulint srv_flush_log_at_trx_commit = 1; ulong srv_flush_log_at_trx_commit = 1; byte srv_latin1_ordering[256] /* The sort order table of the latin1 character set. The following table is Loading Loading @@ -258,9 +258,10 @@ threads waiting for locks are not counted into the number because otherwise we could get a deadlock. MySQL creates a thread for each user session, and semaphore contention and convoy problems can occur withput this restriction. Value 10 should be good if there are less than 4 processors + 4 disks in the computer. Bigger computers need bigger values. */ computer. Bigger computers need bigger values. Value 0 will disable the concurrency check. */ ulong srv_thread_concurrency = SRV_CONCURRENCY_THRESHOLD; ulong srv_thread_concurrency = 0; ulong srv_commit_concurrency = 0; os_fast_mutex_t srv_conc_mutex; /* this mutex protects srv_conc data Loading Loading @@ -1141,7 +1142,7 @@ srv_conc_force_enter_innodb( trx_t* trx) /* in: transaction object associated with the thread */ { if (srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading @@ -1167,7 +1168,7 @@ srv_conc_force_exit_innodb( { srv_conc_slot_t* slot = NULL; if (srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading mysql-test/r/innodb.result +3 −3 Original line number Diff line number Diff line Loading @@ -1821,15 +1821,15 @@ Variable_name Value innodb_sync_spin_loops 20 show variables like "innodb_thread_concurrency"; Variable_name Value innodb_thread_concurrency 20 set global innodb_thread_concurrency=1000; innodb_thread_concurrency 0 set global innodb_thread_concurrency=1001; show variables like "innodb_thread_concurrency"; Variable_name Value innodb_thread_concurrency 1000 set global innodb_thread_concurrency=0; show variables like "innodb_thread_concurrency"; Variable_name Value innodb_thread_concurrency 1 innodb_thread_concurrency 0 set global innodb_thread_concurrency=16; show variables like "innodb_thread_concurrency"; Variable_name Value Loading mysql-test/t/innodb.test +1 −1 Original line number Diff line number Diff line Loading @@ -1316,7 +1316,7 @@ show variables like "innodb_sync_spin_loops"; # Test for innodb_thread_concurrency variable show variables like "innodb_thread_concurrency"; set global innodb_thread_concurrency=1000; set global innodb_thread_concurrency=1001; show variables like "innodb_thread_concurrency"; set global innodb_thread_concurrency=0; show variables like "innodb_thread_concurrency"; Loading sql/ha_innodb.cc +3 −5 Original line number Diff line number Diff line Loading @@ -167,7 +167,6 @@ char* innobase_unix_file_flush_method = NULL; /* Below we have boolean-valued start-up parameters, and their default values */ uint innobase_flush_log_at_trx_commit = 1; ulong innobase_fast_shutdown = 1; my_bool innobase_log_archive = FALSE;/* unused */ my_bool innobase_use_doublewrite = TRUE; Loading Loading @@ -339,7 +338,7 @@ innodb_srv_conc_enter_innodb( /*=========================*/ trx_t* trx) /* in: transaction handle */ { if (UNIV_LIKELY(srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD)) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading @@ -356,7 +355,7 @@ innodb_srv_conc_exit_innodb( /*========================*/ trx_t* trx) /* in: transaction handle */ { if (UNIV_LIKELY(srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD)) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading Loading @@ -1341,7 +1340,6 @@ innobase_init(void) srv_log_archive_on = (ulint) innobase_log_archive; #endif /* UNIV_LOG_ARCHIVE */ srv_log_buffer_size = (ulint) innobase_log_buffer_size; srv_flush_log_at_trx_commit = (ulint) innobase_flush_log_at_trx_commit; /* We set srv_pool_size here in units of 1 kB. InnoDB internally changes the value so that it becomes the number of database pages. */ Loading Loading @@ -1816,7 +1814,7 @@ innobase_commit_complete( trx->active_trans = 0; if (srv_flush_log_at_trx_commit == 0) { if (UNIV_UNLIKELY(srv_flush_log_at_trx_commit == 0)) { return(0); } Loading Loading
innobase/include/srv0srv.h +1 −2 Original line number Diff line number Diff line Loading @@ -77,7 +77,7 @@ extern ulint srv_n_log_groups; extern ulint srv_n_log_files; extern ulint srv_log_file_size; extern ulint srv_log_buffer_size; extern ulint srv_flush_log_at_trx_commit; extern ulong srv_flush_log_at_trx_commit; extern byte srv_latin1_ordering[256];/* The sort order table of the latin1 character set */ Loading Loading @@ -195,7 +195,6 @@ extern mutex_t* kernel_mutex_temp;/* mutex protecting the server, trx structs, #define kernel_mutex (*kernel_mutex_temp) #define SRV_MAX_N_IO_THREADS 100 #define SRV_CONCURRENCY_THRESHOLD 20 /* Array of English strings describing the current state of an i/o handler thread */ Loading
innobase/srv/srv0srv.c +6 −5 Original line number Diff line number Diff line Loading @@ -113,7 +113,7 @@ ulint srv_n_log_groups = ULINT_MAX; ulint srv_n_log_files = ULINT_MAX; ulint srv_log_file_size = ULINT_MAX; /* size in database pages */ ulint srv_log_buffer_size = ULINT_MAX; /* size in database pages */ ulint srv_flush_log_at_trx_commit = 1; ulong srv_flush_log_at_trx_commit = 1; byte srv_latin1_ordering[256] /* The sort order table of the latin1 character set. The following table is Loading Loading @@ -258,9 +258,10 @@ threads waiting for locks are not counted into the number because otherwise we could get a deadlock. MySQL creates a thread for each user session, and semaphore contention and convoy problems can occur withput this restriction. Value 10 should be good if there are less than 4 processors + 4 disks in the computer. Bigger computers need bigger values. */ computer. Bigger computers need bigger values. Value 0 will disable the concurrency check. */ ulong srv_thread_concurrency = SRV_CONCURRENCY_THRESHOLD; ulong srv_thread_concurrency = 0; ulong srv_commit_concurrency = 0; os_fast_mutex_t srv_conc_mutex; /* this mutex protects srv_conc data Loading Loading @@ -1141,7 +1142,7 @@ srv_conc_force_enter_innodb( trx_t* trx) /* in: transaction object associated with the thread */ { if (srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading @@ -1167,7 +1168,7 @@ srv_conc_force_exit_innodb( { srv_conc_slot_t* slot = NULL; if (srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading
mysql-test/r/innodb.result +3 −3 Original line number Diff line number Diff line Loading @@ -1821,15 +1821,15 @@ Variable_name Value innodb_sync_spin_loops 20 show variables like "innodb_thread_concurrency"; Variable_name Value innodb_thread_concurrency 20 set global innodb_thread_concurrency=1000; innodb_thread_concurrency 0 set global innodb_thread_concurrency=1001; show variables like "innodb_thread_concurrency"; Variable_name Value innodb_thread_concurrency 1000 set global innodb_thread_concurrency=0; show variables like "innodb_thread_concurrency"; Variable_name Value innodb_thread_concurrency 1 innodb_thread_concurrency 0 set global innodb_thread_concurrency=16; show variables like "innodb_thread_concurrency"; Variable_name Value Loading
mysql-test/t/innodb.test +1 −1 Original line number Diff line number Diff line Loading @@ -1316,7 +1316,7 @@ show variables like "innodb_sync_spin_loops"; # Test for innodb_thread_concurrency variable show variables like "innodb_thread_concurrency"; set global innodb_thread_concurrency=1000; set global innodb_thread_concurrency=1001; show variables like "innodb_thread_concurrency"; set global innodb_thread_concurrency=0; show variables like "innodb_thread_concurrency"; Loading
sql/ha_innodb.cc +3 −5 Original line number Diff line number Diff line Loading @@ -167,7 +167,6 @@ char* innobase_unix_file_flush_method = NULL; /* Below we have boolean-valued start-up parameters, and their default values */ uint innobase_flush_log_at_trx_commit = 1; ulong innobase_fast_shutdown = 1; my_bool innobase_log_archive = FALSE;/* unused */ my_bool innobase_use_doublewrite = TRUE; Loading Loading @@ -339,7 +338,7 @@ innodb_srv_conc_enter_innodb( /*=========================*/ trx_t* trx) /* in: transaction handle */ { if (UNIV_LIKELY(srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD)) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading @@ -356,7 +355,7 @@ innodb_srv_conc_exit_innodb( /*========================*/ trx_t* trx) /* in: transaction handle */ { if (UNIV_LIKELY(srv_thread_concurrency >= SRV_CONCURRENCY_THRESHOLD)) { if (UNIV_LIKELY(!srv_thread_concurrency)) { return; } Loading Loading @@ -1341,7 +1340,6 @@ innobase_init(void) srv_log_archive_on = (ulint) innobase_log_archive; #endif /* UNIV_LOG_ARCHIVE */ srv_log_buffer_size = (ulint) innobase_log_buffer_size; srv_flush_log_at_trx_commit = (ulint) innobase_flush_log_at_trx_commit; /* We set srv_pool_size here in units of 1 kB. InnoDB internally changes the value so that it becomes the number of database pages. */ Loading Loading @@ -1816,7 +1814,7 @@ innobase_commit_complete( trx->active_trans = 0; if (srv_flush_log_at_trx_commit == 0) { if (UNIV_UNLIKELY(srv_flush_log_at_trx_commit == 0)) { return(0); } Loading