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

69 Commits

Author SHA1 Message Date
baae1f66a5 * fix(compilation): New warn AKA 3919c541 backport
* fix(compilation): `New warn` AKA 3919c541 backport

* chore: Bump version to 6.4.8-2
2024-04-24 14:33:13 +03:00
5f485f40ca MCOL-5153 This patch replaces MDB collation aware hash function with the (#2487)
exact functionality that does not use MDB hash function.
This patch also takes a bit from Robin Hood hash map implementation forgotten
that reduces hash function collision rate.
2022-08-04 16:22:11 -05:00
7c808317dc clang format apply 2022-02-11 12:24:40 +00:00
509f005be7 Mcol 4841 dev6 Handle large joins without OOM (#2155)
* MCOL-4846 dev-6 Handle large join results
Use a loop to shrink the number of results reported per message to something manageable.

* MCOL-4841 small changes requested by review

* Add EXTRA threads to prioritythreadpool
prioritythreadpool is configured at startup with a fixed number of threads available. This is to prevent thread thrashing. Since most of the time, BPP job steps are short lived, and a rescheduling mechanism exist if no threads are available, this works to keep cpu wastage to a minimum.

However, if a query or queries consume all the threads in prioritythreadpool and then block (due to the consumer not consuming fast enough) we can run out of threads and no work will be done until some threads unblock. A new mechanism allows for EXTRA threads to be generated for the duration of the blocking action. These threads can act on new queries. When all blocking is completed, these threads will be released when idle.

* MCOL-4841 dev6 Reconcile with changes in develop-6

* MCOL-4841 Some format corrections

* MCOL-4841 dev clean up some things based on review

* MCOL-4841 dev 6 ExeMgr Crashes after large join
This commit fixes up memory accounting issues in ExeMgr

* MCOL-4841 remove LDI change
Opened MCOL-4968 to address the issue

* MCOL-4841 Add fMaxBPPSendQueue to ResourceManager
This causes the setting to be loaded at run time (requires restart to accept a change) BPPSendthread gets this in it's ctor
Also rolled back changes to TupleHashJoinStep::smallRunnerFcn() that used a local variable to count locally allocated memory, then added it into the global counter at function's end. Not counting the memory globally caused conversion to UM only join way later than it should. This resulted in MCOL-4971.

* MCOL-4841 make blockedThreads and extraThreads atomic
Also restore previous scope of locks in bppsendthread. There is some small chance the new scope could be incorrect, and the performance boost is negligible. Better safe than sorry.
2022-02-09 21:38:32 +03:00
fb15be3237 MCOL-4855 Do not log debug/info/warning messages to stderr. 2021-11-19 17:13:23 -05:00
ef09342d47 MCOL-4839: Fix clang build (#2102)
* Fix clang build

* Extern C returned to plugin_instance

Co-authored-by: Leonid Fedorov <l.fedorov@mail.corp.ru>
2021-08-23 15:58:56 -05:00
0b17568ae2 MCOL-3741 dev6 Change IDB-xxxx error codes to MCS-xxxx 2021-08-10 12:05:33 -05:00
c20015a7b2 MCOL-4713 Analyze table implementation. 2021-07-02 12:37:12 +03:00
475104e4d3 [MCOL-4709] Disk-based aggregation
* Introduce multigeneration aggregation

* Do not save unused part of RGDatas to disk
* Add IO error explanation (strerror)

* Reduce memory usage while aggregating
* introduce in-memory generations to better memory utilization

* Try to limit the qty of buckets at a low limit

* Refactor disk aggregation a bit
* pass calculated hash into RowAggregation
* try to keep some RGData with free space in memory

* do not dump more than half of rowgroups to disk if generations are
  allowed, instead start a new generation
* for each thread shift the first processed bucket at each iteration,
  so the generations start more evenly

* Unify temp data location

* Explicitly create temp subdirectories
  whether disk aggregation/join are enabled or not
2021-06-06 16:09:15 +03:00
1eea9f9e47 MCOL-4598: Fix the syslog setup script. Add syslog options for broken/non-syslog setup. 2021-04-29 16:34:53 -05:00
757f8d00a5 A plugable PoorManProfiler singleton 2021-04-14 10:54:46 +00:00
b09f3088ca MCOL-641 Initial version of Math operations for wide decimal. 2020-11-18 13:47:44 +00:00
cd48df99e5 MCOL-4368 Unified exceptions handling code in dbcon/joblist 2020-10-21 18:17:32 +00:00
98abf95eae MCOL-3991 MCS is now single package and properly uninstalls 2020-05-12 13:36:24 +00:00
c98e553daa Merge pull request #1160 from mariadb-corporation/MCOL-3941
MCOL-3941 Ninja now builds MCS.
2020-04-20 21:56:19 -04:00
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
ab2003baaa MCOL-3903 Enable Select Handler to run query part of INSERT..SELECT.
Original SH implementation sends the result set back to the client
thus it can't be used in INSERT..SELECT, SELECT INTO OUTFILE,CREATE
TABLE AS SELECT etc.
CLX-77 feature has been backported into MDB to enable SH to run
query part of the mentioned queries.
2020-04-07 09:17:05 +00:00
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
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
a8cd34f86d Add support for building from server 2019-12-03 21:21:28 +00:00
a69d0ac895 MCOL 3557 Related. Syntactical Bug Fix 2019-10-24 20:14:42 +00:00
20c1949152 Replication improvements
This patch fixes:

MCOL-3557 - Row Based Replication events to ColumnStore tables will no
longer cause MariaDB to crash, it will error instead.

MCOL-3556 - Remove the Columnstore.xml variable to turn on ColumnStore
tables applying replication events and instead make it a system variable
that can be set in my.cnf called "columnstore_replication_slave". This
allows it to be set per-UM.
2019-10-14 11:54:48 +01:00
24e1c3ff2d Merge pull request #855 from mariadb-corporation/move-etc
Move config files
2019-09-09 15:54:30 -05:00
97bda78c3b Move config files
This patch:

* Moves config files from /usr/local/mariadb/columnstore/etc to
ENGINE_SYSCONFDIR/columnstore (ENGINE_SYSCONFDIR is /etc by default)
* Sets a define called MCSSYSCONFDIR whic contains the
ENGINE_SYSCONFDIR compile time setting
* Modifies scripts and code to use the new paths
* Removes a whole bunch of files we don't use
2019-09-09 14:13:56 +01:00
3fef0f21d3 Remove vpj files
They shouldn't be here
2019-09-05 17:38:03 +01:00
b1bc995420 Merge branch 'develop' into remove-infinidb 2019-08-13 12:32:01 +03:00
9d83b49fca MCOL-104 First pass of InfiniDB rename in code 2019-08-12 09:41:28 +01:00
a09a9d5d0f Mass substitution 'Corporaton' -> 'Corporation' 2019-08-07 14:43:25 -05:00
020b211bb7 Merge branch 'develop-1.2' into develop-merge-up-20190514 2019-05-14 13:58:33 +01:00
cbbf267e88 MCOL-537, cleanup compiler warnings. Checkpointing a bunch of fixes.
Work in progress...
2019-04-29 10:56:48 +03:00
e65f80f493 delete visual c++ project files. cmake can generate these if needed 2019-04-25 23:35:03 -05:00
40194c2f3c remove unnecessary build target 2019-04-25 22:58:17 -05:00
55acbf8c5c permit execution of scripts when source is located on a non-executable file system 2019-04-25 22:15:51 -05:00
ea70806e93 MCOL-1201 Add support for UDAF multiple parm constants 2018-06-05 14:10:04 -05:00
01446d1e22 Reformat all code to coding standard 2017-10-26 17:18:17 +01:00
3330495a2e MCOL-777 Cleanup source
Clean out autotools and some other things from the source tree.
2017-08-07 15:59:56 +01:00
bc2a4e7795 MCOL-523 Add UDAF and UDAnF SDK 2017-08-02 11:22:07 -05:00
a3c4503bc9 MCOL-597 stabilization 2017-04-21 09:47:56 -05:00
04bdb60fff more merges from 1.0.8 2017-03-28 14:17:17 -05:00
61404b0f47 MessageID 104 is used during install. It needs a parameter. 2016-11-14 14:21:33 -06:00
d0e9cde782 MCOL-98: Added error message for functions returning out of range values. 2016-10-10 16:52:47 -05:00
7d3cd26af9 MCOL-160 MCOL-262 CMake Build Fixes for out-of-tree builds and engine RPMS 2016-09-22 10:14:18 -04:00
b43e086ef3 cmake fixes for generated files errorids.h and messageids.h 2016-08-15 11:13:38 -05:00
392d6df495 Merge branch 'mcol-159' into develop
Conflicts:
	1
	Makefile.save
	autom4te.cache/output.0
	autom4te.cache/traces.0
	autom4te.cache/traces.1
	compile
	config.guess
	config.sub
	configure.save
	dbcon/Makefile.in
	dbcon/ddlpackage/Makefile.in
	dbcon/ddlpackage/ddl-scan.cpp
	dbcon/ddlpackageproc/Makefile.in
	dbcon/dmlpackage/Makefile.in
	dbcon/dmlpackage/dml-scan.cpp
	dbcon/dmlpackageproc/Makefile.in
	dbcon/execplan/Makefile.in
	dbcon/joblist/Makefile.in
	dbcon/mysql/Makefile.in
	ddlproc/Makefile.in
	decomsvr/Makefile.in
	depcomp
	dmlproc/Makefile.in
	exemgr/Makefile.in
	install-sh
	missing
	net-snmp/Makefile.in
	net-snmp/net-snmp-5.7.3/agent/mibgroup/mib_module_includes.h
	net-snmp/net-snmp-5.7.3/configure-summary
	net-snmp/net-snmp-5.7.3/dist/generation-scripts/gen-variables
	net-snmp/net-snmp-5.7.3/include/net-snmp/agent/mib_module_config.h
	net-snmp/net-snmp-5.7.3/mk/MODULE_LIST.mk
	net-snmp/net-snmp-5.7.3/mk/mib_module_list_c.mk
	net-snmp/net-snmp-5.7.3/mk/mib_module_list_code.mk
	net-snmp/net-snmp-5.7.3/mk/mib_module_list_ft.mk
	net-snmp/net-snmp-5.7.3/mk/mib_module_list_lo.mk
	net-snmp/net-snmp-5.7.3/mk/mib_module_list_o.mk
	net-snmp/net-snmp-5.7.3/mk/mibgroup_list_ft.mk
	net-snmp/net-snmp-5.7.3/mk/mibgroup_list_lo.mk
	net-snmp/net-snmp-5.7.3/mk/mibgroup_list_o.mk
	net-snmp/net-snmp-5.7.3/mk/module_list_c.mk
	net-snmp/net-snmp-5.7.3/mk/module_list_code.mk
	net-snmp/net-snmp-5.7.3/mk/module_list_ft.mk
	net-snmp/net-snmp-5.7.3/mk/module_list_lo.mk
	net-snmp/net-snmp-5.7.3/mk/module_list_o.mk
	oam/Makefile.in
	oam/cloud/Makefile.in
	oam/etc/Makefile.in
	oam/oamcpp/Makefile.in
	oam/post/Makefile.in
	oamapps/Makefile.in
	oamapps/calpontDB/Makefile.in
	oamapps/calpontSupport/Makefile.in
	oamapps/columnstoreDB/Makefile.in
	oamapps/columnstoreSupport/Makefile.in
	oamapps/mcsadmin/Makefile.in
	oamapps/postConfigure/Makefile.in
	oamapps/sendtrap/Makefile.in
	oamapps/serverMonitor/Makefile.in
	oamapps/sessionWalker/Makefile.in
	oamapps/traphandler/Makefile.in
	primitives/Makefile.in
	primitives/blockcache/Makefile.in
	primitives/linux-port/Makefile.in
	primitives/primproc/Makefile.in
	procmgr/Makefile.in
	procmon/Makefile.in
	snmpd/Makefile.in
	snmpd/etc/Makefile.in
	snmpd/snmpmanager/Makefile.in
	tools/Makefile.in
	tools/clearShm/Makefile.in
	tools/cleartablelock/Makefile.in
	tools/configMgt/Makefile.in
	tools/cplogger/Makefile.in
	tools/dbbuilder/Makefile.in
	tools/dbloadxml/Makefile.in
	tools/ddlcleanup/Makefile.in
	tools/editem/Makefile.in
	tools/getConfig/Makefile.in
	tools/idbmeminfo/Makefile.in
	tools/setConfig/Makefile.in
	tools/viewtablelock/Makefile.in
	utils/Makefile.in
	utils/batchloader/Makefile.in
	utils/boost_idb/Makefile.in
	utils/cacheutils/Makefile.in
	utils/common/Makefile.in
	utils/compress/Makefile.in
	utils/configcpp/Makefile.in
	utils/dataconvert/Makefile.in
	utils/ddlcleanup/Makefile.in
	utils/funcexp/Makefile.in
	utils/idbdatafile/Makefile.in
	utils/idbhdfs/Makefile.in
	utils/idbhdfs/hdfs-12/Makefile.in
	utils/idbhdfs/hdfs-20/Makefile.in
	utils/jemalloc/Makefile.in
	utils/joiner/Makefile.in
	utils/loggingcpp/Makefile.in
	utils/messageqcpp/Makefile.in
	utils/mysqlcl_idb/Makefile.in
	utils/querystats/Makefile.in
	utils/querytele/Makefile.in
	utils/rowgroup/Makefile.in
	utils/rwlock/Makefile.in
	utils/startup/Makefile.in
	utils/threadpool/Makefile.in
	utils/thrift/Makefile.in
	utils/udfsdk/Makefile.in
	utils/windowfunction/Makefile.in
	utils/winport/Makefile.in
	versioning/BRM/Makefile.in
	versioning/Makefile.in
	writeengine/Makefile.in
	writeengine/bulk/Makefile.in
	writeengine/client/Makefile.in
	writeengine/dictionary/Makefile.in
	writeengine/index/Makefile.in
	writeengine/redistribute/Makefile.in
	writeengine/server/Makefile.in
	writeengine/shared/Makefile.in
	writeengine/splitter/Makefile.in
	writeengine/wrapper/Makefile.in
2016-08-10 16:24:51 -05:00
af051987a6 change the syslogSetup test id number 2016-08-02 08:56:19 -05:00
5053716521 MCOL-66 change error text for ERR_TABLE_LOCKED to accept operation name. 2016-07-28 09:25:49 -05:00
edb55cf23a mcol-5 save files 2016-07-19 10:46:58 -05:00
3933982f3c make installed scripts executable 2016-07-15 10:49:58 -05:00
934920d73e Changes to how source generating scripts are called from cmakelists 2016-07-15 10:49:57 -05:00
424628349b Add CMake build tree files 2016-07-15 10:49:57 -05:00