Hi!
>>>>> "Sergei" == Sergei Golubchik <serg@stripped> writes:
<cut>
>> > CREATE TABLE foo (...) TYPE=MERGE UNION=(a,b) INSERT_METHOD=LAST
>> >
>> > I did not have a close enough look at the parser to know where/how to
>> > add this (because I don't know yet whether I will at all), but I
>> > assume it would not be hard to derivate this from other table option
>> > rules.
>>
>> Yes, sure - look for UNION=(), for example.
Sergei> Hmm, I see some problems here.
Sergei> Such an information (INSERT_METHOD) should go to .frm file (at least,
Sergei> for SHOW CREATE TABLE, ALTER TABLE, etc. to work) but there's no place
Sergei> for it. *.frm files (originating in 1980's) are our main obstacle
Sergei> in implementing new features. Luckily, 4.0 will have plain-text .frm's
Sergei> (that is CREATE TABLE statement in plain text - infinitely expandable).
Actually, there as some free bytes in the .frm file that Benjamin
could use to store the used method.
Sergei> Also, INSERT_METHOD should also go to MRG file, for isam layer to know it.
Why?
It's should be enough for MySQL to know about this.
Sergei> Also in ROUND_ROBIN it has somehow to preserve the last-target-table number
Sergei> on shutdown. This will change MRG files from simple ``ls *.MYI >
> table.MRG''
Sergei> to something more complex. In ROUND_ROBIN they also won't be read-only.
Sorry, but I didn't get that.
Sergei> Otherwise, there can be introduced second file, say, table.MRO
> (merge-options),
Sergei> for such a information.
Regards,
Monty