Bug #87842 Typo in temptable_max_ram description
Submitted: 22 Sep 2017 14:44 Modified: 2 Nov 2017 18:28
Reporter: Alexey Kopytov Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Documentation Severity:S3 (Non-critical)
Version:8.0 OS:Any
Assigned to: CPU Architecture:Any

[22 Sep 2017 14:44] Alexey Kopytov
Description:
Description for the temptable_max_ram system variable in the manual says: "Defines the maximum amount of memory that the TempTable storage engine can use before data is stored to disk. The default value is 1073741824 bits (1GiB)." https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_temptable_max_...

I guess it means to say "bytes" instead of "bits".

How to repeat:
See above.
[22 Sep 2017 16:52] MySQL Verification Team
Thank you for the bug report.
[4 Oct 2017 16:53] Paul DuBois
Posted by developer:
 
The values in the docs are as given in the specification (bits).
[4 Oct 2017 17:09] Alexey Kopytov
Paul,

I'm not sure what specification you were referring to, but it contradicts a number of things:

- the description in "mysqld --help":

static Sys_var_ulonglong Sys_temptable_max_ram(
       "temptable_max_ram",
       "Maximum amount of memory (in bytes) the TempTable storage engine is "
       "allowed to allocate from the main memory (RAM) before starting to "
       "store data on disk.",

- source code, for example, the following code in
  storage/temptable/include/temptable/allocator.h clearly indicates the
  amount is in bytes, rather than bits:

  if (bytes_allocated_in_ram > temptable_max_ram) {
    t = Mem_type::DISK;
  } else {
    ...
  }

- the ISO/IEC 80000 standard defining "GiB" as the unit symbol for
  "Gibibyte", whereas "Gibibit" has the unit symbol of "Gibit".

- last, but not least, the tradition to specify amounts of memory in
  bytes rather than bits
[4 Oct 2017 17:16] Daniel Price
Posted by developer:
 
The temptable_max_ram default value is in fact 1073741824 bytes. My error. 

Thank you for the bug report.
[2 Nov 2017 18:28] Daniel Price
The documentation has been updated.
Thank you for the bug report.