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

1737 Commits

Author SHA1 Message Date
Andrew Hutchings
aea729fe7d MCOL-267 DML support
* DML writes for multi-block dictionary (blob) now works
* PrimProc fixed so that the first block in multi-block is read
correctly
* Performance optimisation (removed string copy into stack) for new
dictionary entries
2017-03-18 14:31:29 +00:00
Andrew Hutchings
c08d03fba4 MCOL-267 Make BLOB DDL/DML work
Currently limited to 8KB inserts.
2017-03-17 12:10:02 +00:00
Andrew Hutchings
cf58b8de5c MCOL-267 BLOB/TEXT in DDL parser
Add basic support for BLOB/TEXT in DDL parser
2017-03-17 09:28:36 +00:00
Andrew Hutchings
27e5995cd3 MCOL-267 Add basic engine support
This patch adds enough support so that cross engines joins with blob
columns in the foreign engines will work. The modifications are as
follows:

* Add CrossEngine support for non-NULL-terminated (binary) data
* Add row data support for blobs (similar to varbinary)
* Add engine support for writing out blob data correctly to the storage
engine API
* Re-enable blob support in the engine plugin
2017-03-17 09:27:50 +00:00
dhall-InfiniDB
c12b587d0d Merge pull request #133 from mariadb-corporation/MCOL-605-1.0
MCOL-605 limit connections for I_S table
2017-03-07 16:01:20 -06:00
Andrew Hutchings
b55c526a5d MCOL-605 limit connections for I_S table
I_S.COLUMNSTORE_FILES now caches a connection per dbroot instead of
using a connection per file.
2017-03-07 21:16:41 +00:00
Andrew Hutchings
052f8d0249 MCOL-533 fix units for table_usage
The fix for MCOL-533 accidentally removed units processing
2017-03-07 21:10:47 +00:00
Andrew Hutchings
e9c5d86c15 MCOL-533 Add lock to table_usage
Calling from multiple connections simultaneously is bad. This adds a
lock preventing that.
2017-03-07 21:10:00 +00:00
Andrew Hutchings
9985bb0647 MCOL-533 fix the table_usage() procedure
The old procedure could be wildly incorrect when there were multiple
extents for a dictionary column.

The new one uses tables so that columnstore_files doesn't get
hammered too hard. They can't be temporary tables due to the reuse
restriction on temporary tables.
2017-03-07 21:09:29 +00:00
Andrew Hutchings
468fc8c260 MCOL-605 limit connections for I_S table
I_S.COLUMNSTORE_FILES now caches a connection per dbroot instead of
using a connection per file.
2017-03-05 09:58:20 +00:00
Andrew Hutchings
c6000d3b7a MCOL-533 fix units for table_usage
The fix for MCOL-533 accidentally removed units processing
2017-03-02 17:56:32 +00:00
David Hill
923e995b29 MCOL-552 - send stdout to null 2017-02-28 11:03:08 -06:00
David Hill
b4061cd4cc MCOL-552 2017-02-28 10:46:13 -06:00
Andrew Hutchings
084c1b8ecc Merge pull request #125 from mariadb-corporation/MCOL-513
Mcol 513
2017-02-20 17:47:36 +00:00
Andrew Hutchings
bf624231e7 MCOL-574 Fix cross engine for 'localhost'
Use TCP instead of UDS for 'localhost' to keep behaviour the same as the
previous libdrizzle engine.
2017-02-17 16:49:02 +00:00
David Hall
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
Ben Thompson
4f8e3b0f6e MCOL-468: remove slave-skip-errors=all from default settings 2017-02-17 09:46:42 -06:00
David Hall
e09b7e10c5 MCOL-513 Threadpool to unlimited threads when queuesize = 0. Idle down after 10 minutes 2017-02-13 11:56:28 -06:00
David Hall
c2344accc9 MCOL-513 clean up and test thread pool for ExeMgr 2017-02-09 18:00:00 -06:00
Andrew Hutchings
00adccdcaa MCOL-317 Fix out of tree builds
Make linking with libmysqlclient work with out of tree builds
2017-02-09 18:00:00 -06:00
Andrew Hutchings
106a62222c MCOL-533 Add lock to table_usage
Calling from multiple connections simultaneously is bad. This adds a
lock preventing that.
2017-02-09 18:00:00 -06:00
Andrew Hutchings
854a07f7b2 MCOL-533 fix the table_usage() procedure
The old procedure could be wildly incorrect when there were multiple
extents for a dictionary column.

The new one uses tables so that columnstore_files doesn't get
hammered too hard. They can't be temporary tables due to the reuse
restriction on temporary tables.
2017-02-09 18:00:00 -06:00
Andrew Hutchings
babaac8172 MCOL-317 Remove libdrizzle
This switches to MariaDB's client library instead of libdrizzle for
Cross Engine and query stats.

It also switches to unbuffered result sets.
2017-02-09 17:58:54 -06:00
david hill
371afbcf4b Merge pull request #108 from mariadb-corporation/MCOL-468
MCOL-468: remove slave-skip-errors=all from default settings
2017-02-09 16:53:45 -06:00
David Hall
55d006de1a MCOL-513 use thread pool for jobsteps 2017-02-03 15:25:21 -06:00
Andrew Hutchings
67121aab81 MCOL-317 Fix out of tree builds
Make linking with libmysqlclient work with out of tree builds
2017-01-25 21:32:11 +00:00
dhall-InfiniDB
d50007b61d Merge pull request #114 from mariadb-corporation/MCOL-533-locks
MCOL-533 Add lock to table_usage
2017-01-25 14:25:22 -06:00
Andrew Hutchings
38bf720db4 MCOL-533 Add lock to table_usage
Calling from multiple connections simultaneously is bad. This adds a
lock preventing that.
2017-01-25 19:34:46 +00:00
benthompson15
b9458183eb Merge pull request #95 from mariadb-corporation/MCOL-317
MCOL-317 Remove libdrizzle
2017-01-25 13:18:08 -06:00
Andrew Hutchings
b37d0f43f5 MCOL-533 fix the table_usage() procedure
The old procedure could be wildly incorrect when there were multiple
extents for a dictionary column.

