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

When set at runtime, wsrep_sst_method accepts any value

Details

    Description

      Invalid values are accepted:

      MariaDB [(none)]> set global wsrep_sst_method := 'handwrite rows and send them via post';
      Query OK, 0 rows affected (0.000 sec)
       
      MariaDB [(none)]> select @@wsrep_sst_method;
      +---------------------------------------+
      | @@wsrep_sst_method                    |
      +---------------------------------------+
      | handwrite rows and send them via post |
      +---------------------------------------+
      1 row in set (0.000 sec)
      

      Attachments

        Issue Links

          Activity

            f_razzoli Federico Razzoli created issue -
            danblack Daniel Black made changes -
            Field Original Value New Value
            Description Invalid values are accepted:

            <<sql>>
            MariaDB [(none)]> set global wsrep_sst_method := 'handwrite rows and send them via post';
            Query OK, 0 rows affected (0.000 sec)

            MariaDB [(none)]> select @@wsrep_sst_method;
            +---------------------------------------+
            | @@wsrep_sst_method |
            +---------------------------------------+
            | handwrite rows and send them via post |
            +---------------------------------------+
            1 row in set (0.000 sec)
            <</sql>>
            Invalid values are accepted:

            {code:sql}
            MariaDB [(none)]> set global wsrep_sst_method := 'handwrite rows and send them via post';
            Query OK, 0 rows affected (0.000 sec)

            MariaDB [(none)]> select @@wsrep_sst_method;
            +---------------------------------------+
            | @@wsrep_sst_method |
            +---------------------------------------+
            | handwrite rows and send them via post |
            +---------------------------------------+
            1 row in set (0.000 sec)
            {code:sql}
            danblack Daniel Black made changes -
            Description Invalid values are accepted:

            {code:sql}
            MariaDB [(none)]> set global wsrep_sst_method := 'handwrite rows and send them via post';
            Query OK, 0 rows affected (0.000 sec)

            MariaDB [(none)]> select @@wsrep_sst_method;
            +---------------------------------------+
            | @@wsrep_sst_method |
            +---------------------------------------+
            | handwrite rows and send them via post |
            +---------------------------------------+
            1 row in set (0.000 sec)
            {code:sql}
            Invalid values are accepted:

            {code:sql}
            MariaDB [(none)]> set global wsrep_sst_method := 'handwrite rows and send them via post';
            Query OK, 0 rows affected (0.000 sec)

            MariaDB [(none)]> select @@wsrep_sst_method;
            +---------------------------------------+
            | @@wsrep_sst_method |
            +---------------------------------------+
            | handwrite rows and send them via post |
            +---------------------------------------+
            1 row in set (0.000 sec)
            {code}
            danblack Daniel Black added a comment -

            Well spotted.

            Like your example method too. Need more fun things in bug reports

            danblack Daniel Black added a comment - Well spotted. Like your example method too. Need more fun things in bug reports
            danblack Daniel Black made changes -
            Affects Version/s 10.4.30 [ 28912 ]
            danblack Daniel Black made changes -
            Component/s Galera [ 10124 ]
            danblack Daniel Black made changes -
            Fix Version/s 10.4 [ 22408 ]
            danblack Daniel Black made changes -
            Labels Papercut beginner-friendly
            danblack Daniel Black made changes -
            Fix Version/s 10.5 [ 23123 ]
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.9 [ 26905 ]
            Fix Version/s 10.10 [ 27530 ]
            Fix Version/s 10.11 [ 27614 ]
            Fix Version/s 11.0 [ 28320 ]
            Fix Version/s 11.1 [ 28549 ]
            Fix Version/s 11.2 [ 28603 ]
            serg Sergei Golubchik made changes -
            Assignee Seppo Jaakola [ seppo ]
            serg Sergei Golubchik made changes -
            Priority Major [ 3 ] Critical [ 2 ]
            seppo Seppo Jaakola made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            seppo Seppo Jaakola made changes -
            seppo Seppo Jaakola added a comment -

            wsep_sst_method is checked in donor node when SST request arrives. This is the proper location for enforcing the validity of the SST method, from the vulnerability point of view.

            It is also possible to check the wsrep_sst_method whenever the variable is changed and restrict accepted values in similar way as happens in donor processing. This has no other effect though, but stop the super user experimenting with this variable.

            seppo Seppo Jaakola added a comment - wsep_sst_method is checked in donor node when SST request arrives. This is the proper location for enforcing the validity of the SST method, from the vulnerability point of view. It is also possible to check the wsrep_sst_method whenever the variable is changed and restrict accepted values in similar way as happens in donor processing. This has no other effect though, but stop the super user experimenting with this variable.
            seppo Seppo Jaakola added a comment -

            a PR has been submitted to carry out same validity checks on wsrep_sst_method changing as what the donor node does for incoming SST request

            seppo Seppo Jaakola added a comment - a PR has been submitted to carry out same validity checks on wsrep_sst_method changing as what the donor node does for incoming SST request
            seppo Seppo Jaakola made changes -
            Status In Progress [ 3 ] Stalled [ 10000 ]

            The benefit is that the check will prevent mistakes.

            f_razzoli Federico Razzoli added a comment - The benefit is that the check will prevent mistakes.
            julien.fritsch Julien Fritsch made changes -
            Status Stalled [ 10000 ] In Progress [ 3 ]
            julien.fritsch Julien Fritsch made changes -
            Status In Progress [ 3 ] Needs Feedback [ 10501 ]
            julien.fritsch Julien Fritsch made changes -
            Status Needs Feedback [ 10501 ] Open [ 1 ]
            julien.fritsch Julien Fritsch made changes -
            Assignee Seppo Jaakola [ seppo ] Julien Fritsch [ julien.fritsch ]
            julien.fritsch Julien Fritsch made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            julien.fritsch Julien Fritsch made changes -
            Assignee Julien Fritsch [ julien.fritsch ] Julius Goryavsky [ sysprg ]
            Status In Progress [ 3 ] In Review [ 10002 ]
            sysprg Julius Goryavsky made changes -
            Status In Review [ 10002 ] Stalled [ 10000 ]
            sysprg Julius Goryavsky made changes -
            Status Stalled [ 10000 ] In Progress [ 3 ]
            sysprg Julius Goryavsky added a comment - Fix merged with head revision: https://github.com/MariaDB/server/commit/c7feacb0dee696cf602a19da32d1069d0b0ff7c4
            sysprg Julius Goryavsky made changes -
            Fix Version/s 10.4.32 [ 29300 ]
            Fix Version/s 10.5.23 [ 29012 ]
            Fix Version/s 10.6.16 [ 29014 ]
            Fix Version/s 10.10.7 [ 29018 ]
            Fix Version/s 10.11.6 [ 29020 ]
            Fix Version/s 11.0.4 [ 29021 ]
            Fix Version/s 11.1.3 [ 29023 ]
            Fix Version/s 11.2.2 [ 29035 ]
            Fix Version/s 11.3.1 [ 29416 ]
            Fix Version/s 10.4 [ 22408 ]
            Fix Version/s 10.5 [ 23123 ]
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.9 [ 26905 ]
            Fix Version/s 10.10 [ 27530 ]
            Fix Version/s 10.11 [ 27614 ]
            Fix Version/s 11.0 [ 28320 ]
            Fix Version/s 11.1 [ 28549 ]
            Fix Version/s 11.2 [ 28603 ]
            Resolution Fixed [ 1 ]
            Status In Progress [ 3 ] Closed [ 6 ]

            People

              sysprg Julius Goryavsky
              f_razzoli Federico Razzoli
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.