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

93 Commits

Author SHA1 Message Date
f2d8a33ee5 MCOL-3296 CTRL+C should not double remove from dequeue. 2019-05-09 12:42:18 -05:00
3c89a4bba4 MCOL-537 Preprocessor if blocks with pragmas now have else branch.
DMLProc exits on setupCwd failure.
2019-05-09 20:25:21 +03:00
b2436502cb MCOL-537 Enabled -Wno-unused-result for OAM code.
Fixed pragmas that disables compilation checks.

    DDLProc now returns an error if it couldn't cwd.

    Use either auto_ptr or unique_ptr depending on GCC version.
2019-05-08 19:44:01 +03:00
9dc33c4e82 Another try to cope with warnings under gcc 8.2. 2019-04-29 11:05:03 +03:00
cbbf267e88 MCOL-537, cleanup compiler warnings. Checkpointing a bunch of fixes.
Work in progress...
2019-04-29 10:56:48 +03:00
4b9d046c6e Fully resolve potentially ambiguous symbols by removing using namespace statements from headers which have a cascading effect. This causes potential behavior changes when switching to c++11 since symbols can be exported from std and boost while both have been imported into the global namespace. 2019-04-29 01:21:15 -05:00
35ab11cbb6 remove std::auto_ptr 2019-04-26 04:46:46 -05:00
e65f80f493 delete visual c++ project files. cmake can generate these if needed 2019-04-25 23:35:03 -05:00
ccd9a414eb MCOL-1810 Fix hang on low core count
Anything that links against joblist will spin up a threadpool upon
startup. This includes the tools setConfig/getConfig. It is possible on
a low core count machine or low CPU speed that the signal to the prune
thread to shutdown is sent before the thread has completed startup when
these quick-running tools are used.

This fix adds a mutex so that spin up and shutdown can't happen at the
same time as well as a stop watch in case we are shutting down when
either the thread is running or we haven't fully started.
2018-10-16 18:03:25 +01:00
de19208ea9 MCOL-1810 Fix hang on low core count
Anything that links against joblist will spin up a threadpool upon
startup. This includes the tools setConfig/getConfig. It is possible on
a low core count machine or low CPU speed that the signal to the prune
thread to shutdown is sent before the thread has completed startup when
these quick-running tools are used.

This fix adds a mutex so that spin up and shutdown can't happen at the
same time as well as a stop watch in case we are shutting down when
either the thread is running or we haven't fully started.
2018-10-16 17:55:41 +01:00
f1f13a09d1 Merge branch 'develop-1.1' into 1.1-merge-up-2018-10-05 2018-10-05 18:40:07 +01:00
5092b4fd13 MCOL-1750 unique_ptr doesn't work in all OSes 2018-09-28 07:55:06 +01:00
94dfacfe25 MCOL-1750 Fix threadpool stack leaks
When a thread has been idle for 10 minutes and we have too many threads
in the threadpool the thread will be pruned. This is done by the
thread's main function just returning. Unfortunately this does not free
up the memory, the thread either needs to be joined or detatched.

We cannot use detached threads since there are mutexes and conditional
variables between the main thread and the threadpool threads. If the
main thread finishes before the threadpool threads (as would happen in
cpimport) then crashes occur. The parent needs to wait on the child
threads which is the whole point in joining.

So this fix spawns a new thread which every minute will check the list
of threads to be joined due to timeout and join them.

We have had to use an adapted version of boost::thread_group so that we
can join a single thread based off its thread ID.

In addition with have modified PriorityThreadPool to use detached
threads since this does not need to signal the child threads at the end.
2018-09-28 07:21:49 +01:00
8c90419852 Fix merge and coding style issues 2018-06-22 15:31:31 +01:00
7ca289ded9 Merge branch 'develop-1.1' into 1.1-merge-up-20180621 2018-06-22 14:51:20 +01:00
40405c792a MCOL-1474 Add error handling to PTP
PriorityThreadPool didn't have very good error handling. If something
failed it would just ignore whatever was being processed. This could
lead to a query continuing without retreiving all of the required data.

