mariadb/storage/federatedx
Sergei Petrunia cbbe4971b6 MDEV-21887: federatedx crashes on SELECT ... INTO query in select_handler code
- Don't try to push down SELECTs that have a side effect

- In case the storage engine did support pushdown of SELECT with an INTO
  clause, write the rows we've got from it into select->join->result,
  and not thd->protocol.  This way, SELECT ... INTO ... FROM
  smart_engine_table will put the result into where instructed, and
  NOT send it to the client.
2020-03-07 01:14:41 +03:00
..
AUTHORS Lintian complains on spelling error 2019-12-02 12:41:13 +02:00
ChangeLog Added federatedx storage engine 2009-10-30 20:50:56 +02:00
CMakeLists.txt CRLF->LF 2015-06-02 22:07:47 +02:00
FAQ Added federatedx storage engine 2009-10-30 20:50:56 +02:00
federatedx_io.cc Remove unused declarations 2019-04-03 19:46:34 +03:00
federatedx_io_mysql.cc MDEV-16157 federated corrupts timestamps 2018-05-17 15:33:39 +02:00
federatedx_io_null.cc MDEV-15091 : Windows, 64bit: reenable and fix warning C4267 (conversion from 'size_t' to 'type', possible loss of data) 2018-02-06 12:55:58 +00:00
federatedx_probes.h Added federatedx storage engine 2009-10-30 20:50:56 +02:00
federatedx_pushdown.cc MDEV-21887: federatedx crashes on SELECT ... INTO query in select_handler code 2020-03-07 01:14:41 +03:00
federatedx_pushdown.h MDEV-17096 Pushdown of simple derived tables to storage engines 2019-02-09 22:54:26 -08:00
federatedx_txn.cc MDEV-12725 select on federated table crashes server 2017-08-08 22:49:09 +02:00
ha_federatedx.cc MDEV-21581 Helper functions and methods for CHARSET_INFO 2020-01-28 12:29:23 +04:00
ha_federatedx.h MDEV-19955 make argument of handler::ha_write_row() const 2019-07-05 13:14:19 +03:00
README Added federatedx storage engine 2009-10-30 20:50:56 +02:00
README.windows CRLF->LF 2015-06-02 22:07:47 +02:00

This is the FederatedX Storage Engine, developed as an external storage engine.

NOTE:

The following is only relevant if you use it for MySQL.  MariaDB already comes
with the latest version of FederatedX.

To install, grab a copy of the mysql source code and run this:

./configure --with-mysql=/path/to/src/mysql-5.x --libdir=/usr/local/lib/mysql/

make install

And then inside of MySQL:

mysql> INSTALL PLUGIN federatedx SONAME 'libfederatedx_engine.so';

mysql> CREATE TABLE `d` (`a` varchar(125), b text, primary key(a)) ENGINE=FEDERATEDX CONNECTION="mysql://root@host/schema/table"

or 

mysql> CREATE TABLE `d` (`a` varchar(125), b text, primary key(a)) ENGINE=FEDERATEDX CONNECTION="server" CHARSET=latin1;

You will probably need to edit the Makefile.am in the src/ tree if you want
to build on anything other then Linux (and the Makefile assumes that the
server was not compiled for debug). The reason for the two possible
configure lines is that libdir is dependent on where MySQL was installed. If
you run the "INSTALL PLUGIN ..." and you get a file not found, check that
your configured this directory correctly.

For Solaris you can enable DTrace probes by adding to configure
--enable-dtrace