On 06/01/07 18:35, Joshua D. Drake wrote:
> Ron Johnson wrote:
>> On 06/01/07 17:31, Andrew Sullivan wrote:
>>> On Sat, Jun 02, 2007 at 12:23:44AM +0200, Alexander Staubo wrote:
>>>> Could you not (I ask naively) detect the first DDL statement is
>>>> submitted in a transaction
>>>
>>> Maybe.
>>>
>>>> on the master, then start a transaction on
>>>> each slave, then funnel this and all subsequent statements
>>>> synchronously to every nodes, then prepare and commit everyone?
>>>
>>> You could if 2PC was ubiquitous, which is certainly wasn't when the
>>> code was designed (remember, it was originally compatible all the way
>>> back to 7.3). Some people suggested using 2PC "if it's there", but
>>> that just seems to me to be asking for really painful problems. It
>>> also entails that all DDL has to happen on every node at the same
>>> time, which imposes a bottleneck not actually currently in the
>>> system.
>>
>> Since DDL is infrequent, is that bottleneck an acceptable trade-off?
>
> Define infrequent? I have customers that do it, everyday in prod. They
> do it willingly and refuse to change that habit.
Even 2 or 3 ALTER TABLE or CREATE INDEX or CREATE TABLE statements
per day is a drop in the bucket compared to the number of I/U/D
statements, no?
--
Ron Johnson, Jr.
Jefferson LA USA
Give a man a fish, and he eats for a day.
Hit him with a fish, and he goes away for good!