1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-10-28 19:54:55 +03:00
Commit Graph

54 Commits

Author SHA1 Message Date
Gagan Goel
1c460f3ba5 MCOL-2178 Cleanup of MIGR:: singleton from the plugin code.
Disable SP execution by the smart handlers for now.

    Add session variables to Enable/Disable select/derived/group_by
    handlers. Defaulted to Enable.
2019-08-04 21:50:50 -04:00
Roman Nozdrin
d62b66ecf7 parse_item() in execplan code now always get an actual GWI structure
to avoid accedental crashes.

Add check for Conversion of Big IN Predicates Into Subqueries optimization
conditions.

Enabled derivedTableOptimization() for group by and derived handlers.

Disabled Conversion of Big IN Predicates Into Subqueries optimization.

Disabled most of optimizer_flags for now.

RowGroup + operator now correctly sets useStringTable flag that
instructs code to check StringStore instead of plain data buffer.
2019-08-01 14:29:55 -04:00
Roman Nozdrin
7d5275e1bd MCOL-2178 CS now doesn't initiate a scan when MDB explicitly set scan to false in rnd_init().
sortItemIsInGroupRec() now has a base case for Item_Field and this prevents unbound recursion.

    Fixes fromSub() call with incorrect number of arguments.

    CS now doesn't ask for statistics unless a user explicitly asks for it using calsettrace().
2019-08-01 14:29:55 -04:00
Roman Nozdrin
3074b6c4b3 MCOL-2178 Functions with constant args are processed by CS now.
Fix crash in ha_calpont_impl_close_connection()

    Fix leak in ci.tableMap.

    Removed extra returns in pushdown_init to avoid crashes.

    create_select_handler now detects INSERT..SELECT.

    buildConstColFromFilter now uses any kind of filter to supply
    relevant columns.

    Remove strings used by vtable redo phase.

    Make FromSubQuery aware of Pushdown handlers.

    Changed debug_walk to work around changed Item framework.

    Temporary disabled derived handler and unsupported features checks.
2019-08-01 14:09:35 -04:00
Roman Nozdrin
c297ceb6c1 MCOL-2178 Connector code now uses separate hton for columnstore engine.
CS now uses hton->close_connection() method to release all FEP
    connections from MDB to ExeMgr.

    Refactor fetchNextRow() to remove decimal and double precision
    changes.
2019-08-01 14:09:35 -04:00
Roman Nozdrin
cd72326c4d MCOL-2178 Introduced a dummy replacement for a infinidb_table.
Used Item attribute getters introduced by 10.4

    Make changes to support Item::CONST_ITEM introduced by 10.4
    as a replacement for INT_,REAL_,STRING_ ITEM.

    Replaced QT_INFINIDB_DERIVED and similar flags
    with correponded flags for Item->print().

    Replaced or commented out infinidb_ variable names with columnstore_
    where applicable.
2019-08-01 14:09:35 -04:00
Roman Nozdrin
2071716ebd MCOL-2121 New derived_handler(MDEV-17096) infrastructure.
Renamed isInfiniDB() into isMCSTable

    Changed getSelectPlan() to reuse it with derived and
        other handler types.

    Separate pushdown handlers methods and functions.

    Removed vcxproj files from the source.

    Added fix for MCOL-2166.

    Merged with MCOL-2121
2019-08-01 12:54:17 -04:00
Roman Nozdrin
287b2ba7bd MCOL-3247 CS uses thread plugin variables since MCOL-1101 that aren't
good for transmiting cal_connection_info to handler::close_connection().
This variables are then erased in THD::cleanup() and the cal_connection_info
is replaced in handler::delete_table with an empty structure.
handler::close_connection() recevies cal_connection_info with empty cal_conn_hndl.
This patch uses THD::ha_data that is supposed to be used in such occasions.
2019-04-15 19:31:12 +03:00
Andrew Hutchings
064d2ee9e4 Merge branch 'develop-1.2' into develop-merge-up-20190328 2019-03-28 15:09:21 +00:00
Roman Nozdrin
eef813982c MCOL-2165 This disables correlated subqueries processing in group_by_nahdler
handing the query back to the server.
2019-02-22 19:04:45 +03:00
Roman Nozdrin
06696f596a MCOL-1101 Add plugin variables to replace the legacy system vars.
Legacy system vars with names infinidb_* was preserved for
    backward compatibility and they will be used if
    columnstore_use_legacy_vars variable is set.

    Remove unused structure and plugin variable.
2019-02-18 16:13:50 +03:00
Roman Nozdrin
d22183e195 MCOL-1101 Move client UDFs into a separate file.
Remove rmParms from ha_calpont_impl.cpp
2019-02-13 22:09:55 +03:00
Roman Nozdrin
ca0240037a FE connection info structure migration.
Replaced INFINIDB_VTABLE.cal_conn_info with a plugin thread variable.
	Fixed query_string memory deallocation crash at plugin_thdvar_cleanup.
2019-02-13 22:09:55 +03:00
Roman Nozdrin
971055a473 MCOL-1101. PoC for INFINIDB_VTABLE and thd variables migration to plugin sys variables. 2019-02-13 22:09:55 +03:00
Roman Nozdrin
ffb3a68a86 MCOL-1716 Disable GROUP BY handler for queries with NOT IN and correlated subquery. 2018-11-25 12:24:38 +03:00
Roman Nozdrin
3bf269b3f7 MCOL-1519 GROUP BY handler now uses an appropriate SELECT_LEX structure.
Before that handler used an outter query SELECT_LEX that could give
	incorrect information for subquery.
