1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-30 19:23:07 +03:00
Commit Graph

1103 Commits

Author SHA1 Message Date
f6fb00d0b4 Merge branch 'stable-23.10' into MCOL-4240 2025-07-30 19:05:41 +04:00
3418e68b78 fix(ddl): MCOL-5974 TIMESTAMP columns are not IS NOT NULL by default in MCS (#3670)
The old behavior was to assign TIMESTAMP columns an IS NOT NULL
constraint if list of constraints was empty. Apparently, this particular
invariant was changed in 11.4 and bugfixes' mcol-5480.test started to
fail.

This patch fixes behavioral difference and reenables mcol-5480 test in
11.4.
2025-07-27 20:06:40 +01:00
a92bd2d142 fix(build): statistics that is not yet available in ES 11.4/11.8 does not break builds anymore 2025-07-25 16:56:32 +01:00
f881bae496 chore(rbo,rules): fixes to compile MCS with ES 10.6 2025-07-21 12:54:07 +01:00
a01c883e07 feat(rbo,rules): mock Histogram for ES < 11.4 2025-07-21 12:54:07 +01:00
e600f11aa9 feat(rbo,rules): use EI statistics for filter ranges 2025-07-21 12:54:07 +01:00
428be12b9b feat(rbo,rules): find suitable indexed column to be used for range partitioning 2025-07-21 12:54:07 +01:00
19fb5a89b7 chore(rbo,rules): separate the rule from common rbo code 2025-07-21 12:54:07 +01:00
15be33fbc5 feat(rbo,rules): refactored statistics storage in gwi and implemented statistics based UNION rewrite. 2025-07-21 12:54:07 +01:00
67295b4320 feat(optimizer,rules): use EI statistics for range filters 2025-07-21 12:54:07 +01:00
3f9ce7779e feat(optimizer): PoC for EI stats retrieval in getSelectPlan() 2025-07-21 12:54:07 +01:00
dfddfedfe5 feat(optimizer): collect EI statistics for a first column in existing tables indexes 2025-07-21 12:54:07 +01:00
e21200da19 feat(optimizer): stack-based filters walker 2025-07-21 12:54:07 +01:00
ef126c4319 feat(optimizer): add fixed bounds for TPC-H 1GB from regr 2025-07-21 12:54:07 +01:00
449029a827 Deep build refactoring phase 2 (#3564)
* configcpp refactored

* chore(build): massive removals, auto add files to debian install file

* chore(build): configure before autobake

* chore(build): use custom cmake commands for components, mariadb-plugin-columnstore.install generated

* chore(build): install deps as separate step for build-packages

* more deps

* chore(codemanagement, build): build refactoring stage2

* chore(safety): Locked Map for MessageqCpp with a simpler way

 Please enter the commit message for your changes. Lines starting

* chore(codemanagement, ci): better coredumps handling, deps fixed

* Delete build/bootstrap_mcs.py

* Update charset.cpp (add license)
2025-07-17 16:14:10 +04:00
902805d5a3 GCC8.5 warning fixed 2025-07-15 23:54:46 +04:00
854c9d5943 Merge branch 'stable-23.10' into MCOL-4240 2025-07-11 16:30:30 +04:00
6e3cf16ce4 chore(MCOL-6018) Fix leaks in Columnstore information tables
Fix introduces unique_ptr around DBRM instance in fill result functions.
Now all paths lead to DBRM instance freeing.
2025-07-06 15:17:08 +04:00
a1a017a475 fix err printing 2025-07-04 19:57:49 +04:00
d031239844 add args to lost connection error when getting system data 2025-07-04 19:57:49 +04:00
a29ac85c7c add partial support for unsupported query syntax 2025-07-04 19:57:49 +04:00
5a9eada4d7 Merge branch 'stable-23.10' into MCOL-4240 2025-07-01 17:05:03 +04:00
70547c7358 chore(plugin): translator walks are now in separate units 2025-06-27 17:38:33 +04:00
9da9144343 feat(optimizer): UNION units now have origin filters pushdown AND partition boundaries filters 2025-06-26 18:35:33 +01:00
8a2ae35918 chore(): review fixes 2025-06-26 18:35:33 +01:00
3bf4394456 feat(optimizer): rewrite rule does not descent into a freshly created UNION unit. 2025-06-26 18:35:33 +01:00
e57832ee64 feat(optimizer): temporary shield optimizer with a session variable 2025-06-26 18:35:33 +01:00
98cb6dddee feat(optimizer): replace simple walk with iterative DFS with convergence 2025-06-26 18:35:33 +01:00
25c7d23c21 feat(optimizer): add session switch to optionally enable optimizer 2025-06-26 18:35:33 +01:00
ab6063bec4 feat(optimizer): moved related code into a separate unit 2025-06-26 18:35:33 +01:00
e07e85b750 feat(optimizer): into derived CSEP rewrite with hardcoded tables 2025-06-26 18:35:33 +01:00
1baaf878d0 feat(optimizer): basic rewrite Union unit into Sub with union 2025-06-26 18:35:33 +01:00
021a95c683 feat(optimizer): rewrite rule refactoring 2025-06-26 18:35:33 +01:00
e73e5834ab feat(optimizer): first cut for rewrite foreign table into UNION rule 2025-06-26 18:35:33 +01:00
79008f4f69 feat(CSEP): CSEP printer with indentations to simplify reading + rewriter skeleton + some test binary to describe minimalistic CSEP localy 2025-06-26 18:35:33 +01:00
3a91cded27 chore(MCOL-6018) Fix incorrect Field_decimal cast
This is a fix of a problem found by UBSAN. MDB changed default type to
represent a decimal result, C-style cast did not do proper type checking
and this one-liner fixes that. Now we will have an assertion if type
changes again.
2025-06-26 19:41:58 +04:00
dd9298f988 feat(plugin): add extra logging to the plugin init 2025-06-19 19:22:01 +04:00
ca42ea9266 Parsing support for ENUM with columnstore engine 2025-06-19 14:33:29 +00:00
5cb7a4ac4c chore(compilatiaon): proper use of plugin_ref 2025-06-02 15:39:42 +04:00
44d1698639 chore(plugin): move having and group by into separate routines 2025-06-02 12:11:41 +01:00
600f10c259 chore(plugin): move order by processing 2025-06-02 12:11:41 +01:00
bb13688ccf chore(plugin): move projection processing into a separate part. 2025-06-02 12:11:41 +01:00
bb833ac9f6 chore(build) : fix debug build with MYSQL_VERSION_ID >= 10090 2025-05-30 19:08:35 +04:00
aa7e0fb9b4 Deep build refactoring phase 1 (#3562)
* configcpp refactored
* logging and datatypes refactored

* more dataconvert
* chore(build): massive removals, auto add files to debian install file
* chore(codemanagement): nodeps headers, potentioal library
* chore(build): configure before autobake
* chore(build): use custom cmake commands for components, mariadb-plugin-columnstore.install generated
* chore(build): install deps as separate step for build-packages
* more deps
* check  debian/mariadb-plugin-columnstore.install automatically
* chore(build): add option for multibracnh compilation
* Fix warning
2025-05-30 14:05:21 +04:00
35578f5f05 fix(): fix API return type difference b/w server versions. 2025-05-29 19:05:34 +01:00
7cf3003727 fix(formating): return to the original formatting 2025-05-29 19:05:34 +01:00
44040b4367 feat(plugin): Replaced THDVAR with more lightweight SYSVAR 2025-05-29 19:05:34 +01:00
9038f0df09 feat(plugin): All InnoDB queries are pushed down to Columnstore if columnstore_innodb_queries_uses_mcs = ON in the configuration before server start 2025-05-29 19:05:34 +01:00
11e5e481ab feat(plugin): fixup for side effects 2025-05-29 19:05:34 +01:00
7b02299f50 feat(plugin): unconditional innodb into MCS pushdown 2025-05-29 19:05:34 +01:00