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
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
Andrew Hutchings
e2771c246b MCOL-406 Add schema to table_usage()
Schema name should be included in results
2016-12-06 12:59:43 +00:00
Andrew Hutchings
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
Andrew Hutchings
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
Andrew Hutchings
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
Andrew Hutchings
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
dhall-InfiniDB
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
dhall-InfiniDB
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
Andrew Hutchings
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
Andrew Hutchings
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
Andrew Hutchings
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
dhall-InfiniDB
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
Ben Thompson
39c3cabb7c MCOL-263: throw different error message on load data infile if columnstore suspendDatabaseWrite is enabled 2016-11-02 17:34:46 -05:00
David Hall
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
Andrew Hutchings
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
David Hall
ab5afda7c4 MCOL-121 reverse the disabling client progress reports. 2016-10-31 14:06:10 -05:00
dhall-InfiniDB
96dfb4c294 Merge pull request #46 from mariadb-corporation/MCOL-278
Warning on drop table if exists error
2016-10-31 11:53:55 -05:00
Ben Thompson
c975f00973 Throw warning when table doesn't exist in columnstore so drop table if exists can still remove the front end table. 2016-10-28 15:37:38 -05:00
David Hall
0368dd487a MCOL-153 Add UDF function calgetsqlcount() which will display the number of sql statements active and the number waiting. 2016-10-27 15:49:01 -05:00
dhall-InfiniDB
6694bc3d16 Merge pull request #44 from mariadb-corporation/MCOL-344
Add better cache explanations to debug_walk. This is debug only.
2016-10-27 15:42:00 -05:00
David Hall
331dfd3a4c Add better cache explanations to debug_walk. This is debug only. 2016-10-27 15:39:50 -05:00
Andrew Hutchings
32c76825de Merge pull request #43 from mariadb-corporation/MCOL-218
Mcol 218
2016-10-27 20:21:19 +01:00
dhall-InfiniDB
8f2fca2239 Merge pull request #41 from mariadb-corporation/MCOL-350
MCOL-350 Fix zero date comparison
2016-10-27 10:06:10 -05:00
David Hall
b1a110b830 MCOL-121 client reports "stage 2 - enabling keys" for every query against a CS table.
Add progress_report_time=0 to default my.cnf to disable progress reports
2016-10-24 17:30:05 -05:00
Ben Thompson
fc4cb7ab71 Clean up unneeded objects created in fix. 2016-10-24 11:44:07 -05:00
Andrew Hutchings
877dc201bd MCOL-371 fix mutex free crash
It is possible for an exception to be thrown when a memory limit is hit
whilst a mutex is lock. That mutex is never unlocked and in Ubuntu 16.04
release build it can cause a crash when freed.

This patch catches the exception, releases the lock and then re-throws.
2016-10-23 16:12:38 +01:00
Ben Thompson
87ac01c3d4 MCOL-218: Make drop database work in the columnstore engine. 2016-10-19 15:23:02 -05:00
Andrew Hutchings
08d52d510e MCOL-350 Fix zero date comparison
If a query uses '0000-00-00' the value to compare with is hard-coded to
0. With date types there are 6 unused bits set to 1 so a zero date is
stored as 3F 00 00 00.

This removes the hard-coded setting of '0000-00-00' to 0 and uses the
correct conversion routines instead.
2016-10-19 19:38:53 +01:00
David Hall
7c9e6e84c2 remove debug cout in ddl.l 2016-10-17 13:03:23 -05:00
David Hall
e4f93ea2f2 MCOL-46 subquery sometimes causes unknown error
This was caused by Item_cache::val_str() sometimes causing a full exec of subquery before we're ready
2016-10-12 13:30:35 -05:00
david hill
ed3bc28171 added copyright headers 2016-10-11 10:02:01 -05:00
david hill
897d8d3f3d change snmp to alarm 2016-10-10 17:46:24 -05:00
David Hall
d50721d65a MCOL-343 Change references to String::ptr() into String::c_ptr() 2016-10-03 15:54:55 -05:00
Andrew Hutchings
5fad418309 MCOL-341 Fix DATETIME2 support in INSERT...SELECT
DATETIME2 has a variable pack length but we were using a constant length
of 8 if the value was NULL. This messed up the offset for the next
column.
2016-10-03 15:51:47 +01:00
Andrew Hutchings
52c0f79fcf MCOL-330 Fix datetime to int conversion
Datetime has internal int value which is very different to MySQL's int
value. This patch differentiates between the two and also fixes a column
width issue which appeared once the datetime handling was fixed.
2016-09-29 17:27:52 +01:00
Andrew Hutchings
650dba47fc Fix build issues
Fix jemalloc issues and a namespace issue
2016-09-23 17:28:41 -05:00
benthompson15
399d680375 Merge pull request #16 from LinuxJedi/MCOL-97
MCOL-97
2016-09-23 09:33:14 -05:00
Andrew Hutchings
e6925c8cf7 Merge pull request #13 from mariadb-corporation/MCOL-290
Mcol 290
2016-09-23 09:24:13 -05:00
David Hall
f20345f798 MCOL-290 - Fix spurious typo 2016-09-23 09:18:28 -05:00
Andrew Hutchings
3d91ac193c Merge branch 'develop' of git://github.com/mariadb-corporation/mariadb-columnstore-engine into MCOL-97 2016-09-22 18:50:59 -05:00
David Hall
afab801b5f MCOL-299 Change the getStrVal() for float and double to match the results of the mariadb display string for same. 2016-09-22 09:34:13 -05:00
Ben Thompson
7d3cd26af9 MCOL-160 MCOL-262 CMake Build Fixes for out-of-tree builds and engine RPMS 2016-09-22 10:14:18 -04:00
David Hall
1e277575f9 Remove extraneous debug log lines 2016-09-14 17:10:57 -05:00
Andrew Hutchings
b954001fba Remove net-snmp and use the OS version
Also remove a few old binaries from build/
2016-09-13 17:42:57 +01:00
Andrew Hutchings
b5d4e02b21 MCOL-173 Fix null handling for bulk inserts
When infinidb_use_import_for_batchinsert is enabled the NULL handling
for the batch insert was incorrect. This is due to an off-by-one on the
NULL bitmap. This also affects INSERT...SELECT.
2016-09-09 16:09:47 +01:00
Andrew Hutchings
6c7a34c5fb MCOL-240 Fix NULL handling on empty Having clause
During subquery processing it is possible to have an empty Having
clause. When this happens various tree elements are deleted but the
pointers to those tree elements are not set to NULL. So later on in
processing ExeMgr can crash.
2016-09-08 19:45:40 +01:00
David Hall
8364c9da52 MCOL-281 LDI using cpimport pads char column values with spaces
Use new logic to find actual data length
2016-09-07 12:13:22 -05:00
David Hall
23cf2e3edc Remove #define SKIP_AUTOI. This is no longer used 2016-09-06 12:04:28 -05:00
dhall-InfiniDB
75ecb950f9 Merge pull request #2 from LinuxJedi/MCOL-264
Fix DDL parser for spaces in table options
2016-09-02 09:15:11 -05:00
dhall-InfiniDB
1a7883f98b Merge pull request #4 from LinuxJedi/MCOL-274
Make date handling more in-line with MySQL
2016-09-02 09:15:00 -05:00