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

120 Commits

Author SHA1 Message Date
Alexander Barkov
d5c6645ba1 Adding mcs_basic_types.h
For now it consists of only:

using int128_t = __int128;
using uint128_t = unsigned __int128;

All new privitive data types should go into this file in the future.
2020-11-18 13:53:15 +00:00
Alexander Barkov
129d5b5a0f MCOL-4174 Review/refactor frontend/connector code 2020-11-18 13:53:15 +00:00
Gagan Goel
88e106f018 MCOL-641 Ternary operation with different datatype of the two
resulting expressions cannot be used as a template argument.
This is because the template instantiation happens at compile time
and cannot depend on the runtime value of the evaluating expression.
2020-11-18 13:52:20 +00:00
Gagan Goel
62c1c1e0e2 Remove hi_val/lo_val data members from EMCasualPartition_struct
and use the union members instead.
2020-11-18 13:52:19 +00:00
Gagan Goel
5287e6860b MCOL-641 Upgrade code for extent map from v4 to v5.
v5 (current) version of the extent map supports int128_t min/max
values. This commit provides upgrade capability to load_brm program
that when reads an extent map saved to disk earlier with save_brm,
with a EM_MAGIC_V4 entry, converts it to the current v5 "wider"
extent map.
2020-11-18 13:52:19 +00:00
Gagan Goel
d3bc68b02f MCOL-641 Refactor initial extent elimination support.
This commit also adds support in TupleHashJoinStep::forwardCPData,
although we currently do not support wide decimals as join keys.

Row estimation to determine large-side of the join is also updated.
2020-11-18 13:52:19 +00:00
Gagan Goel
55afcd8890 MCOL-641 Basic extent elimination support for Decimal38. 2020-11-18 13:47:01 +00:00
Alexey Antipovsky
e1f6f9f078 Add explicit base class initialization (-Wextra) 2020-11-17 15:03:10 +03:00
Alexander Barkov
ab44ef6ddb MCOL-4170 Refactor services/systemd units to finish their bootstrap ... 2020-11-09 12:01:16 +04:00
Alexander Barkov
e4d072f573 A preparatory patch for MCOL-4170 Refactor services/systemd units to finish their bootstrap ...
Moving the main service code in BRM/slavenode.cpp into a separate function.
2020-11-06 15:46:57 +04:00
Alexander Barkov
ffd96d0315 A preparatory patch for MCOL-4170 Refactor services/systemd units to finish their bootstrap ...
Moving signal initialization code into separate functions.
2020-11-06 11:58:31 +04:00
Roman Nozdrin
cfce821513 MCOL-4337 Controllernode now tries to establish connections to
all workernodes when initialising
There is a new corresponding XML config options
DBRM_Controller.WorkerConnectionTimeout that controls how long
controllernode waits for wns before it proceeds
2020-10-09 09:12:59 +00:00
David Hall
951a6abe85 MCOL-4330 dev Refresh shared memory
If the plugin is restarted after the system is running, it's possible to have stale references to shared memory. This patch deletes those references so the next time they're used, just-in-time initialization will get the latest.
2020-10-01 18:19:03 -05:00
Roman Nozdrin
7e868bc588 add dependency for generated header files errorids.h messageids.h patch made by Ben. 2020-07-10 18:38:49 +00:00
benthompson15
eac7dab096 MCOL-4030: first commit of warning removals unneed const and missing virtual dtors. 2020-06-23 13:51:36 -05:00
David Hall
1d5e820e97 Merge branch 'develop' into MCOL-3536
Conflicts:
	CMakeLists.txt
2020-06-04 16:22:59 -05:00
Patrick LeBlanc
5440977f45 Merge pull request #1197 from tntnatbry/develop-batchinserts-improve
Improve batch inserts.
2020-06-02 14:05:47 -05:00
David Hall
06e50e0926 MCOL-3536 collation 2020-05-26 12:42:11 -05:00
David Hall
8479a87e46 Merge branch 'develop' into MCOL-3536 2020-05-18 16:22:01 -05:00
David Hall
1f3d1e6fd6 MCOL-3536 collation 2020-05-14 16:02:49 -05:00
Jose
98abf95eae MCOL-3991 MCS is now single package and properly uninstalls 2020-05-12 13:36:24 +00:00
Gagan Goel
d4d0ebdf5d Improve batch inserts.
1) Instead of making dbrm calls to writeVBEntry() per block,
     we make these calls per batch. This can have non-trivial
     reductions in the overhead of these calls if the batch size
     is large.

  2) In dmlproc, do not deserialize the whole insertpackage, which
     consists of the complete record set per column, which would be
     wasteful as we only need some metadata fields from insertpackage
     here. This is only done for batch inserts at the moment, this
     should also be applied to single inserts.
2020-05-10 19:38:06 -04:00
Patrick LeBlanc
cb4228d982 Merge branch 'columnstore-1.4.3' into merge-hotfix-patches-1.5
Conflicts:
	VERSION
	dbcon/mysql/ha_mcs.cpp
	dbcon/mysql/ha_mcs_execplan.cpp
	dbcon/mysql/ha_mcs_impl.cpp
	dbcon/mysql/ha_mcs_pushdown.cpp
	oam/install_scripts/columnstore-post-install.in
	oam/install_scripts/columnstore-pre-uninstall.in
	oam/install_scripts/columnstore.in
	oam/install_scripts/post-mysql-install