This patch adds error handling, sending a message back to the client
and a log message. It also destroys and recreates the pool thread.
2018-06-14 16:28:06 +01:00
250d90a9bc MCOL-1474 Catch errors in PriorityThreadPool
PriorityThreadPool errors cause crashes in PrimProc. This patch catches
the errors and causes the thread to end cleanly.
2018-06-14 14:43:37 +01:00
5b1f5d5fe4 MCOL-1412 Ubuntu 18.04 support
Backport Ubuntu 18.04 support to 1.1
2018-05-14 22:03:25 +01:00
b83c21d891 MCOL-1376 Fix compiler errors in Ubuntu 18.04
Ubuntu 18.04 uses GCC 7.3 which is a little stricter than before.

Fixes a few errors due to implicit includes that are no longer implicit
and a ton of warnings about the implied alignment of code in
utils/common/any.hpp
2018-05-02 09:40:27 +01:00
0d7c0f7ae4 Merge branch 'develop-1.1' into dev-merge-up-20180202 2018-02-02 14:53:36 +00:00
9749d825b5 MCOL-1165 use the threadpool's idle down feature 2018-01-16 13:26:44 -06:00
504fcf0778 MCOL-1128 Allow exeMgrThreadPool to use unlimited threads. The number will be limited by the number of sessions allowed in server. 2018-01-12 16:29:01 -06: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
88a372c671 MCOL-513 Use vector ref for join to prevent vector copy. 2017-02-20 11:45:29 -06:00
def06be564 MCOL-513 Use vector ref for join to prevent vector copy. 2017-02-20 11:43:46 -06:00
59f984c3ca MCOL-513 Comment spelling 2017-02-17 10:45:59 -06:00
87a679e6eb MCOL-513 use a single funcor per thread. ThreadPool was doing one at a time anyway, but in a convpluted way that made it easier to add more if wanted. But it was expensive. Cleanup and polish. 2017-02-17 09:46:42 -06:00
e09b7e10c5 MCOL-513 Threadpool to unlimited threads when queuesize = 0. Idle down after 10 minutes 2017-02-13 11:56:28 -06:00
c2344accc9 MCOL-513 clean up and test thread pool for ExeMgr 2017-02-09 18:00:00 -06:00
55d006de1a MCOL-513 use thread pool for jobsteps 2017-02-03 15:25:21 -06:00
94b9d8aed2 MCOL-513 Optimize by replacing make_pair with a struct 2017-02-02 11:45:04 -06:00
b6321935fb MCOL-513 fix a couple bugs in threadpool join() Add a test program 2017-02-02 11:32:56 -06:00
c4742b8363 MCOL-513 Modify ThreadPool to have a join() method 2017-02-02 11:32:40 -06: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
424628349b Add CMake build tree files 2016-07-15 10:49:57 -05:00
d90af9496e Remove Makefile.in and update gitignore 2016-07-15 10:49:57 -05:00
22b7b3d1ef [MCOL-69] - autotools bootstrap only needed on new release version 2016-06-15 04:46:10 -04:00
b1b60065d9 build fails with boost linking errors 2016-06-03 13:55:09 +03:00
185d1a780c [MCOL-69] Remove Makefile.in files (should be generated with autoreconf) 2016-05-30 07:48:12 -04:00
25093d4dd0 [MCOL-69] Fix autotools build process
Remove generated Makefiles
Update Makefile.am to specify RPATH as a subdirectory of --prefix
Remove configure artifacts such as config.log, config.h, etc
Remove unneeded backup files (files ending in tilde ~)
2016-05-30 07:41:56 -04:00
e36d78cfc0 add back in windows project files 2016-01-13 15:52:33 -06:00
f6afc42dd0 the begginning 2016-01-06 14:08:59 -06:00