2018-11-20 13:44:47 +03:00
Roman Nozdrin
77e3349b06 MCOL-1519 The GROUP BY unsupported feature check returns false positive that disables GROUP BY handler. 2018-11-19 22:41:17 +03:00
Roman Nozdrin
d95d2d7601 MCOL-1519 The server won`t use GROUP BY handler in queries with:
unsupported JOIN types
	impossible HAVING
	impossible WHERE
2018-11-14 17:50:02 +03:00
Roman Nozdrin
5821a71072 MCOL-1717 GROUP BY handler now processes only relevant queries. 2018-09-12 14:08:35 +03:00
Roman Nozdrin
62f296b443 MCOL-1510 Make changes to allow aggregations as function arguments when build in release mode. See also MDEV-16842. 2018-08-30 16:59:41 +03:00
Andrew Hutchings
443a2867c4 MCOL-1385 Initial 10.3 support 2018-08-02 14:55:01 +01:00
Roman Nozdrin
cdd9bed1ae MCOL-1510 GROUP BY supports functions with aggregation funcs as arguments in projections, e.g. sum(i)+1. 2018-07-03 18:22:13 +03:00
Roman Nozdrin
b6941d5ba3 MCOL-1456 GROUP BY handler doesn`t process queries in autoswitch mode. 2018-06-20 21:04:55 +03:00
Andrew Hutchings
1a582eed4a Merge branch 'develop-1.1' into 1.1-merge-up-20180509-a2 2018-05-09 09:20:55 +01:00
Roman Nozdrin
720e1d91b9 MCOL-1052 WIP Clean up the code. 2018-04-11 16:15:12 +03:00
Roman Nozdrin
ba38e392fc MCOL-1052 WIP Uses item_ptr instead of auxilary vector; Changes fetchNextRow() interface and remove unused funcs; Uncomment extra checks in ha_calpont_impl_group_by_init(). 2018-04-11 15:52:26 +03:00
Roman Nozdrin
5a0ff2bb60 MCOL-1052 WIP group_by_handler processes agg functions in ORDER BY now. debug_walk() outputs information about extended SELECT list items. 2018-04-10 18:55:19 +03:00
Roman Nozdrin
05bca5382d MCOL-1052 WIP HAVING filter works. Decline non GROUP BY fields not presented in the ORDER BY list with error. 2018-04-10 04:27:08 +03:00
Roman Nozdrin
617ff85b94 MCOL-1052 WIP Working with HAVING over agg functions problem. 2018-04-05 17:20:26 +03:00
Roman Nozdrin
78aeedb162 MCOL-1052 WIP Process UNION subqueries separetely. 2018-04-02 15:03:59 +03:00
Roman Nozdrin
d562caecba MCOL-1052 Generate and send CSEP to and receive set data from ExeMgr. 2018-03-31 22:38:18 +03:00
Roman Nozdrin
fa4067b6f0 MCOL-1052 Generate execution plan for a aggregated function query call. 2018-03-27 18:37:00 +03:00
Roman Nozdrin
cff504c8bf MCOL-1052. init_scan() initial implementation. 2018-03-22 17:12:56 +03:00
Roman Nozdrin
a03ecb7a8e MCOL-1052. The handler returns fixed value. 2018-03-19 20:45:21 +03:00
Roman Nozdrin
e14b327a57 MCOL-1052: Skeleton for group_by_handler for CS. 2018-03-17 14:06:23 +03:00
Andrew Hutchings
0d7c0f7ae4 Merge branch 'develop-1.1' into dev-merge-up-20180202 2018-02-02 14:53:36 +00:00
Roman Nozdrin
bea47cc657 MCOL-939 Moved columnstore version information to columnstoreversion.h for 1.1.X 2017-12-12 22:53:33 +03:00
Andrew Hutchings
01446d1e22 Reformat all code to coding standard 2017-10-26 17:18:17 +01:00
David Hall
f9e5b7b507 MCOL-597 Take Window Functions just to get a compile. No other changes were needed. 2017-04-21 09:47:56 -05:00
david hill
e9d96ddc85 copyright additions 2016-06-01 20:03:20 -05:00
david hill
3a6d4c3fd2 Revert "copyright name change"
This reverts commit 7000f6e4f2.
2016-06-01 17:54:28 -05:00
david hill
7000f6e4f2 copyright name change 2016-06-01 14:54:11 -05:00
David Hall
eb36fa5e7e MCOL-2 Update engine name to columnstore part 2 2016-05-18 17:31:44 -05:00
David Hall
80437a0083 MCOL-2 Update engine name to columnstore 2016-05-18 17:28:50 -05:00
David Hall
06a9a7d521 Add HA_BINLOG_ROW_CAPABLE to table glags. Since we don't care about binlog, this should be harmless. We had been getting errors on certain queries that needed row binlog because of variance in the answer. 2016-05-06 13:48:59 -05:00
David Hall
4fbb4fee91 Remove a bad table_flag 2016-05-03 09:40:30 -05:00
David Hall
445ac3337b Derived tables no longer are cached. Fix optimizer to handle this fact 2016-05-02 18:43:54 -05:00
David Hall
a72f053840 Fix for date_item and a crash 2016-04-26 17:21:35 -05:00
David Hall
d24629b467 MariaDB 10.1 has different signature for start_bulk_insert than mysql 5.1.73 2016-02-19 12:11:05 -06:00
David Hall
f458cb46cc Make drop table work 2016-02-18 16:36:15 -06:00