forked from facebook/mysql-5.6
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
FB8-132: NUMA support (facebook#987) (facebook#987)
Summary: Jira ticket: https://jira.percona.com/browse/FB8-132 Reference commit: facebook@e50c754 Reference commit: facebook@286e975 WebScaleSQL Feature: NUMA Support Credits for research and implementation: Jeremy Cole and Davi Arnaut This patch provides startup options: * flush-caches: Flush and purge buffers/caches * numa-nodebind: Run mysqld with CPU affinity Note, the original patch provided numa-interleave, but that is supported natively by 8.0 now. It also provides a config option: * innodb_buffer_pool_populate: pre-allocation of buffer pool memory at start up: -- Use MAP_POPULATE if supported (Linux 2.6.23 and higher) -- Forced pre-allocation using memset Automation will pass in the right value to this option if it needs to bind mysqld to a particular socket. That will happen via systemd scripts. This is only adding the capability on the mysqld_safe side to be able to pass in numactl to the server. The turning on of this feature will need more testing and slow roll, and that will happen in different diffs on the ops repo. Pull Request resolved: facebook#987 Reviewed By: lloyd Differential Revision: D14652411 Pulled By: lth ----------------------------------------------------------------------------- Fix InnoDB large_page_aligned_alloc function signature on macOS (facebook#1207) Summary: On Linux, it takes an extra bool parameter for populating mmap'ed memory. This is not available on macOS, so just add an unnamed argument. Pull Request resolved: facebook#1207 Reviewed By: luqun Differential Revision: D38956552 Pulled By: hermanlee
- Loading branch information
Showing
16 changed files
with
205 additions
and
48 deletions.
There are no files selected for viewing
12 changes: 12 additions & 0 deletions
12
mysql-test/suite/sys_vars/r/innodb_buffer_pool_populate_basic.result
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
CALL mtr.add_suppression(".* Forcing preallocation by faulting in pages."); | ||
SELECT @@GLOBAL.innodb_buffer_pool_populate; | ||
@@GLOBAL.innodb_buffer_pool_populate | ||
1 | ||
1 Expected | ||
SET @@GLOBAL.innodb_buffer_pool_populate=0; | ||
ERROR HY000: Variable 'innodb_buffer_pool_populate' is a read only variable | ||
Expected error 'Read only variable' | ||
SELECT @@GLOBAL.innodb_buffer_pool_populate; | ||
@@GLOBAL.innodb_buffer_pool_populate | ||
1 | ||
1 Expected |
1 change: 1 addition & 0 deletions
1
mysql-test/suite/sys_vars/t/innodb_buffer_pool_populate_basic-master.opt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
--innodb-buffer-pool-populate=true |
13 changes: 13 additions & 0 deletions
13
mysql-test/suite/sys_vars/t/innodb_buffer_pool_populate_basic.test
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
CALL mtr.add_suppression(".* Forcing preallocation by faulting in pages."); | ||
|
||
# Display current value of innodb_buffer_pool_populate | ||
SELECT @@GLOBAL.innodb_buffer_pool_populate; | ||
--echo 1 Expected | ||
|
||
# Variable should be read-only | ||
--error ER_INCORRECT_GLOBAL_LOCAL_VAR | ||
SET @@GLOBAL.innodb_buffer_pool_populate=0; | ||
--echo Expected error 'Read only variable' | ||
|
||
SELECT @@GLOBAL.innodb_buffer_pool_populate; | ||
--echo 1 Expected |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.