mariadb/storage/federatedx
Michael Widenius f2ca9c8784 Applied patch for lp:585688 "maridb crashes in federatedx code" from lp:~atcurtis/maria/federatedx:
- Fixed Partition engine to store CONNECTION string for partitions.
  Removed HA_NO_PARTITION flag from FederatedX.
  Added test 'federated_partition' to suite.
- lp:#585688 - maridb crashes in federatedx code
  FederatedX handler instances, created on one thread and used on
  another thread (via table cache) when "show table status" is executed
  crashed because txn member was not initialized for current thread.
  Added test 'federated_bug_585688' to suite.

Author for the patch is Antony Curtis

mysql-test/suite/federated/federated_bug_585688.result:
  Test for lp:585688
mysql-test/suite/federated/federated_bug_585688.test:
  Test for lp:585688
mysql-test/suite/federated/federated_partition-slave.opt:
  Test for partition support in federatedx
mysql-test/suite/federated/federated_partition.result:
  Test for partition support in federatedx
mysql-test/suite/federated/federated_partition.test:
  Test for partition support in federatedx
mysql-test/t/partition_federated.test:
  Updated error message
sql/ha_partition.cc:
  Added support for connection strings to partitions for federatedx
sql/ha_partition.h:
  Added support for connection strings to partitions for federatedx
sql/partition_element.h:
  Added support for connection strings to partitions for federatedx
sql/sql_yacc.yy:
  Added support for connection strings to partitions for federatedx
storage/federatedx/ha_federatedx.cc:
  Added support for partitions.
  FederatedX handler instances, created on one thread and used on another thread (via table cache) when "show table status"
  is executed crashed because txn member was not initialized for current thread.
2011-02-10 22:40:59 +02:00
..
AUTHORS Added federatedx storage engine 2009-10-30 20:50:56 +02:00
ChangeLog Added federatedx storage engine 2009-10-30 20:50:56 +02:00
CMakeLists.txt Add federatedx files for build 2009-11-03 16:39:54 +02:00
FAQ Added federatedx storage engine 2009-10-30 20:50:56 +02:00
federatedx_io.cc Added federatedx storage engine 2009-10-30 20:50:56 +02:00
federatedx_io_mysql.cc Fix for LP#571200 MySQL Bug#32426: FederatedX corrupt ORDER BY with TEXT 2010-08-12 20:52:52 +03:00
federatedx_io_null.cc Fix for LP#571200 MySQL Bug#32426: FederatedX corrupt ORDER BY with TEXT 2010-08-12 20:52:52 +03:00
federatedx_probes.h Added federatedx storage engine 2009-10-30 20:50:56 +02:00
federatedx_txn.cc Added federatedx storage engine 2009-10-30 20:50:56 +02:00
ha_federatedx.cc Applied patch for lp:585688 "maridb crashes in federatedx code" from lp:~atcurtis/maria/federatedx: 2011-02-10 22:40:59 +02:00
ha_federatedx.h Fix for LP#571200 MySQL Bug#32426: FederatedX corrupt ORDER BY with TEXT 2010-08-12 20:52:52 +03:00
Makefile.am Fixed compiler and gmake warnings 2010-11-29 11:27:52 +02:00
plug.in MWL#74: Shared libmysqld.so library. 2010-11-17 13:24:20 +01:00
README Added federatedx storage engine 2009-10-30 20:50:56 +02:00
README.windows Added federatedx storage engine 2009-10-30 20:50:56 +02:00
TODO Added federatedx storage engine 2009-10-30 20:50:56 +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