The new one uses tables so that columnstore_files doesn't get
hammered too hard. They can't be temporary tables due to the reuse
restriction on temporary tables.
2017-01-25 11:03:03 +00:00
Ben Thompson
bb9fdd6eac MCOL-468: remove slave-skip-errors=all from default settings 2017-01-20 17:05:50 -06:00
Andrew Hutchings
a89ab2f2bf MCOL-454 Fix HWM edge case
Sometimes block offset can be > 0 but HWM can be 0 this causes a
calculation error in the DATA_SIZE field of I_S.columnstore_extents
2017-01-19 16:45:10 +00:00
Andrew Hutchings
d26223aa50 MCOL-454 Fix HWM edge case
Sometimes block offset can be > 0 but HWM can be 0 this causes a
calculation error in the DATA_SIZE field of I_S.columnstore_extents
2017-01-19 16:43:27 +00:00
Andrew Hutchings
271bfb525e Also check for zero
Needed for unsigned int columns
2017-01-18 17:39:37 +00:00
Andrew Hutchings
a64851f56c MCOL-477 Add validation to alter autoincrement
If the data isn't validated and someone gives bad input it could cause
corruption. This validates the input.
2017-01-18 17:39:30 +00:00
Andrew Hutchings
aa2cb8b9ba Also check for zero
Needed for unsigned int columns
2017-01-18 17:35:59 +00:00
Andrew Hutchings
183298ba50 MCOL-477 Add validation to alter autoincrement
If the data isn't validated and someone gives bad input it could cause
corruption. This validates the input.
2017-01-18 17:28:19 +00:00
Andrew Hutchings
ffcfc41563 MCOL-507 Further ExeMgr performance improvements
This does the following:

* Switch resource manager to a singleton which reduces the amount of
times the XML data is scanned and objects allocated.
* Make the I_S tables use the FE implementation of the system catalog
* Make the I_S.columnstore_columns table use the RID list cache
* Make the extentmap pre-allocate a vector instead of many small allocs
2017-01-16 12:33:27 +00:00
Andrew Hutchings
3299a3d57d MCOL-317 Remove libdrizzle
This switches to MariaDB's client library instead of libdrizzle for
Cross Engine and query stats.

It also switches to unbuffered result sets.
2017-01-12 17:12:39 +00:00
Andrew Hutchings
641fd2bfe2 MCOL-494 Don't try to process BLOB/TEXT
It is possible for a BLOB/TEXT column to appear in a cross engine join.
This causes an ExeMgr crash later during execution. For now this patch
disable BLOB/TEXT support.
2017-01-10 07:33:00 -06:00
Andrew Hutchings
de6c933e02 MCOL-163 Add support for DOUBLE PRECISION
Just an alias for DOUBLE
2017-01-06 10:53:11 +00:00
Andrew Hutchings
bb800e4771 MCOL-477 Change autoincrement on ALTER TABLE
This patch allows the following syntax to change the current
autoincrement value for the table:

ALTER TABLE table_name COMMENT='autoincrement=value';

Where "value" is the new integer to be used.
2017-01-05 15:03:54 +00:00
Andrew Hutchings
98f92d53b2 MCOL-301 Fix nested arithmatic in aggregate
Arithmatic on two functions inside an aggregate function caused an error
due to the function not being parsed correctly. This fix parses the
function for the arithmatic.
2016-12-16 21:42:52 +00:00
Andrew Hutchings
5376d4b290 MCOL-301 fix SUM() with constants
If SUM() has constants return the MAX() instead of constant * rows.
2016-12-15 17:13:02 +00:00
Andrew Hutchings
025838629b MCOL-454 I_S.COLUMNSTORE_FILES multi-node
I_S.COLUMNSTORE_FILES returned bad filenames and NULL file sizes when
there are multiple nodes in a ColumnStore cluster

It adds an extra message call to the WriteEngine to get the file size
for that file. The I_S function will figure out which WriteEngine to
communicate with and get the file size details from it.
2016-12-14 16:55:03 +00:00
Andrew Hutchings
5571481957 MCOL-457 Fix insert...select NULL bitmap
When a table has 8 columns that could be NULL and a NOT NULL column
after the NULLable columns the check to see if we have gone over the
NULL bitmap byte limit is run prematurely trigging an error.

This patch moves the check to only run when we are looking at NULLable
columns.
2016-12-09 10:36:42 +00:00
Andrew Hutchings
ef3a655f84 MCOL-406 More fixes to stored procs
* Fix infinite loop problem when there are no ColumnStore tables
* Make table_usage('schema', NULL) work
2016-12-07 09:12:51 +00:00
Andrew Hutchings
6efe906972 MCOL-406 add table_usage() schema input
table_usage() is now called using:

* table_usage(NULL, NULL) - all tables
* table_usage(NULL, 'table') - match tables with the name 'table' in all
schemas
* table_usage('schema', 'table') - match a specific schema and table
combination
2016-12-06 20:10:07 +00:00
dhall-InfiniDB
d4a601b4fb Merge pull request #68 from mariadb-corporation/MCOL-442
MCOL-442 Allow default zero date/datetime
2016-12-06 12:26:09 -06:00
dhall-InfiniDB
cb8ffedf03 Merge pull request #67 from mariadb-corporation/MCOL-406-2
MCOL-406 Add schema to table_usage()
2016-12-06 12:16:48 -06:00