1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-12-21 13:40:58 +03:00
Files
mariadb-columnstore-engine/utils/udfsdk
Andrew Hutchings ebb22a96a3 MCOL-3551 Use generic MariaDB Server paths
This branch enforces the use of generic MariaDB server paths for their
binaries and data rather than custom paths.

/usr/local/mariadb/columnstore is now only for columnstore with this
patch.

It should be noted that this removes the auto-mounting of external
MariaDB UM data storage for AWS.

This is also a fix for MCOL-3510 after buildbot changes are made.

Also... MCOL-3552 Use columnstore.cnf to load plugins

The ColumnStore plugins now load using a columnstore.cnf instead of a
SQL sequence to be more in-line with MariaDB's methods.
2019-10-13 09:34:37 +01:00
..
2019-03-06 12:22:35 -06:00
2016-01-06 14:08:59 -06:00
2016-01-06 14:08:59 -06:00
2019-03-05 09:33:39 -06:00
2019-03-05 09:33:39 -06:00

How to use the ColumnStore UDF SDK

Obtain the MariaDB columnstore source code from https://github.com/mariadb-corporation/mariadb-columnstore-server
and follow the pre-requisite and build instructions.

Go into the utils/udfsdk directory.

At this point you can use the MCS_add() function template in udfsdk.cpp and udfmysql.cpp
files to create your own function or just try that function as is.
- Make the library
    $ make
- Copy the libudf_mysql.so.1.0.0 and libudfsdk.so.1.0.0 file to /usr/local/mariadb/columnstore/lib on
  every columnstore node.
    $ cp libudf_mysql.so.1.0.0 libudfsdk.so.1.0.0 /usr/local/mariadb/columnstore/lib/
- Restart ColumnStore
    $ mcsadmin restartsystem y
- Using the mcsmysql client add the user defined function, e.g,
    $ mcsmysql
    > create function mcs_add returns integer soname 'libudf_mysql.so';
    > create function mcs_isnull returns string soname 'libudf_mysql.so';

You should now be able to use the mcs_add(arg1, arg2) and mcs_isnull(arg) functions in the select and/or where clauses
of SQL statements.