2020-04-27 17:17:55 -04:00
Roman Nozdrin
6f3ae1b429 MCOL-3941 Ninja now builds MCS.
Generated files in utils/loggingcpp/ are now moved into bin dir.
2020-04-20 13:35:30 +00:00
benthompson15
5c977f2c85 MCOL-3905: slavecomm should use the path provided to the function for openning journal file with the change that added UUID to path for downloaded files during getDBRMData. 2020-04-03 12:41:06 -05:00
benthompson15
accfe3b070 MCOL-3842: we need to delete instances not just release them when a failover happens because the worknodes have changed in configuration files. 2020-04-03 12:17:18 -05:00
Patrick LeBlanc
180140303e MCOL-3829: CS not starting correctly if rebooted at specific point
Found that the IDBDataFile path in BRM journal writing code needs to seek
to the end of the file before writing.

If save_brm is run (as it is during init), it truncates the journal file,
but the workernode retained its original offset, resulting in the front
of the file being 0-filled on the next journal write.  Load_brm can't
load that.
2020-02-24 10:35:34 -05:00
Patrick LeBlanc
295ba65724 MCOL-3829: CS not starting correctly if rebooted at specific point
Found that the IDBDataFile path in BRM journal writing code needs to seek
to the end of the file before writing.

If save_brm is run (as it is during init), it truncates the journal file,
but the workernode retained its original offset, resulting in the front
of the file being 0-filled on the next journal write.  Load_brm can't
load that.
2020-02-24 10:11:55 -05:00
Sergei Golubchik
586391e1ca compilation failure
error: reference to 'mutex' is ambiguous
note: candidates are: 'class boost::mutex'
note:                 'class std::mutex'
2019-12-19 18:13:39 +01:00
Andrew Hutchings
49994f7bc3 Fix warnings found in DEBUG combined build
Fixes:
* Irrelevant where conditions
* Irrelevant const
* A potential infinite loop in treenode
* Bad implicit case fallthroughs
* Explicit markings for required case fallthroughs
* Unused variables
* Unused function

Also disabled some warnings for now which we should fix later.
2019-12-10 16:33:08 +00:00
Andrew Hutchings
7489d0bfd0 MCOL-3625 Rename packages
Rename packages to MariaDB-columnstore-engine, MariaDB-columnstore-libs
and MariaDB-columnstore-platform.

Also add the "columnstore-" prefix the the components so that MariaDB's
packaging system understands then and add a line to include them in
MariaDB's packaging.

In addition
* Fix S3 building for dist source build
* Fix Debian 10 dependency issue
* Fix git handling for dist builds
* Add support for MariaDB's RPM building
* Use MariaDB's PCRE and readline
* Removes a few dead files
* Fix Boost noncopyable includes
2019-12-04 11:04:39 +00:00
Andrew Hutchings
a8cd34f86d Add support for building from server 2019-12-03 21:21:28 +00:00
Andrew Hutchings
8ab9ebb0f4 MCOL-3606 Make ColumnStore use generic paths
ColumnStore now uses standard bin/lib paths for pretty much everything.
Data path is now hard-coded to /var/lib/columnstore.

This patch also:

* Removes v1 decompression
* Removes a bunch of unneeded files
* Removes COLUMNSTORE_INSTALL_DIR / $INSTALLDIR
* Makes my.cnf.d work for all platforms (MCOL-3558)
* Changes configcpp to use recursive mutex (fixes possible config write deadlock)
* Fixes MCOL-3599 Fix regr functions, The library was installed in the wrong location
* Fixes a bunch of Ubuntu packaging issues
* Changes the binary names of several of the executables so as not to
clash with potential executables from other packages
2019-11-09 16:53:05 +00:00
Andrew Hutchings
3fef0f21d3 Remove vpj files
They shouldn't be here
2019-09-05 17:38:03 +01:00
Patrick LeBlanc
fbdf1a5308 Merge branch 'develop' into S3-project 2019-08-14 15:37:14 -05:00
Roman Nozdrin
b1bc995420 Merge branch 'develop' into remove-infinidb 2019-08-13 12:32:01 +03:00
Andrew Hutchings
9d83b49fca MCOL-104 First pass of InfiniDB rename in code 2019-08-12 09:41:28 +01:00
Patrick LeBlanc
a09a9d5d0f Mass substitution 'Corporaton' -> 'Corporation' 2019-08-07 14:43:25 -05:00
Patrick LeBlanc
62c7ab6480 Fixed a merge error. 2019-08-05 16:35:59 -05:00
Patrick LeBlanc
295c638c18 Merge branch 'develop' into S3-project 2019-08-05 16:34:45 -05:00
Patrick LeBlanc
8190e44d1f Fixed an old bug in the HDFS code in the BRM. Journal file supposed
to be opened for appending.
2019-07-29 14:26:13 -05:00
Patrick LeBlanc
a84e3a408f Last commit of the initial set of changes. 2019-07-12 10:52:09 -05:00
Patrick LeBlanc
9ced374c81 Another incremental commit. 2019-07-12 10:33:51 -05:00
Patrick LeBlanc
16dc887f20 Incremental commit. Stripping out the OBE fstream IO code. 2019-07-12 10:06:56 -05:00
Patrick LeBlanc
7dca5365b6 Found other places in the BRM code that were using fstreams vs IDB*. 2019-06-24 16:42:28 -05:00
Patrick LeBlanc
b30ee07318 Merge remote-tracking branch 'upstream/develop' into S3-project 2019-06-24 15:41:10 -05:00
Patrick LeBlanc
157d1ef667 Made the BRM not save a snapshot after every transaction. 2019-06-14 12:33:12 -05:00
Patrick LeBlanc
bcdd76adc0 Fixed a bug in the new extentmap saving code. 2019-06-14 11:50:47 -05:00
Patrick LeBlanc
029b4a61a8 Made oidserver use the IDB* path, made it write the initial
bitmap in one swipe vs small bits at a time.
2019-06-14 10:09:17 -05:00
Patrick LeBlanc
603cbc9314 First cut of improving IO behavior for BRM load/save 2019-06-13 16:14:00 -05:00