Builds tested: 1.2.5-1, 1.4.2-1 (Released)
Environment: VirtualBox VMS, 4 vCores, 40GB memory
1.2.5-1 is 2.5x faster than 1.4.2-1 for disk run and 3.5x for cached run.
I will check the current develop branches next.
1.2.5-1
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 22
Server version: 10.3.16-MariaDB-log Columnstore 1.2.5-1
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [tpch10]> select count
from orders;
-----------
count |
-----------
-----------
1 row in set (2.172 sec)
MariaDB [tpch10]> select count
from orders o where o_comment like '%express%packages%';
----------
count |
----------
----------
1 row in set (26.337 sec)
MariaDB [tpch10]> select count
from orders o where o_comment like '%express%packages%';
----------
count |
----------
----------
1 row in set (17.063 sec)
1.4.2-1
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 13
Server version: 10.4.11-5-MariaDB-enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [tpch10]> select count
from orders;
-----------
count |
-----------
-----------
1 row in set (1.624 sec)
MariaDB [tpch10]> select count
from orders o where o_comment like '%express%packages%';
----------
count |
----------
----------
1 row in set (1 min 4.240 sec)
MariaDB [tpch10]> select count
from orders o where o_comment like '%express%packages%';
----------
count |
----------
----------
1 row in set (59.390 sec)
MariaDB [tpch10]>
I didn't find the regression out. Here is my methodology. I loaded orders with enough records in both develop-1.2 and 1.4 and run the query. The results differs from version to version but not so radically. FYI I conducted the test in the cloud env so this fact introduced some noise for sure. The results are below.
from orders converged in 8 seconds that is even less then select..like. I think that was a bug. calgettrace(0) info might had pointed to the origins of this timings but we lack this information.
Another fact is that select count
1.2
MariaDB [test]> select count(*) from orders;
+-----------+
| count(*) |
+-----------+
| 153000000 |
+-----------+
1 row in set (0.757 sec)
MariaDB [test]> select count(*) from orders o where o_comment like '%express%packages%';
+----------+
| count(*) |
+----------+
| 1638018 |
+----------+
1 row in set (48.223 sec)
MariaDB [test]>
MariaDB [test]>
MariaDB [test]>
MariaDB [test]> select count(*) from orders o where o_comment like '%express%packages%';
+----------+
| count(*) |
+----------+
| 1638018 |
+----------+
1 row in set (33.524 sec)
MariaDB [test]> select count(*) from orders o where o_comment like '%express%packages%';
+----------+
| count(*) |
+----------+
| 1638018 |
+----------+
1 row in set (29.488 sec)
1.4
MariaDB [test]> select count(*) from orders;
+-----------+
| count(*) |
+-----------+
| 153000000 |
+-----------+
1 row in set (1.211 sec)
MariaDB [test]> select count(*) from orders o where o_comment like '%express%packages%';
+----------+
| count(*) |
+----------+
| 1638018 |
+----------+
1 row in set (56.948 sec)
MariaDB [test]> select count(*) from orders o where o_comment like '%express%packages%';
+----------+
| count(*) |
+----------+
| 1638018 |
+----------+
1 row in set (37.778 sec)
MariaDB [test]> select count(*) from orders o where o_comment like '%express%packages%';
+----------+
| count(*) |
+----------+
| 1638018 |
+----------+
1 row in set (37.612 sec)