It's a regression because before the patch one can start a server without taking binary logs and activate them later on without restarting.
No, one couldn't. By changing the value of SQL_LOG_BIN one could disable binary logging if it was activated at startup (and then enable again), but If binary log wasn't enabled at startup, sql_log_bin had no effect, either global or session.
Please try, and if you manage to enable the binary log at runtime, please paste the output of how you did it. Here is mine, of MariaDB 5.5.40.
MariaDB [test]> select @@log_bin;
+-----------+
| @@log_bin |
+-----------+
| 0 |
+-----------+
1 row in set (0.00 sec)
MariaDB [test]> set sql_log_bin=1;
Query OK, 0 rows affected (0.00 sec)
MariaDB [test]> create table t1 (i int);
Query OK, 0 rows affected (0.38 sec)
MariaDB [test]> show binary logs;
ERROR 1381 (HY000): You are not using binary logging
MariaDB [test]>
MariaDB [test]> set global sql_log_bin=1;
Query OK, 0 rows affected (0.00 sec)
MariaDB [test]> create table t2 (i int);
Query OK, 0 rows affected (0.25 sec)
MariaDB [test]> show binary logs;
ERROR 1381 (HY000): You are not using binary logging
MariaDB [test]> exit
Bye
elenst@wheezy-64:/data/releases/mariadb-5.5.40-linux-x86_64$ ml test
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.40-MariaDB MariaDB Server
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [test]> select @@log_bin, @@global.log_bin, @@sql_log_bin, @@global.sql_log_bin;
+-----------+------------------+---------------+----------------------+
| @@log_bin | @@global.log_bin | @@sql_log_bin | @@global.sql_log_bin |
+-----------+------------------+---------------+----------------------+
| 0 | 0 | 1 | 1 |
+-----------+------------------+---------------+----------------------+
1 row in set (0.00 sec)
MariaDB [test]> create table t3 (i int);
Query OK, 0 rows affected (0.28 sec)
MariaDB [test]> show binary logs;
ERROR 1381 (HY000): You are not using binary logging
MariaDB [test]> exit
I don't see why it is a regression, why it is a critical and why it is a bug.
Reducing priority and switching to a task. I'll keep the original summary though because I just don't get it.