drrtuy
6c75faee88
chore(rbo,rules,QA): clone now does not copy OB, GB, HAVING and optionally filters.
2025-08-13 13:24:29 +00:00
drrtuy
c19c49ba13
chore(rbo,rules,QA): new extractColumnStatistics, some comments with a bit of re-factoring.
2025-08-13 13:20:57 +00:00
drrtuy
c030ff4224
feat(rbo,rules,QA): index column type is now derived from the corresponding Field
2025-08-13 13:20:57 +00:00
drrtuy
e167082497
feat(rbo,rules,QA): refactored statistics storage
2025-08-13 13:20:57 +00:00
drrtuy
112ba9f162
feat(rbo,rules,QA): changed to way statistics is collected
2025-08-13 13:20:57 +00:00
Leonid Fedorov
da09a1b5d0
Fix build with missing std::
2025-08-13 13:20:57 +00:00
drrtuy
bd219cc4af
feat(cbo,rules,QA): clean SC iface usage in various places
2025-08-13 13:20:57 +00:00
drrtuy
bd168834b1
feat(rbo,rules,QA): refactored last bound filter predicate
2025-08-13 13:20:57 +00:00
drrtuy
134235b2d2
feat(rbo,rules,QA): support expressions in RCs
2025-08-13 13:20:57 +00:00
drrtuy
b07ee73fb3
feat(rbo,rules,QA): filtered RC clone for UNION units.
2025-08-13 13:20:57 +00:00
drrtuy
2f9fec8057
feat(rbo,rule,QA): fixed JOIN example works with QA for one leg of the JOIN.
2025-08-13 13:20:55 +00:00
drrtuy
a1ba7932cd
feat(rbo,rules,QA): the rule now uses target table to consider interesting keys available.
2025-08-13 13:12:31 +00:00
drrtuy
ebaa6cce5c
feat(rbo,rules): preparation to replace derived-based with table-based approach
2025-08-13 13:11:46 +00:00
drrtuy
595b1baad2
feat(rbo,rules): change rule matching part
2025-08-13 13:07:32 +00:00
drrtuy
578c2b1db1
chore(rbo,rules): fixed lost flag value result back propagation to resolve RBO logging and added recursive passes for projection list optimization.
2025-08-13 14:50:58 +04:00
drrtuy
fa76344cfc
chore(rbo): simplistic rulle application logging.
2025-08-13 14:50:58 +04:00
drrtuy
bbac8e70a1
feat(rbo,rules): rule matcher has been replaced with csep filter for a rule to relax rule filter predicates and endless loop has been fixed in pushdown predicates.
2025-08-13 14:50:58 +04:00
drrtuy
67ac7f2f75
fix(rbo,rules): MCOL-6131 predicate pushdown rule for RBO.
2025-08-13 14:50:58 +04:00
drrtuy
209a9e5082
chore(plugin): get rid of SELECT_LEX copy asignment calls.
2025-08-06 23:42:02 +04:00
Leonid Fedorov
8a535e872c
Revert "Deep build refactoring phase 2 ( #3564 )" ( #3678 )
...
This reverts commit 449029a827 .
2025-08-01 02:56:31 +04:00
Leonid Fedorov
82421c208f
chore(ci): collect asan ubsan and libc++ build with mtr and regression status ignored ( #3672 )
...
* MSan added with fixes for libc++
* libc++ sepatare build
* add libc++ to ci
* libstdc++ in CI
* libcpp and msan to external projects
* std::sqrt
* awful_hack(ci): install whole llvm instead of libc++ in terrible way for test containers
* Adding ddeb packages for teststages and repos
* libc++ more for test container
* save some money on debug
* colored coredumps
* revert ci
* chore(ci): collect asan ubsan and libc++ build with mtr and regression status ignored
2025-07-31 00:32:32 +04:00
Sergey Zefirov
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
drrtuy
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
drrtuy
f881bae496
chore(rbo,rules): fixes to compile MCS with ES 10.6
2025-07-21 12:54:07 +01:00
drrtuy
a01c883e07
feat(rbo,rules): mock Histogram for ES < 11.4
2025-07-21 12:54:07 +01:00
drrtuy
e600f11aa9
feat(rbo,rules): use EI statistics for filter ranges
2025-07-21 12:54:07 +01:00
drrtuy
428be12b9b
feat(rbo,rules): find suitable indexed column to be used for range partitioning
2025-07-21 12:54:07 +01:00
drrtuy
19fb5a89b7
chore(rbo,rules): separate the rule from common rbo code
2025-07-21 12:54:07 +01:00
drrtuy
15be33fbc5
feat(rbo,rules): refactored statistics storage in gwi and implemented statistics based UNION rewrite.
2025-07-21 12:54:07 +01:00
drrtuy
67295b4320
feat(optimizer,rules): use EI statistics for range filters
2025-07-21 12:54:07 +01:00
drrtuy
3f9ce7779e
feat(optimizer): PoC for EI stats retrieval in getSelectPlan()
2025-07-21 12:54:07 +01:00
drrtuy
dfddfedfe5
feat(optimizer): collect EI statistics for a first column in existing tables indexes
2025-07-21 12:54:07 +01:00
drrtuy
e21200da19
feat(optimizer): stack-based filters walker
2025-07-21 12:54:07 +01:00
drrtuy
ef126c4319
feat(optimizer): add fixed bounds for TPC-H 1GB from regr
2025-07-21 12:54:07 +01:00
Leonid Fedorov
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
Leonid Fedorov
902805d5a3
GCC8.5 warning fixed
2025-07-15 23:54:46 +04:00
Serguey Zefirov
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
mariadb-KristinaPavlova
a1a017a475
fix err printing
2025-07-04 19:57:49 +04:00
mariadb-KristinaPavlova
d031239844
add args to lost connection error when getting system data
2025-07-04 19:57:49 +04:00
mariadb-KristinaPavlova
a29ac85c7c
add partial support for unsupported query syntax
2025-07-04 19:57:49 +04:00
drrtuy
70547c7358
chore(plugin): translator walks are now in separate units
2025-06-27 17:38:33 +04:00
drrtuy
9da9144343
feat(optimizer): UNION units now have origin filters pushdown AND partition boundaries filters
2025-06-26 18:35:33 +01:00
drrtuy
8a2ae35918
chore(): review fixes
2025-06-26 18:35:33 +01:00
drrtuy
3bf4394456
feat(optimizer): rewrite rule does not descent into a freshly created UNION unit.
2025-06-26 18:35:33 +01:00
drrtuy
e57832ee64
feat(optimizer): temporary shield optimizer with a session variable
2025-06-26 18:35:33 +01:00
drrtuy
98cb6dddee
feat(optimizer): replace simple walk with iterative DFS with convergence
2025-06-26 18:35:33 +01:00
drrtuy
25c7d23c21
feat(optimizer): add session switch to optionally enable optimizer
2025-06-26 18:35:33 +01:00
drrtuy
ab6063bec4
feat(optimizer): moved related code into a separate unit
2025-06-26 18:35:33 +01:00
drrtuy
e07e85b750
feat(optimizer): into derived CSEP rewrite with hardcoded tables
2025-06-26 18:35:33 +01:00
drrtuy
1baaf878d0
feat(optimizer): basic rewrite Union unit into Sub with union
2025-06-26 18:35:33 +01:00