1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00
Commit Graph

6336 Commits

Author SHA1 Message Date
95185eff7e chore(ci) refactor reports from tests stage, add it to upgrade 2023-11-29 19:40:52 +04:00
792aea2a7c Fixes MCOL-5599 where LIKE operator never finishes
This is a fix of logging subsystem, nothing else.

The old code expanded an argument into string and advanced too little
and, if expansion contained argument's index, it expanded it again. And
again.
2023-11-29 19:17:16 +04:00
8632c85ecf 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.
2023-11-28 17:33:02 +03:00
9a84aa8d99 fix(plugin): Same columns fom different views in GROUP BY do not produce errors (#3035)
Fixes MCOL-5643.

The problem was that different views with same column names in GROUP BY
and on the SELECT clause produced an error about "projection column is
not an aggergate neither in GROUP BY list."

This was due to incorrect search in expressions's list that lead to
duplicate columns in GROUP BY list.
2023-11-28 17:30:56 +03:00
76e4e13b80 fix(rowgroup,stringstore): MCOL-5597 Set length for nullptr string to 0. (#3027) 2023-11-28 17:18:52 +03:00
26f5f8fe5c fix(plugin): this is to addres the original patch QA found in the original patch 2023-11-22 17:20:37 +03:00
5c9770d1e6 fix(funcexp): MCOL-5607: JSON function use crashes query execution (#3028)
JSON functions were implemented violating an assumption of their
pureness, as they should not have any state. This concrete patch
fixes implementation of JSON_VALUE function.
2023-11-21 23:46:03 +03:00
69b8e1c779 feat(extent-elimination)!: re-enable extent-elimination for dictionary columns scanning
This is "productization" of an old code that would enable extent
elimination for dictionary columns.

This concrete patch enables it, fixes perfomance degradation (main
problem with old code) and also fixes incorrect behavior of cpimport.
2023-11-17 17:14:35 +03:00
f5ff63b52f Merge pull request #3011 from mariadb-corporation/MCOL-4740-2
MCOL-4740: This fixes update rows counter for multi-table update
2023-11-07 21:30:57 +02:00
6579180810 fix(plugin): MCOL-4740: This fixes update rows counter for multi-table update
For UPDATEs involving a single table, the server call to handler::direct_update_rows() is used to correctly set the count for the number of updated rows in the UPDATE statement.
However, for UPDATEs involving multi-tables, the server does not call handler::direct_update_rows(). This patch adds support to correctly report the number of updated rows to the client by setting
multi_update::updated and multi_update::found in handler::rnd_end().
2023-11-02 14:18:06 +00:00
67c842e792 Merge pull request #3017 from drrtuy/fix/MCOL-5472-urandom-mutex
fix(rowstorage): MCOL-5472 SplitMix64 PRNG implementation to replace stdlib MT PRNG that uses /dev/urandom guarded by spinlock
2023-11-02 16:10:57 +02:00
95bedb8334 Merge pull request #3018 from drrtuy/chore/ignore-upgrade-tests
chore(CI): this allows CI to ignore the results of upgrade tests that are not production ready yet
2023-11-02 14:02:52 +02:00
2c3071c4c2 chore(CI): this allows CI to ignore the results of upgrade tests that are not production ready yet 2023-11-02 13:38:29 +03:00
dfc9e89496 fix(rowstorage): SplitMix64 PRNG implementation to replace stdlib MT PRNG that uses /dev/urandom guarded by spinlock 2023-11-01 18:19:45 +00:00
2f0bbed165 Merge pull request #3015 from drrtuy/chore/MCOL-5568-math-with-domain-range-check
chore(datatypes): refactoring math ops results domain check functionality
2023-10-31 22:28:58 +02:00
7aa6e4c107 MCOL-5595: Wrong metadata in CMAPI packages.
[fix] cmapi packages metadata version format for debian systems and version + release in RHEL systems
2023-10-27 04:07:05 +03:00
f7045457f2 chore(datatypes): refactoring math ops results domain check functionality 2023-10-25 09:12:54 +00:00
eb744eafed chore(datatypes): this refactors the placement of the main SQL data types enum to enable templates that are parametrized with this enum(see mcs_datatype_basic.h changes for more details). 2023-10-24 18:44:35 +03:00
244e0adc8e feat(package_manager): improved cs_package_manager functionality for better UX
- add apt support for community and enterprise install
- add enterprise_staging install
- filter check results down to os/arch
- add --token flag for enterprise (#3002)
2023-10-20 17:13:10 +03:00
242408f751 fix(datatypes, funcexp): static_cast typo fix (#3001) 2023-10-17 23:58:59 +03:00
84148cbe4c fix(datatypes, funcexp): Overflow detection for MCOL-5568 use case (and some other) (#2987)
We add intermediate calculations in int128_t when target is UBIGINT and
check for overflow before converting into the UBIGINT. This is so
because we can overflow on addition and multiplication, with (some)
signed operands or both unsigned.
2023-10-16 16:55:02 +03:00
3fcb9b66f5 MCOL-5555 Add support for startreadonly command.
This patch adds support for `startreadonly` command which waits
until all active cpimport jobs are done and then puts controller node to readonly
mode.
2023-10-16 16:11:12 +03:00
2b20e1de25 chore(docs): rename the doc that affects git clone on Windows 2023-10-16 16:07:14 +03:00
fea5479650 Revert "chore(docs): rename the doc that affects git clone on Windows"
This reverts commit e9f8a6a2f6.
2023-10-16 16:06:20 +03:00
e9f8a6a2f6 chore(docs): rename the doc that affects git clone on Windows 2023-10-16 16:05:45 +03:00
c479407f39 feat(build) external project for Apache Arrow 13.0 2023-10-11 11:56:22 -04:00
a8c4a7673c fix(build): Fixing build for S3 with "LocalStorage" type. 2023-10-11 13:44:11 +03:00
97f58e8592 Stable branch for .drone 2023-10-10 12:28:35 -04:00
1f71847e99 fix(packaging) dh_missing: warning are treated as errors for buildbot debians
dh_missing: warning: Compatibility levels before 10 are deprecated (level 9 in use)
dh_missing: warning: usr/lib/x86_64-linux-gnu/libmessageqcpp.a exists in debian/tmp but is not installed to anywhere
dh_missing: warning: usr/lib/x86_64-linux-gnu/libpron.a exists in debian/tmp but is not installed to anywhere

so do not install static libraries as targets on CMake
vcolumnstore-23.10.0-1
2023-10-04 13:20:24 -04:00
221dea1788 fixed on premise s3 backup & restore --endpoint-url flag 2023-10-03 01:58:55 +03:00
d2b05afdc1 init columnstore_backup.sh 2023-10-03 01:58:55 +03:00
b2f2a0c78a Revert "Disable Debian 12 due to mirrors errors (#2952)"
This reverts commit 11b3aed91b.
2023-10-02 15:12:24 -04:00
fce971dcd2 feat(IO): MCOL-5555 Reduce number of direct writes to the file storing BRM journal and tablelocks (#2974) 2023-09-30 19:00:39 +03:00
86c1c5d537 fix(rgdata)!: Fix assertion failure leading to disk-based aggregation failure
The new added invariant checking that RGData knows the number of columns and fixed size columns was failing for disk-based aggregation workloads, leading them to provide a wrong result. (The assertion failure happened in RGData::getRow(uint32_t num, Row* row) which is called in the finalization of sub-aggregation results, necessary for merging part results. As the merging failed, duplicate results were output for disk-based aggregation queries.
The assertion failure was caused by RGData::deserialize(ByteStream& bs,
uint32_t defAmount) not setting rowSize and colCount if necessary (e.g.
when the deserialization happens into a new, default RGData, which
doesn't know anything about its structure yet. This is the case when the
default constructor for RGData() is used, which sets rowSize and
columnCount to 0 each.
There are three code parts that make use of the default RGData() ctor.
The fix is for the use in RowGroupStorage::loadRG(uint64_t rgid,
std::unique_ptr<RGData>& rgdata, bool unlinkDump = false), where the
default RGData object is used to directly deserialize a ByteStream into
it. The deserialize method now checks if both rowSize and columnCount
are 0 and if yes sets the read values from the ByteStream for both.
We should probably check the other two code parts making use of the
default RGData ctor, too. This happens in joinpartition.cpp and
tuplejoiner.cpp.

---------

Co-authored-by: Theresa Hradilak <34538290+phoeinx@users.noreply.github.com>
2023-09-30 00:02:31 +03:00
6f52039658 Bump VERSION to 23.10.0-1. (#2979) 2023-09-29 20:07:23 +03:00
320df831c6 MCOL-5572 Force the charset on the autoincrement column of (#2976)
calpontsys.syscolumn syscat table to be latin1.

This change is done in one of the ctors of pColStep which is
initiated while building the job list from the execution plan.
2023-09-28 22:03:39 +03:00
920607520c feat(runtime)!: MCOL-678 A "GROUP BY ... WITH ROLLUP" support
Adds a special column which helps to differentiate data and rollups of
various depts and a simple logic to row aggregation to add processing of
subtotals.
2023-09-26 17:01:53 +03:00
5013717730 fix(plugin): Fix wrong ask for stat call for table mode 2023-09-26 14:43:06 +03:00
a97ff73cea init columnstore_review.sh & cs_package_manager.sh (#2969) 2023-09-26 05:59:00 +03:00
3be86a7131 Revert "feat(BRM) MCOL-5555 Reduce a number of direct writes to BRM journal/tablelocks files" (#2972)
This reverts commit 02114b5b7c.
2023-09-26 05:52:59 +03:00
02114b5b7c feat(BRM) MCOL-5555 Reduce a number of direct writes to BRM journal/tablelocks files 2023-09-25 23:39:49 +03:00
46fa03378c chore(regression-tests): add regr test to test MCS survivability 2023-09-25 22:42:05 +03:00
fd94ab5042 chore(logging): move cgroup /cgroup version log from constructor to getTotalMemory to avoid duplicate log as constructor is called per query 2023-09-25 22:17:09 +03:00
4bfce51628 Fix autoincrement filtering problems with utf-8 (#2964)
MCOL-5572: Widen the autoincrement column to accomodate utf-8  encoded into weights with strnxfrm function.
2023-09-22 16:40:10 +03:00
1eb053b46c After container starts, wait for systemd to start for every detached one (#2965) 2023-09-21 17:55:48 +03:00
7f9c624626 MCOL-5573 Fix cpimport truncation of TEXT columns.
1. Restore the utf8_truncate_point() function in utils/common/utils_utf8.h
that I removed as part of the patch for MCOL-4931.

2. As per the definition of TEXT columns, the default column width represents
the maximum number of bytes that can be stored in the TEXT column. So the
effective maximum length is less if the value contains multi-byte characters.
However, if the user explicitly specifies the length of the TEXT column in a
table DDL, such as TEXT(65535), then the DDL logic ensures that enough number
of bytes are allocated (upto a system maximum) to allow upto that many number
of characters (multi-byte characters if the charset for the column is multi-byte,
such as utf8mb3).
2023-09-20 12:23:22 -04:00
39a31fe064 Add DEVELOPING.md and Vagrantfile to improve developing documentation and flow. (#2955)
chore(docs, bootstrap): Add DEVELOPING.md and Vagrantfile to improve developer documentation and MCS bootstrap.
2023-09-20 12:09:44 +03:00
8171e9da07 Fix rocky-8 vanilla compiler build (#2959)
Co-authored-by: Leonid Fedorov <leonid.fedorov@mariad.com>
2023-09-20 04:04:08 +03:00
70111eba3d chore(external-libs): remove unused pattern matching lib b/c the standard will presumably use a different implementation for pattern matching. 2023-09-12 12:04:34 +03:00
11b3aed91b Disable Debian 12 due to mirrors errors (#2952) 2023-09-11 16:37:22 +03:00