Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-5495

Server won't start when setting innodb_buffer_pool_size larger than a certain amount

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Not a Bug
    • Affects Version/s: 10.0.8
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Environment:
      Ubuntu 12.04 1GB RAM

      Description

      If I tried to set innodb_buffer_pool_size even as large as 384M I was unable to start the mysqld.

      Unfortunately, I did not save the message from mariadb-error.log before I removed 10.0 and switched to 5.5.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            elenst Elena Stepanova added a comment -

            The value itself works fine in 10.0, it's not even big on the today's standards.

            innodb_buffer_pool_size=384M:

            MariaDB [test]> select @@innodb_buffer_pool_size;
            ---------------------------

            @@innodb_buffer_pool_size

            ---------------------------

            402653184

            ---------------------------
            1 row in set (0.00 sec)

            MariaDB [test]> select @@version;
            ----------------------

            @@version

            ----------------------

            10.0.8-MariaDB-debug

            ----------------------
            1 row in set (0.00 sec)

            innodb_buffer_pool_size=1G:

            MariaDB [test]> select @@innodb_buffer_pool_size;
            ---------------------------

            @@innodb_buffer_pool_size

            ---------------------------

            1073741824

            ---------------------------
            1 row in set (0.00 sec)

            MariaDB [test]> select @@version;
            ----------------------

            @@version

            ----------------------

            10.0.8-MariaDB-debug

            ----------------------
            1 row in set (0.00 sec)

            Considering that your machine has 1Gb RAM, it is not surprising that you couldn't set the value. Some default values got increased comparing to 5.5, so the most likely reason was that you just did not have enough memory to run it this way. If innodb_buffer_pool_size is important for you, you need to reduce some other values.

            Show
            elenst Elena Stepanova added a comment - The value itself works fine in 10.0, it's not even big on the today's standards. innodb_buffer_pool_size=384M: MariaDB [test] > select @@innodb_buffer_pool_size; --------------------------- @@innodb_buffer_pool_size --------------------------- 402653184 --------------------------- 1 row in set (0.00 sec) MariaDB [test] > select @@version; ---------------------- @@version ---------------------- 10.0.8-MariaDB-debug ---------------------- 1 row in set (0.00 sec) innodb_buffer_pool_size=1G: MariaDB [test] > select @@innodb_buffer_pool_size; --------------------------- @@innodb_buffer_pool_size --------------------------- 1073741824 --------------------------- 1 row in set (0.00 sec) MariaDB [test] > select @@version; ---------------------- @@version ---------------------- 10.0.8-MariaDB-debug ---------------------- 1 row in set (0.00 sec) Considering that your machine has 1Gb RAM, it is not surprising that you couldn't set the value. Some default values got increased comparing to 5.5, so the most likely reason was that you just did not have enough memory to run it this way. If innodb_buffer_pool_size is important for you, you need to reduce some other values.
            Hide
            marcisaacson Marc Isaacson added a comment -

            Well, I can tell you that I have the value set to 512M right now under Maria 5.5. Also, according to the documentation, you should be able to set the value to as much as 80% of your total memory.

            So, I still think that there is some issue in Maria 10.

            Show
            marcisaacson Marc Isaacson added a comment - Well, I can tell you that I have the value set to 512M right now under Maria 5.5. Also, according to the documentation, you should be able to set the value to as much as 80% of your total memory. So, I still think that there is some issue in Maria 10.
            Hide
            marcisaacson Marc Isaacson added a comment -

            Ah, sorry. I overlooked the part of your response that said that other default values were increased. Maybe that is the real issue. It could be the combination of the various values.

            Show
            marcisaacson Marc Isaacson added a comment - Ah, sorry. I overlooked the part of your response that said that other default values were increased. Maybe that is the real issue. It could be the combination of the various values.
            Hide
            elenst Elena Stepanova added a comment -

            That's right, the combination of values. You can run SHOW VARIABLES, see buffer sizes, and sum them up to get a rough estimation.

            Regarding documentation suggesting 80%, I guess technically it could be made more accurate, but it would have to go into too much detail. It just does not take into account low-memory configurations.
            The default configuration and general advice assume that modern versions are run on relatively modern configurations. If you use 5.1, 80% of 1 Gb is probably fine. If you use 5.5, 80% of 2 Gb will probably work. If you use 10.0, it's reasonable to expect that you have more memory, even standard modest laptops are nowadays 4 Gb. You can still run it with less memory, but you have to perform some configuration adjustments.

            Show
            elenst Elena Stepanova added a comment - That's right, the combination of values. You can run SHOW VARIABLES, see buffer sizes, and sum them up to get a rough estimation. Regarding documentation suggesting 80%, I guess technically it could be made more accurate, but it would have to go into too much detail. It just does not take into account low-memory configurations. The default configuration and general advice assume that modern versions are run on relatively modern configurations. If you use 5.1, 80% of 1 Gb is probably fine. If you use 5.5, 80% of 2 Gb will probably work. If you use 10.0, it's reasonable to expect that you have more memory, even standard modest laptops are nowadays 4 Gb. You can still run it with less memory, but you have to perform some configuration adjustments.

              People

              • Assignee:
                Unassigned
                Reporter:
                marcisaacson Marc Isaacson
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: