You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

552 lines
18 KiB

MDEV-19514 Defer change buffer merge until pages are requested We will remove the InnoDB background operation of merging buffered changes to secondary index leaf pages. Changes will only be merged as a result of an operation that accesses a secondary index leaf page, such as a SQL statement that performs a lookup via that index, or is modifying the index. Also ROLLBACK and some background operations, such as purging the history of committed transactions, or computing index cardinality statistics, can cause change buffer merge. Encryption key rotation will not perform change buffer merge. The motivation of this change is to simplify the I/O logic and to allow crash recovery to happen in the background (MDEV-14481). We also hope that this will reduce the number of "mystery" crashes due to corrupted data. Because change buffer merge will typically take place as a result of executing SQL statements, there should be a clearer connection between the crash and the SQL statements that were executed when the server crashed. In many cases, a slight performance improvement was observed. This is joint work with Thirunarayanan Balathandayuthapani and was tested by Axel Schwenke and Matthias Leich. The InnoDB monitor counter innodb_ibuf_merge_usec will be removed. On slow shutdown (innodb_fast_shutdown=0), we will continue to merge all buffered changes (and purge all undo log history). Two InnoDB configuration parameters will be changed as follows: innodb_disable_background_merge: Removed. This parameter existed only in debug builds. All change buffer merges will use synchronous reads. innodb_force_recovery will be changed as follows: * innodb_force_recovery=4 will be the same as innodb_force_recovery=3 (the change buffer merge cannot be disabled; it can only happen as a result of an operation that accesses a secondary index leaf page). The option used to be capable of corrupting secondary index leaf pages. Now that capability is removed, and innodb_force_recovery=4 becomes 'safe'. * innodb_force_recovery=5 (which essentially hard-wires SET GLOBAL TRANSACTION ISOLATION LEVEL READ UNCOMMITTED) becomes safe to use. Bogus data can be returned to SQL, but persistent InnoDB data files will not be corrupted further. * innodb_force_recovery=6 (ignore the redo log files) will be the only option that can potentially cause persistent corruption of InnoDB data files. Code changes: buf_page_t::ibuf_exist: New flag, to indicate whether buffered changes exist for a buffer pool page. Pages with pending changes can be returned by buf_page_get_gen(). Previously, the changes were always merged inside buf_page_get_gen() if needed. ibuf_page_exists(const buf_page_t&): Check if a buffered changes exist for an X-latched or read-fixed page. buf_page_get_gen(): Add the parameter allow_ibuf_merge=false. All callers that know that they may be accessing a secondary index leaf page must pass this parameter as allow_ibuf_merge=true, unless it does not matter for that caller whether all buffered changes have been applied. Assert that whenever allow_ibuf_merge holds, the page actually is a leaf page. Attempt change buffer merge only to secondary B-tree index leaf pages. btr_block_get(): Add parameter 'bool merge'. All callers of btr_block_get() should know whether the page could be a secondary index leaf page. If it is not, we should avoid consulting the change buffer bitmap to even consider a merge. This is the main interface to requesting index pages from the buffer pool. ibuf_merge_or_delete_for_page(), recv_recover_page(): Replace buf_page_get_known_nowait() with much simpler logic, because it is now guaranteed that that the block is x-latched or read-fixed. mlog_init_t::mark_ibuf_exist(): Renamed from mlog_init_t::ibuf_merge(). On crash recovery, we will no longer merge any buffered changes for the pages that we read into the buffer pool during the last batch of applying log records. buf_page_get_gen_known_nowait(), BUF_MAKE_YOUNG, BUF_KEEP_OLD: Remove. btr_search_guess_on_hash(): Merge buf_page_get_gen_known_nowait() to its only remaining caller. buf_page_make_young_if_needed(): Define as an inline function. Add the parameter buf_pool. buf_page_peek_if_young(), buf_page_peek_if_too_old(): Add the parameter buf_pool. fil_space_validate_for_mtr_commit(): Remove a bogus comment about background merge of the change buffer. btr_cur_open_at_rnd_pos_func(), btr_cur_search_to_nth_level_func(), btr_cur_open_at_index_side_func(): Use narrower data types and scopes. ibuf_read_merge_pages(): Replaces buf_read_ibuf_merge_pages(). Merge the change buffer by invoking buf_page_get_gen().
6 years ago
  1. --- sysvars_innodb.result
  2. +++ sysvars_innodb,32bit.result
  3. @@ -49,7 +49,7 @@
  4. SESSION_VALUE NULL
  5. DEFAULT_VALUE 8
  6. VARIABLE_SCOPE GLOBAL
  7. -VARIABLE_TYPE BIGINT UNSIGNED
  8. +VARIABLE_TYPE INT UNSIGNED
  9. VARIABLE_COMMENT Number of InnoDB Adaptive Hash Index Partitions (default 8)
  10. NUMERIC_MIN_VALUE 1
  11. NUMERIC_MAX_VALUE 512
  12. @@ -61,7 +61,7 @@
  13. SESSION_VALUE NULL
  14. DEFAULT_VALUE 150000
  15. VARIABLE_SCOPE GLOBAL
  16. -VARIABLE_TYPE BIGINT UNSIGNED
  17. +VARIABLE_TYPE INT UNSIGNED
  18. VARIABLE_COMMENT The upper limit of the sleep delay in usec. Value of 0 disables it.
  19. NUMERIC_MIN_VALUE 0
  20. NUMERIC_MAX_VALUE 1000000
  21. @@ -73,7 +73,7 @@
  22. SESSION_VALUE NULL
  23. DEFAULT_VALUE 64
  24. VARIABLE_SCOPE GLOBAL
  25. -VARIABLE_TYPE BIGINT UNSIGNED
  26. +VARIABLE_TYPE INT UNSIGNED
  27. VARIABLE_COMMENT Data file autoextend increment in megabytes
  28. NUMERIC_MIN_VALUE 1
  29. NUMERIC_MAX_VALUE 1000
  30. @@ -85,7 +85,7 @@
  31. SESSION_VALUE NULL
  32. DEFAULT_VALUE 1
  33. VARIABLE_SCOPE GLOBAL
  34. -VARIABLE_TYPE BIGINT
  35. +VARIABLE_TYPE INT
  36. VARIABLE_COMMENT The AUTOINC lock modes supported by InnoDB: 0 => Old style AUTOINC locking (for backward compatibility); 1 => New style AUTOINC locking; 2 => No AUTOINC locking (unsafe for SBR)
  37. NUMERIC_MIN_VALUE 0
  38. NUMERIC_MAX_VALUE 2
  39. @@ -157,10 +157,10 @@
  40. SESSION_VALUE NULL
  41. DEFAULT_VALUE 134217728
  42. VARIABLE_SCOPE GLOBAL
  43. -VARIABLE_TYPE BIGINT UNSIGNED
  44. +VARIABLE_TYPE INT UNSIGNED
  45. VARIABLE_COMMENT Size of a single memory chunk within each buffer pool instance for resizing buffer pool. Online buffer pool resizing happens at this granularity. 0 means disable resizing buffer pool.
  46. NUMERIC_MIN_VALUE 1048576
  47. -NUMERIC_MAX_VALUE 9223372036854775807
  48. +NUMERIC_MAX_VALUE 2147483647
  49. NUMERIC_BLOCK_SIZE 1048576
  50. ENUM_VALUE_LIST NULL
  51. READ_ONLY YES
  52. @@ -193,7 +193,7 @@
  53. SESSION_VALUE NULL
  54. DEFAULT_VALUE 25
  55. VARIABLE_SCOPE GLOBAL
  56. -VARIABLE_TYPE BIGINT UNSIGNED
  57. +VARIABLE_TYPE INT UNSIGNED
  58. VARIABLE_COMMENT Dump only the hottest N% of each buffer pool, defaults to 25
  59. NUMERIC_MIN_VALUE 1
  60. NUMERIC_MAX_VALUE 100
  61. @@ -229,7 +229,7 @@
  62. SESSION_VALUE NULL
  63. DEFAULT_VALUE 0
  64. VARIABLE_SCOPE GLOBAL
  65. -VARIABLE_TYPE BIGINT UNSIGNED
  66. +VARIABLE_TYPE INT UNSIGNED
  67. VARIABLE_COMMENT Number of buffer pool instances, set to higher value on high-end machines to increase scalability
  68. NUMERIC_MIN_VALUE 0
  69. NUMERIC_MAX_VALUE 64
  70. @@ -289,7 +289,7 @@
  71. SESSION_VALUE NULL
  72. DEFAULT_VALUE 0
  73. VARIABLE_SCOPE GLOBAL
  74. -VARIABLE_TYPE BIGINT UNSIGNED
  75. +VARIABLE_TYPE INT UNSIGNED
  76. VARIABLE_COMMENT A number between [0, 100] that tells how oftern buffer pool dump status in percentages should be printed. E.g. 10 means that buffer pool dump status is printed when every 10% of number of buffer pool pages are dumped. Default is 0 (only start and end status is printed).
  77. NUMERIC_MIN_VALUE 0
  78. NUMERIC_MAX_VALUE 100
  79. @@ -373,7 +373,7 @@
  80. SESSION_VALUE NULL
  81. DEFAULT_VALUE 0
  82. VARIABLE_SCOPE GLOBAL
  83. -VARIABLE_TYPE BIGINT UNSIGNED
  84. +VARIABLE_TYPE INT UNSIGNED
  85. VARIABLE_COMMENT Helps in performance tuning in heavily concurrent environments.
  86. NUMERIC_MIN_VALUE 0
  87. NUMERIC_MAX_VALUE 1000
  88. @@ -409,7 +409,7 @@
  89. SESSION_VALUE NULL
  90. DEFAULT_VALUE 5
  91. VARIABLE_SCOPE GLOBAL
  92. -VARIABLE_TYPE BIGINT UNSIGNED
  93. +VARIABLE_TYPE INT UNSIGNED
  94. VARIABLE_COMMENT If the compression failure rate of a table is greater than this number more padding is added to the pages to reduce the failures. A value of zero implies no padding
  95. NUMERIC_MIN_VALUE 0
  96. NUMERIC_MAX_VALUE 100
  97. @@ -433,7 +433,7 @@
  98. SESSION_VALUE NULL
  99. DEFAULT_VALUE 50
  100. VARIABLE_SCOPE GLOBAL
  101. -VARIABLE_TYPE BIGINT UNSIGNED
  102. +VARIABLE_TYPE INT UNSIGNED
  103. VARIABLE_COMMENT Percentage of empty space on a data page that can be reserved to make the page compressible.
  104. NUMERIC_MIN_VALUE 0
  105. NUMERIC_MAX_VALUE 75
  106. @@ -445,10 +445,10 @@
  107. SESSION_VALUE NULL
  108. DEFAULT_VALUE 5000
  109. VARIABLE_SCOPE GLOBAL
  110. -VARIABLE_TYPE BIGINT UNSIGNED
  111. +VARIABLE_TYPE INT UNSIGNED
  112. VARIABLE_COMMENT Number of times a thread is allowed to enter InnoDB within the same SQL query after it has once got the ticket
  113. NUMERIC_MIN_VALUE 1
  114. -NUMERIC_MAX_VALUE 18446744073709551615
  115. +NUMERIC_MAX_VALUE 4294967295
  116. NUMERIC_BLOCK_SIZE 0
  117. ENUM_VALUE_LIST NULL
  118. READ_ONLY NO
  119. @@ -673,7 +673,7 @@
  120. SESSION_VALUE NULL
  121. DEFAULT_VALUE 120
  122. VARIABLE_SCOPE GLOBAL
  123. -VARIABLE_TYPE BIGINT UNSIGNED
  124. +VARIABLE_TYPE INT UNSIGNED
  125. VARIABLE_COMMENT Number of pages reserved in doublewrite buffer for batch flushing
  126. NUMERIC_MIN_VALUE 1
  127. NUMERIC_MAX_VALUE 127
  128. @@ -769,7 +769,7 @@
  129. SESSION_VALUE NULL
  130. DEFAULT_VALUE 600
  131. VARIABLE_SCOPE GLOBAL
  132. -VARIABLE_TYPE BIGINT UNSIGNED
  133. +VARIABLE_TYPE INT UNSIGNED
  134. VARIABLE_COMMENT Maximum number of seconds that semaphore times out in InnoDB.
  135. NUMERIC_MIN_VALUE 1
  136. NUMERIC_MAX_VALUE 4294967295
  137. @@ -817,7 +817,7 @@
  138. SESSION_VALUE NULL
  139. DEFAULT_VALUE 0
  140. VARIABLE_SCOPE GLOBAL
  141. -VARIABLE_TYPE BIGINT UNSIGNED
  142. +VARIABLE_TYPE INT UNSIGNED
  143. VARIABLE_COMMENT Make the first page of the given tablespace dirty.
  144. NUMERIC_MIN_VALUE 0
  145. NUMERIC_MAX_VALUE 4294967295
  146. @@ -829,7 +829,7 @@
  147. SESSION_VALUE NULL
  148. DEFAULT_VALUE 30
  149. VARIABLE_SCOPE GLOBAL
  150. -VARIABLE_TYPE BIGINT UNSIGNED
  151. +VARIABLE_TYPE INT UNSIGNED
  152. VARIABLE_COMMENT Number of iterations over which the background flushing is averaged.
  153. NUMERIC_MIN_VALUE 1
  154. NUMERIC_MAX_VALUE 1000
  155. @@ -853,7 +853,7 @@
  156. SESSION_VALUE NULL
  157. DEFAULT_VALUE 1
  158. VARIABLE_SCOPE GLOBAL
  159. -VARIABLE_TYPE BIGINT UNSIGNED
  160. +VARIABLE_TYPE INT UNSIGNED
  161. VARIABLE_COMMENT Controls the durability/speed trade-off for commits. Set to 0 (write and flush redo log to disk only once per second), 1 (flush to disk at each commit), 2 (write to log at commit but flush to disk only once per second) or 3 (flush to disk at prepare and at commit, slower and usually redundant). 1 and 3 guarantees that after a crash, committed transactions will not be lost and will be consistent with the binlog and other transactional engines. 2 can get inconsistent and lose transactions if there is a power failure or kernel crash but not if mysqld crashes. 0 has no guarantees in case of crash. 0 and 2 can be faster than 1 or 3.
  162. NUMERIC_MIN_VALUE 0
  163. NUMERIC_MAX_VALUE 3
  164. @@ -877,7 +877,7 @@
  165. SESSION_VALUE NULL
  166. DEFAULT_VALUE 1
  167. VARIABLE_SCOPE GLOBAL
  168. -VARIABLE_TYPE BIGINT UNSIGNED
  169. +VARIABLE_TYPE INT UNSIGNED
  170. VARIABLE_COMMENT Set to 0 (don't flush neighbors from buffer pool), 1 (flush contiguous neighbors from buffer pool) or 2 (flush neighbors from buffer pool), when flushing a block
  171. NUMERIC_MIN_VALUE 0
  172. NUMERIC_MAX_VALUE 2
  173. @@ -925,7 +925,7 @@
  174. SESSION_VALUE NULL
  175. DEFAULT_VALUE 0
  176. VARIABLE_SCOPE GLOBAL
  177. -VARIABLE_TYPE BIGINT UNSIGNED
  178. +VARIABLE_TYPE INT UNSIGNED
  179. VARIABLE_COMMENT Helps to save your data in case the disk image of the database becomes corrupt. Value 5 can return bogus data, and 6 can permanently corrupt data.
  180. NUMERIC_MIN_VALUE 0
  181. NUMERIC_MAX_VALUE 6
  182. @@ -949,7 +949,7 @@
  183. SESSION_VALUE NULL
  184. DEFAULT_VALUE 8000000
  185. VARIABLE_SCOPE GLOBAL
  186. -VARIABLE_TYPE BIGINT UNSIGNED
  187. +VARIABLE_TYPE INT UNSIGNED
  188. VARIABLE_COMMENT InnoDB Fulltext search cache size in bytes
  189. NUMERIC_MIN_VALUE 1600000
  190. NUMERIC_MAX_VALUE 80000000
  191. @@ -985,7 +985,7 @@
  192. SESSION_VALUE NULL
  193. DEFAULT_VALUE 84
  194. VARIABLE_SCOPE GLOBAL
  195. -VARIABLE_TYPE BIGINT UNSIGNED
  196. +VARIABLE_TYPE INT UNSIGNED
  197. VARIABLE_COMMENT InnoDB Fulltext search maximum token size in characters
  198. NUMERIC_MIN_VALUE 10
  199. NUMERIC_MAX_VALUE 84
  200. @@ -997,7 +997,7 @@
  201. SESSION_VALUE NULL
  202. DEFAULT_VALUE 3
  203. VARIABLE_SCOPE GLOBAL
  204. -VARIABLE_TYPE BIGINT UNSIGNED
  205. +VARIABLE_TYPE INT UNSIGNED
  206. VARIABLE_COMMENT InnoDB Fulltext search minimum token size in characters
  207. NUMERIC_MIN_VALUE 0
  208. NUMERIC_MAX_VALUE 16
  209. @@ -1009,7 +1009,7 @@
  210. SESSION_VALUE NULL
  211. DEFAULT_VALUE 2000
  212. VARIABLE_SCOPE GLOBAL
  213. -VARIABLE_TYPE BIGINT UNSIGNED
  214. +VARIABLE_TYPE INT UNSIGNED
  215. VARIABLE_COMMENT InnoDB Fulltext search number of words to optimize for each optimize table call
  216. NUMERIC_MIN_VALUE 1000
  217. NUMERIC_MAX_VALUE 10000
  218. @@ -1021,10 +1021,10 @@
  219. SESSION_VALUE NULL
  220. DEFAULT_VALUE 2000000000
  221. VARIABLE_SCOPE GLOBAL
  222. -VARIABLE_TYPE BIGINT UNSIGNED
  223. +VARIABLE_TYPE INT UNSIGNED
  224. VARIABLE_COMMENT InnoDB Fulltext search query result cache limit in bytes
  225. NUMERIC_MIN_VALUE 1000000
  226. -NUMERIC_MAX_VALUE 18446744073709551615
  227. +NUMERIC_MAX_VALUE 4294967295
  228. NUMERIC_BLOCK_SIZE 0
  229. ENUM_VALUE_LIST NULL
  230. READ_ONLY NO
  231. @@ -1045,7 +1045,7 @@
  232. SESSION_VALUE NULL
  233. DEFAULT_VALUE 2
  234. VARIABLE_SCOPE GLOBAL
  235. -VARIABLE_TYPE BIGINT UNSIGNED
  236. +VARIABLE_TYPE INT UNSIGNED
  237. VARIABLE_COMMENT InnoDB Fulltext search parallel sort degree, will round up to nearest power of 2 number
  238. NUMERIC_MIN_VALUE 1
  239. NUMERIC_MAX_VALUE 16
  240. @@ -1057,7 +1057,7 @@
  241. SESSION_VALUE NULL
  242. DEFAULT_VALUE 640000000
  243. VARIABLE_SCOPE GLOBAL
  244. -VARIABLE_TYPE BIGINT UNSIGNED
  245. +VARIABLE_TYPE INT UNSIGNED
  246. VARIABLE_COMMENT Total memory allocated for InnoDB Fulltext Search cache
  247. NUMERIC_MIN_VALUE 32000000
  248. NUMERIC_MAX_VALUE 1600000000
  249. @@ -1081,7 +1081,7 @@
  250. SESSION_VALUE NULL
  251. DEFAULT_VALUE 100
  252. VARIABLE_SCOPE GLOBAL
  253. -VARIABLE_TYPE BIGINT UNSIGNED
  254. +VARIABLE_TYPE INT UNSIGNED
  255. VARIABLE_COMMENT Up to what percentage of dirty pages should be flushed when innodb finds it has spare resources to do so.
  256. NUMERIC_MIN_VALUE 0
  257. NUMERIC_MAX_VALUE 100
  258. @@ -1105,22 +1105,22 @@
  259. SESSION_VALUE NULL
  260. DEFAULT_VALUE 200
  261. VARIABLE_SCOPE GLOBAL
  262. -VARIABLE_TYPE BIGINT UNSIGNED
  263. +VARIABLE_TYPE INT UNSIGNED
  264. VARIABLE_COMMENT Number of IOPs the server can do. Tunes the background IO rate
  265. NUMERIC_MIN_VALUE 100
  266. -NUMERIC_MAX_VALUE 18446744073709551615
  267. +NUMERIC_MAX_VALUE 4294967295
  268. NUMERIC_BLOCK_SIZE 0
  269. ENUM_VALUE_LIST NULL
  270. READ_ONLY NO
  271. COMMAND_LINE_ARGUMENT REQUIRED
  272. VARIABLE_NAME INNODB_IO_CAPACITY_MAX
  273. SESSION_VALUE NULL
  274. -DEFAULT_VALUE 18446744073709551615
  275. +DEFAULT_VALUE 4294967295
  276. VARIABLE_SCOPE GLOBAL
  277. -VARIABLE_TYPE BIGINT UNSIGNED
  278. +VARIABLE_TYPE INT UNSIGNED
  279. VARIABLE_COMMENT Limit to which innodb_io_capacity can be inflated.
  280. NUMERIC_MIN_VALUE 100
  281. -NUMERIC_MAX_VALUE 18446744073709551615
  282. +NUMERIC_MAX_VALUE 4294967295
  283. NUMERIC_BLOCK_SIZE 0
  284. ENUM_VALUE_LIST NULL
  285. READ_ONLY NO
  286. @@ -1165,7 +1165,7 @@
  287. SESSION_VALUE 50
  288. DEFAULT_VALUE 50
  289. VARIABLE_SCOPE SESSION
  290. -VARIABLE_TYPE BIGINT UNSIGNED
  291. +VARIABLE_TYPE INT UNSIGNED
  292. VARIABLE_COMMENT Timeout in seconds an InnoDB transaction may wait for a lock before being rolled back. Values above 100000000 disable the timeout.
  293. NUMERIC_MIN_VALUE 0
  294. NUMERIC_MAX_VALUE 1073741824
  295. @@ -1177,10 +1177,10 @@
  296. SESSION_VALUE NULL
  297. DEFAULT_VALUE 16777216
  298. VARIABLE_SCOPE GLOBAL
  299. -VARIABLE_TYPE BIGINT UNSIGNED
  300. +VARIABLE_TYPE INT UNSIGNED
  301. VARIABLE_COMMENT The size of the buffer which InnoDB uses to write log to the log files on disk.
  302. NUMERIC_MIN_VALUE 262144
  303. -NUMERIC_MAX_VALUE 9223372036854775807
  304. +NUMERIC_MAX_VALUE 2147483647
  305. NUMERIC_BLOCK_SIZE 1024
  306. ENUM_VALUE_LIST NULL
  307. READ_ONLY YES
  308. @@ -1225,7 +1225,7 @@
  309. SESSION_VALUE NULL
  310. DEFAULT_VALUE 2
  311. VARIABLE_SCOPE GLOBAL
  312. -VARIABLE_TYPE BIGINT UNSIGNED
  313. +VARIABLE_TYPE INT UNSIGNED
  314. VARIABLE_COMMENT Number of log files in the log group. InnoDB writes to the files in a circular fashion.
  315. NUMERIC_MIN_VALUE 1
  316. NUMERIC_MAX_VALUE 100
  317. @@ -1240,7 +1240,7 @@
  318. VARIABLE_TYPE BIGINT UNSIGNED
  319. VARIABLE_COMMENT Size of each log file in a log group.
  320. NUMERIC_MIN_VALUE 1048576
  321. -NUMERIC_MAX_VALUE 17592186044415
  322. +NUMERIC_MAX_VALUE 18446744073709551615
  323. NUMERIC_BLOCK_SIZE 65536
  324. ENUM_VALUE_LIST NULL
  325. READ_ONLY YES
  326. @@ -1273,7 +1273,7 @@
  327. SESSION_VALUE NULL
  328. DEFAULT_VALUE 8192
  329. VARIABLE_SCOPE GLOBAL
  330. -VARIABLE_TYPE BIGINT UNSIGNED
  331. +VARIABLE_TYPE INT UNSIGNED
  332. VARIABLE_COMMENT Redo log write ahead unit size to avoid read-on-write, it should match the OS cache block IO size
  333. NUMERIC_MIN_VALUE 512
  334. NUMERIC_MAX_VALUE 16384
  335. @@ -1285,10 +1285,10 @@
  336. SESSION_VALUE NULL
  337. DEFAULT_VALUE 1024
  338. VARIABLE_SCOPE GLOBAL
  339. -VARIABLE_TYPE BIGINT UNSIGNED
  340. +VARIABLE_TYPE INT UNSIGNED
  341. VARIABLE_COMMENT How deep to scan LRU to keep it clean
  342. NUMERIC_MIN_VALUE 100
  343. -NUMERIC_MAX_VALUE 18446744073709551615
  344. +NUMERIC_MAX_VALUE 4294967295
  345. NUMERIC_BLOCK_SIZE 0
  346. ENUM_VALUE_LIST NULL
  347. READ_ONLY NO
  348. @@ -1333,10 +1333,10 @@
  349. SESSION_VALUE NULL
  350. DEFAULT_VALUE 0
  351. VARIABLE_SCOPE GLOBAL
  352. -VARIABLE_TYPE BIGINT UNSIGNED
  353. +VARIABLE_TYPE INT UNSIGNED
  354. VARIABLE_COMMENT Desired maximum length of the purge queue (0 = no limit)
  355. NUMERIC_MIN_VALUE 0
  356. -NUMERIC_MAX_VALUE 18446744073709551615
  357. +NUMERIC_MAX_VALUE 4294967295
  358. NUMERIC_BLOCK_SIZE 0
  359. ENUM_VALUE_LIST NULL
  360. READ_ONLY NO
  361. @@ -1345,7 +1345,7 @@
  362. SESSION_VALUE NULL
  363. DEFAULT_VALUE 0
  364. VARIABLE_SCOPE GLOBAL
  365. -VARIABLE_TYPE BIGINT UNSIGNED
  366. +VARIABLE_TYPE INT UNSIGNED
  367. VARIABLE_COMMENT Maximum delay of user threads in micro-seconds
  368. NUMERIC_MIN_VALUE 0
  369. NUMERIC_MAX_VALUE 10000000
  370. @@ -1465,10 +1465,10 @@
  371. SESSION_VALUE NULL
  372. DEFAULT_VALUE 0
  373. VARIABLE_SCOPE GLOBAL
  374. -VARIABLE_TYPE BIGINT UNSIGNED
  375. +VARIABLE_TYPE INT UNSIGNED
  376. VARIABLE_COMMENT How many files at the maximum InnoDB keeps open at the same time.
  377. NUMERIC_MIN_VALUE 0
  378. -NUMERIC_MAX_VALUE 9223372036854775807
  379. +NUMERIC_MAX_VALUE 2147483647
  380. NUMERIC_BLOCK_SIZE 0
  381. ENUM_VALUE_LIST NULL
  382. READ_ONLY YES
  383. @@ -1489,7 +1489,7 @@
  384. SESSION_VALUE NULL
  385. DEFAULT_VALUE 4
  386. VARIABLE_SCOPE GLOBAL
  387. -VARIABLE_TYPE BIGINT UNSIGNED
  388. +VARIABLE_TYPE INT UNSIGNED
  389. VARIABLE_COMMENT Page cleaner threads can be from 1 to 64. Default is 4.
  390. NUMERIC_MIN_VALUE 1
  391. NUMERIC_MAX_VALUE 64
  392. @@ -1513,7 +1513,7 @@
  393. SESSION_VALUE NULL
  394. DEFAULT_VALUE 16
  395. VARIABLE_SCOPE GLOBAL
  396. -VARIABLE_TYPE BIGINT UNSIGNED
  397. +VARIABLE_TYPE INT UNSIGNED
  398. VARIABLE_COMMENT Number of rw_locks protecting buffer pool page_hash. Rounded up to the next power of 2
  399. NUMERIC_MIN_VALUE 1
  400. NUMERIC_MAX_VALUE 1024
  401. @@ -1525,7 +1525,7 @@
  402. SESSION_VALUE NULL
  403. DEFAULT_VALUE 16384
  404. VARIABLE_SCOPE GLOBAL
  405. -VARIABLE_TYPE BIGINT UNSIGNED
  406. +VARIABLE_TYPE INT UNSIGNED
  407. VARIABLE_COMMENT Page size to use for all InnoDB tablespaces.
  408. NUMERIC_MIN_VALUE 4096
  409. NUMERIC_MAX_VALUE 65536
  410. @@ -1561,7 +1561,7 @@
  411. SESSION_VALUE NULL
  412. DEFAULT_VALUE 300
  413. VARIABLE_SCOPE GLOBAL
  414. -VARIABLE_TYPE BIGINT UNSIGNED
  415. +VARIABLE_TYPE INT UNSIGNED
  416. VARIABLE_COMMENT Number of UNDO log pages to purge in one batch from the history list.
  417. NUMERIC_MIN_VALUE 1
  418. NUMERIC_MAX_VALUE 5000
  419. @@ -1573,7 +1573,7 @@
  420. SESSION_VALUE NULL
  421. DEFAULT_VALUE 128
  422. VARIABLE_SCOPE GLOBAL
  423. -VARIABLE_TYPE BIGINT UNSIGNED
  424. +VARIABLE_TYPE INT UNSIGNED
  425. VARIABLE_COMMENT Dictates rate at which UNDO records are purged. Value N means purge rollback segment(s) on every Nth iteration of purge invocation
  426. NUMERIC_MIN_VALUE 1
  427. NUMERIC_MAX_VALUE 128
  428. @@ -1585,7 +1585,7 @@
  429. SESSION_VALUE NULL
  430. DEFAULT_VALUE 4
  431. VARIABLE_SCOPE GLOBAL
  432. -VARIABLE_TYPE BIGINT UNSIGNED
  433. +VARIABLE_TYPE INT UNSIGNED
  434. VARIABLE_COMMENT Purge threads can be from 1 to 32. Default is 4.
  435. NUMERIC_MIN_VALUE 1
  436. NUMERIC_MAX_VALUE 32
  437. @@ -1609,7 +1609,7 @@
  438. SESSION_VALUE NULL
  439. DEFAULT_VALUE 56
  440. VARIABLE_SCOPE GLOBAL
  441. -VARIABLE_TYPE BIGINT UNSIGNED
  442. +VARIABLE_TYPE INT UNSIGNED
  443. VARIABLE_COMMENT Number of pages that must be accessed sequentially for InnoDB to trigger a readahead.
  444. NUMERIC_MIN_VALUE 0
  445. NUMERIC_MAX_VALUE 64
  446. @@ -1621,7 +1621,7 @@
  447. SESSION_VALUE NULL
  448. DEFAULT_VALUE 4
  449. VARIABLE_SCOPE GLOBAL
  450. -VARIABLE_TYPE BIGINT UNSIGNED
  451. +VARIABLE_TYPE INT UNSIGNED
  452. VARIABLE_COMMENT Number of background read I/O threads in InnoDB.
  453. NUMERIC_MIN_VALUE 1
  454. NUMERIC_MAX_VALUE 64
  455. @@ -1645,10 +1645,10 @@
  456. SESSION_VALUE NULL
  457. DEFAULT_VALUE 0
  458. VARIABLE_SCOPE GLOBAL
  459. -VARIABLE_TYPE BIGINT UNSIGNED
  460. +VARIABLE_TYPE INT UNSIGNED
  461. VARIABLE_COMMENT Replication thread delay (ms) on the slave server if innodb_thread_concurrency is reached (0 by default)
  462. NUMERIC_MIN_VALUE 0
  463. -NUMERIC_MAX_VALUE 18446744073709551615
  464. +NUMERIC_MAX_VALUE 4294967295
  465. NUMERIC_BLOCK_SIZE 0
  466. ENUM_VALUE_LIST NULL
  467. READ_ONLY NO
  468. @@ -1669,7 +1669,7 @@
  469. SESSION_VALUE NULL
  470. DEFAULT_VALUE 0
  471. VARIABLE_SCOPE GLOBAL
  472. -VARIABLE_TYPE BIGINT UNSIGNED
  473. +VARIABLE_TYPE INT UNSIGNED
  474. VARIABLE_COMMENT An InnoDB page number.
  475. NUMERIC_MIN_VALUE 0
  476. NUMERIC_MAX_VALUE 4294967295
  477. @@ -1717,7 +1717,7 @@
  478. SESSION_VALUE NULL
  479. DEFAULT_VALUE 1048576
  480. VARIABLE_SCOPE GLOBAL
  481. -VARIABLE_TYPE BIGINT UNSIGNED
  482. +VARIABLE_TYPE INT UNSIGNED
  483. VARIABLE_COMMENT Memory buffer size for index creation
  484. NUMERIC_MIN_VALUE 65536
  485. NUMERIC_MAX_VALUE 67108864
  486. @@ -1885,7 +1885,7 @@
  487. SESSION_VALUE NULL
  488. DEFAULT_VALUE 1
  489. VARIABLE_SCOPE GLOBAL
  490. -VARIABLE_TYPE BIGINT UNSIGNED
  491. +VARIABLE_TYPE INT UNSIGNED
  492. VARIABLE_COMMENT Size of the mutex/lock wait array.
  493. NUMERIC_MIN_VALUE 1
  494. NUMERIC_MAX_VALUE 1024
  495. @@ -1909,10 +1909,10 @@
  496. SESSION_VALUE NULL
  497. DEFAULT_VALUE 30
  498. VARIABLE_SCOPE GLOBAL
  499. -VARIABLE_TYPE BIGINT UNSIGNED
  500. +VARIABLE_TYPE INT UNSIGNED
  501. VARIABLE_COMMENT Count of spin-loop rounds in InnoDB mutexes (30 by default)
  502. NUMERIC_MIN_VALUE 0
  503. -NUMERIC_MAX_VALUE 18446744073709551615
  504. +NUMERIC_MAX_VALUE 4294967295
  505. NUMERIC_BLOCK_SIZE 0
  506. ENUM_VALUE_LIST NULL
  507. READ_ONLY NO
  508. @@ -1945,7 +1945,7 @@
  509. SESSION_VALUE NULL
  510. DEFAULT_VALUE 0
  511. VARIABLE_SCOPE GLOBAL
  512. -VARIABLE_TYPE BIGINT UNSIGNED
  513. +VARIABLE_TYPE INT UNSIGNED
  514. VARIABLE_COMMENT Helps in performance tuning in heavily concurrent environments. Sets the maximum number of threads allowed inside InnoDB. Value 0 will disable the thread throttling.
  515. NUMERIC_MIN_VALUE 0
  516. NUMERIC_MAX_VALUE 1000
  517. @@ -1957,7 +1957,7 @@
  518. SESSION_VALUE NULL
  519. DEFAULT_VALUE 10000
  520. VARIABLE_SCOPE GLOBAL
  521. -VARIABLE_TYPE BIGINT UNSIGNED
  522. +VARIABLE_TYPE INT UNSIGNED
  523. VARIABLE_COMMENT Time of innodb thread sleeping before joining InnoDB queue (usec). Value 0 disable a sleep
  524. NUMERIC_MIN_VALUE 0
  525. NUMERIC_MAX_VALUE 1000000
  526. @@ -2017,7 +2017,7 @@
  527. SESSION_VALUE NULL
  528. DEFAULT_VALUE 128
  529. VARIABLE_SCOPE GLOBAL
  530. -VARIABLE_TYPE BIGINT UNSIGNED
  531. +VARIABLE_TYPE INT UNSIGNED
  532. VARIABLE_COMMENT Deprecated parameter with no effect.
  533. NUMERIC_MIN_VALUE 0
  534. NUMERIC_MAX_VALUE 128
  535. @@ -2041,7 +2041,7 @@
  536. SESSION_VALUE NULL
  537. DEFAULT_VALUE 0
  538. VARIABLE_SCOPE GLOBAL
  539. -VARIABLE_TYPE BIGINT UNSIGNED
  540. +VARIABLE_TYPE INT UNSIGNED
  541. VARIABLE_COMMENT Number of undo tablespaces to use.
  542. NUMERIC_MIN_VALUE 0
  543. NUMERIC_MAX_VALUE 127
  544. @@ -2065,7 +2065,7 @@
  545. SESSION_VALUE NULL
  546. DEFAULT_VALUE 4
  547. VARIABLE_SCOPE GLOBAL
  548. -VARIABLE_TYPE BIGINT UNSIGNED
  549. +VARIABLE_TYPE INT UNSIGNED
  550. VARIABLE_COMMENT Number of background write I/O threads in InnoDB.
  551. NUMERIC_MIN_VALUE 1
  552. NUMERIC_MAX_VALUE 64