>>>>> "Paul" == Paul Cadach <paul@stripped> writes:
>> Can't you for now do:
>> ALTER TABLE merge_table UNION=(empty_copy_of_table);
Paul> What did you mean saying "empty_copy_of_table"? Does I needs to create
Paul> temporary empty table and include it into merge?
Yes. You can of course also refer to a non existing table, but in
this case everyone that tries to access the table during the rename
will get a table-not-found error.
>> RENAME ...
>> ALTER TABLE merge_table UNION=(old-union)
Paul> Nice idea but it's not fault-safe (because client/network can crash
Paul> somewhere between ALTER, RENAME and second ALTER, and we will have incorrect
Paul> Also, I can't issue 'ALTER TABLE' because all members of MERGE are
Paul> compressed (equal to read-only), and MERGE itself looks like read-only. :(
This should already be fixed in the 4.0 tree.
>> We will look in 4.0 to see what we can do to handle MERGE tables
>> better in this case.
Paul> As I said before, tracking renaming members of MERGE and keep MERGE
Paul> specification intact IMHO would helpful in this situation.