You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-12-21 13:40:58 +03:00
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.
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.