Rucha Deodhar
313b4c2212
Merge branch 'stable-23.10' into json_depth-rucha
2025-06-03 16:29:29 +05:30
Rucha Deodhar
53870ac06f
json_depth
2025-06-03 15:56:47 +05:30
Leonid Fedorov
bb833ac9f6
chore(build) : fix debug build with MYSQL_VERSION_ID >= 10090
2025-05-30 19:08:35 +04:00
Leonid Fedorov
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
drrtuy
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
Leonid Fedorov
5814a80b50
MCOL-4671: MCOL-4622: fix the behavior of both PRs
...
first was playing different with RIGHT and LEFT functions(using the getUintVal and getIntVal accordingly)
https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/3234
second introduced round for ints from double, but added it to uint but not to int missing long doubles as well
https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/3480
2025-05-23 05:12:17 +04:00
Leonid Fedorov
842ec9dbff
chore(build): fix duplicating hasRollup
2025-05-23 05:12:17 +04:00
Serguey Zefirov
3bb2496ca1
fix: MCOL-5755: incorrect handling of BLOB (and TEXT) in GROUP BY
...
BLOB fields did not work as grouping keys at all, they were assigned
value NULL for any value, be it NULL or not. The fix is in the
rowaggregation.cpp in the initMapping(), a switch/case branch was added
to handle BLOB field copying there.
Also, TEXT columns did not distinguish between NULL and empty string in
the grouping algorithm, now they do. The fix is in the equals()
function, now we specifically check for isNull() equality between
values.
2025-05-23 05:12:17 +04:00
Alexander Presnyakov
6d1c6d8242
fix(funcexp): MCOL-4671 Fix behaviour of LEFT/RIGHT functions when negative trim length value is passedB
2025-05-23 05:12:17 +04:00
Leonid Fedorov
bfe49a8345
bug(priproc) make last_day type a bit more accurate
...
This fixes discrepance with the server, which assigns DATE type to
last_day()'s result.
Now we also assigns DATE result type and, also, use proper
dataconvert::Day data structure to return date.
Tests agree with InnoDB.
Also, this patch includes test for MCOL-5669, to show we fixed it.
2025-05-23 05:12:17 +04:00
Sergey Zefirov
11324c468d
feat(primproc,aggregegation)!: Changes for ROLLUP with single-phase aggregation ( #3025 )
...
The fix is simple: enable subtotals in single-phase aggregation and
disable parallel processing when there are subtotals and aggregation is
single-phase.
2025-05-23 05:12:17 +04:00
Leonid Fedorov
0359a1fd3a
chore(server_support): fixes to build columnstore branch with server >= 11.5
2025-05-22 17:14:38 +04:00
Leonid Fedorov
bab4578118
bug(memory): add uint128_t specializations for Row::setBinaryField_offset and Row::setBinaryField as we have segfault woth ubsan build
2025-05-21 21:59:08 +04:00
Leonid Fedorov
10c2ce0dd5
chore(memory): fix dynamic stack buffer overflow
2025-05-21 21:59:08 +04:00
Alexey Antipovsky
bd0f59910a
feat(PrimProc): MCOL-5950 Improve disk-based aggregation finalization ( #3525 )
...
* feat(PrimProc): MCOL-5950 Improve disk-based aggregation finalization
Iterate over the rows in the plain vector of RGData instead of
iterating over the hashmap. This reduces the complexity and speeds
up finalization (by up to the twice in the certain cases)
* replace magic constant with muggle constant
2025-05-21 10:53:48 +01:00
Leonid Fedorov
4a8f5830fd
chore(build) update boost to 1.88
2025-05-20 21:43:43 +04:00
Leonid Fedorov
d09b7496e4
Revert "fix(MCOL-5386): Bitwise aggregation functions do not work with wide d…"
...
This reverts commit e0f3bf8322
.
2025-05-20 19:17:05 +04:00
Leonid Fedorov
127dd09a7a
fix back statics
2025-05-20 18:22:59 +04:00
Leonid Fedorov
6db2dc668f
stubs and cmake formatting
2025-05-20 18:22:59 +04:00
Leonid Fedorov
2036e521c7
named linkage
2025-05-20 18:22:59 +04:00
drrtuy
af1864f544
feat(memory): custom OOM exception
2025-05-20 18:22:16 +04:00
drrtuy
e9973c46e4
feat(TNS): change ORDER BY out-of-memory error message. Replaced bad_alloc with IDBExcept in TNS.
2025-05-20 18:22:16 +04:00
Leonid Fedorov
a1019b7c0e
chore(build): refactor main CMakeLists.txt ( #3543 )
...
* chore(build): refactor main CMakeLists.txt
* chore(build): fix boost version for packages, set clang-20 only for amd and arm
* chore(build): boost 4 sm
* chore(build): boost dep for rowgroup
* chore(build): toolset for boost
* chore(build): suppress clang warnings for boost
* chore(ci, build): use ASAN for unittest on ubuntu 24.04 only, added custom cmake flag option for bootstrap, custom params for new and existing pipelines
* chore(build): sort bootstrap flags
* chore(CI): remove publish pkg step, adding clickable link instead to publish steps, fix customenv
2025-05-20 05:00:48 +04:00
Akhmad O.
e0f3bf8322
fix(MCOL-5386): Bitwise aggregation functions do not work with wide decimals (updated previous PR) ( #3522 )
...
* fix(MCOL-5386): Bitwise aggregation functions do not work with wide decimals (updated previous PR)
* MCOL-5386: Added test for Decimal(18)
2025-05-19 20:41:28 +01:00
Leonid Fedorov
a871f0b820
chore(library): nlohmann::json updated to 3.12
2025-05-15 19:05:38 +04:00
Leonid Fedorov
16303bef2b
chore(build): clang-20 warnings fixed
2025-05-15 19:05:38 +04:00
Leonid Fedorov
fc028983b9
chore(build): more fixes for the new warnings
2025-05-15 19:05:38 +04:00
Leonid Fedorov
a0bee173f6
chore(build): fixes to satisfy clang19 warnings
2025-05-15 19:05:38 +04:00
drrtuy
d434b6587a
fix(perf,allocator): increased CountingAllocator checkpoint step size up
...
to 100K
2025-05-02 10:11:40 +01:00
drrtuy
d8bef9dc11
fix(UT): added dummy RM ctor to be used with UTs
2025-05-02 10:11:40 +01:00
drrtuy
d4fe2e7a45
chore(): re-enabled memory accounting for RGData generated by PP::execute()
2025-05-02 10:11:40 +01:00
drrtuy
42417764d8
chore(): cleanup.
2025-05-02 10:11:40 +01:00
drrtuy
4d32a59775
fix(perf,allocator): reduce CountingAllocator step size to improve its memory consumption reaction speed.
2025-05-02 10:11:40 +01:00
drrtuy
01cc73d416
fix(perf,allocator): test build with reduced CountingAllocator parameter values.
2025-05-02 10:11:40 +01:00
drrtuy
252b3ddbef
fix(perf,allocator): adding unit test to check CountingAllocator behavior when it is wrapped in STLPoolAllocator
2025-05-02 10:11:40 +01:00
=
671b7301f3
fix(allocator,perf): performance degradation caused by lack of STLPoolAllocator replaced by CountingAllocator
2025-05-02 10:11:40 +01:00
Serguey Zefirov
bd1622f331
feat(MCOL-5886): support InnoDB's table partitions in cross-engine joins
...
The purpose of this changeset is to obtain list of partitions from
SELECT_LEX structure and pass it down to joblist and then to
CrossEngineStep to pass to InnoDB.
2025-04-23 08:24:10 +03:00
drrtuy
a16fbd137b
fix(disk-based-join): this fixes multiple SEGV for disk-based join algo
2025-04-15 15:06:49 +01:00
drrtuy
c9f9cf8988
fix(CES): Server doesn't terminate MDB client connection that it did previously delivering incomplete result set
2025-04-15 15:06:49 +01:00
Leonid Fedorov
432d0cf7f8
fix(build): replace std::ranges usage for gcc9 and std::span with boost::span
2025-04-15 17:58:11 +04:00
Aleksei Antipovskii
aa5f4fc5e7
fix(aggregation): fix dumping RGDatas to disk
...
`amount` parameter of `RGData::serialize` is the raw size of `rowData`
buffer without StringStore/UserDataStore/etc
2025-04-11 15:21:07 +02:00
Aleksei Antipovskii
21ebd1ac20
feat(bytestream): serialize long strings in the common way
2025-04-11 15:21:07 +02:00
Aleksei Antipovskii
4bea7e59a0
feat(PrimProc): MCOL-5852 disk-based GROUP_CONCAT & JSON_ARRAYAGG
...
* move GROUP_CONCAT/JSON_ARRAYAGG storage to the RowGroup from
the RowAggregation*
* internal data structures (de)serialization
* get rid of a specialized classes for processing JSON_ARRAYAGG
* move the memory accounting to disk-based aggregation classes
* allow aggregation generations to be used for queries with
GROUP_CONCAT/JSON_ARRAYAGG
* Remove the thread id from the error message as it interferes with the mtr
2025-04-11 15:21:07 +02:00
Aleksei Antipovskii
87d47fd7ae
fix(PrimProc): MCOL-5852 use only long string storage
...
for the group_concat data to reduce memory usage
2025-04-11 15:21:07 +02:00
Akhmad Oripov
a6ab9bd615
fix(funcexp): MCOL-5386 Bitwise aggregation functions do not work with wide decimals (internal error) ( #3485 )
2025-04-08 16:47:47 +01:00
drrtuy
c64d4b950f
chore(): fix compilation issue
2025-03-31 22:47:46 +01:00
drrtuy
481267dca8
chore(): reduced error-prone boilerplate for STS functionality
2025-03-31 22:47:46 +01:00
Akhmad Oripov
a329f4d428
Fix(MCOL-4607): SEC_TO_TIME(wideDecimal) returns 0 in DECIMAL context ( #3474 )
2025-03-31 15:05:07 +01:00
Akhmad Oripov
1bcf63a436
Fix(MCOL-4611): mod loses precision on huge narrow decimal ( #3473 )
2025-03-31 14:59:40 +01:00
drrtuy
546be21ef9
chore(logging): re-enable forgotten logging
2025-03-28 16:56:05 +00:00