1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-01 06:46:55 +03:00
Commit Graph

1621 Commits

Author SHA1 Message Date
4f8e3b0f6e MCOL-468: remove slave-skip-errors=all from default settings 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
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
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
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
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
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
55d006de1a MCOL-513 use thread pool for jobsteps 2017-02-03 15:25:21 -06:00
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
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
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
b9458183eb Merge pull request #95 from mariadb-corporation/MCOL-317
MCOL-317 Remove libdrizzle
2017-01-25 13:18:08 -06:00
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
bb9fdd6eac MCOL-468: remove slave-skip-errors=all from default settings 2017-01-20 17:05:50 -06:00
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
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
271bfb525e Also check for zero
Needed for unsigned int columns
2017-01-18 17:39:37 +00:00
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
aa2cb8b9ba Also check for zero
Needed for unsigned int columns
2017-01-18 17:35:59 +00:00
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
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
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
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
de6c933e02 MCOL-163 Add support for DOUBLE PRECISION
Just an alias for DOUBLE
2017-01-06 10:53:11 +00:00
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
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
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
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
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
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
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
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
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
fe381ab07c MCOL-442 Allow default zero date/datetime
Remove the hard-coded restriction in the DDL code, it isn't needed any
more
2016-12-06 15:47:33 +00:00
e2771c246b MCOL-406 Add schema to table_usage()
Schema name should be included in results
2016-12-06 12:59:43 +00:00
52fd60f446 MCOL-430 Fix memory corruption in cross-engine
Cross engine was using fRowGroupDelivered for pulling the rows out of
libdrizzle and passing them on to the next step in the job list
simultaneously on different threads. Sometimes this is OK, but with
larger data sets it leads to data corruption and race conditions.

For pulling the rows out of libdrizzle this patch uses a new RowGroup
object instead to avoid the collision.

In addition this patch makes the DrizzleMySQL class a dynamically
allocated object. A first step into potentially using unbuffered row
results for performance and lower RAM usage at a later date.
2016-12-05 17:35:45 +00:00
f586f3b46a MCOL-423 Fixes to I_S tables
Fixes the following:

* Compression ratio calculation was incorrect
* Possible issues due to system catalog thread ID usage
* Compressed file size data count was leaking many FDs when the table
  wasn't compressed
* Compressed file size data count was allocating random large amounts
  of RAM and then leaking it when the table wasn't compressed
2016-11-29 10:45:38 +00:00
3b1de94cd8 MCOL-406 Improved Information Schema
* Add INFORMATION_SCHEMA.COLUMNSTORE_FILES which contains information
  about files
* Remove file information from COLUMNSTORE_EXTENTS (due to above)
* Hide columns with Object ID < 3000 (internal columns)
* Fix bad calculation in data_size columns
* Fix minor memory leak
* Add compressedSize() function to IDBFileSystem to get the used file
  size for a compressed file
* Add columnstore_info schema with utility stored procedures to access
  the information_schema tables
2016-11-23 22:11:26 +00:00
874596c6cd MCOL-309 Implement Information Schema tables
This patch does the following:

* Fix a year storage issue in the datestamp for the columnstore tables
  metadata table (note that any previous tables will still have the
  incorrect year stored).
* Expose the table creation date in CalpontSystemCatalog::getTables()
* Add an INFORMATION_SCHEMA table listing the tables in ColumnStore
  (similar to systable)
* Add an INFORMATION_SCHEMA table listing the columns in ColumnStore
  (similar to syscolumn)
* Add an INFORMATION_SCHEMA table listing the extents in ColumnStore
  (similar to the editem tool but with additional file information)
* Modifies the build system and scripts to support the new tables
2016-11-14 15:44:20 +00:00
15d6cafb53 Merge pull request #52 from mariadb-corporation/MCOL-385
MCOL-385 Fix crash observed with 10.1.19 merge
2016-11-07 15:21:15 -06:00
df238a4e0f Merge pull request #50 from mariadb-corporation/MCOL-334
MCOL-334 Give joins in views highest priority
2016-11-07 15:20:21 -06:00
14a9581bb6 MCOL-385 Fix crash observed with 10.1.19 merge
Appears to be a regression introduced in MCOL-361 which was causing a
segault with bug3670.negative.sql
2016-11-07 21:04:26 +00:00
4fc7fa12cd MCOL-129 INSERT/UPDATE strict mode support
This changes the warning for truncation to the correct MariaDB error
code (1264).

In addition it passes the strict mode up into the DML class to roll back
correctly.

It also sets the abort_on_warning flag for updates as this isn't set on
the rnd_init phase but is needed for strict mode to work.
2016-11-04 14:06:00 +00:00
41266b0f23 MCOL-334 Give joins in views highest priority
For "select * from {view} where {col} in ({subquery})" type queries the
join for 'in' was being processed before any joins in the view. This
patch changes the priority so joins in views are processed first.
2016-11-03 17:54:12 +00:00
059a158837 Merge pull request #49 from mariadb-corporation/MCOL-263
MCOL-263: throw different error message on load data infile if column…
2016-11-03 09:39:40 -05:00
39c3cabb7c MCOL-263: throw different error message on load data infile if columnstore suspendDatabaseWrite is enabled 2016-11-02 17:34:46 -05:00
086a98794e MCOL-361 String::c_ptr() can cause a realloc and break things. Remove all uses of c_ptr to String objects from the server. 2016-11-01 16:07:13 -05:00
c2988cfbf5 Merge pull request #47 from mariadb-corporation/MCOL-121
MCOL-121 reverse the disabling client progress reports.
2016-10-31 19:48:20 +00:00
ab5afda7c4 MCOL-121 reverse the disabling client progress reports. 2016-10-31 14:06:10 -05:00