When ALTER TABLE ... ENGINE= is called the following happens:
1. A temporary table is created in the new engine with the real table
name but a temporary file name supplied
2. A bulk insert is started from old to new table
3. The old table is dropped
4. The new table is renamed
For #1 we use the real table name instead of the temporary file name
(otherwise step #2 breaks), we were therefore trying to skip #4.
This broke regular RENAME TABLE commands.
With this patch we detect if the rename is for a temporary to real table
and skip it. Since this is the only instance where we support temporary
tables.
This patch also fixes issues with extracting table names from file
names and some other irrelevant stuff.
Longer term if we want to support temporary tables we need to store the
provided filename in our metadata since it could be different from table
name.
this is executed when ha_columnstore is loaded, at dlopen time
before any initialization code is run and crashes any dlopen
attemps.
Crashes - because a missing config file is a crashing offence,
but it's an issue for another day
This patch fixes:
MCOL-3557 - Row Based Replication events to ColumnStore tables will no
longer cause MariaDB to crash, it will error instead.
MCOL-3556 - Remove the Columnstore.xml variable to turn on ColumnStore
tables applying replication events and instead make it a system variable
that can be set in my.cnf called "columnstore_replication_slave". This
allows it to be set per-UM.