List:General Discussion« Previous MessageNext Message »
From:Michael Widenius Date:October 14 1999 10:43am
Subject:Temporary table logging error
View as plain text  
>>>>> "web" == web  <web@stripped> writes:

web> Hi,
web> using mysql 3.23.4, it appears tables of type 'temporary' are not logged as
web> dropped in the update log when the connection ends.  This leads to problems
web> when replicating databases!

web> For instance:

web> [open thread 1]
web> CREATE TEMPORARY TABLE a ( ... )
web> [close thread 1]

web> [open thread 2]
web> CREATE TEMPORARY TABLE a ( ... )
web> [close thread 2]

web> This is logged as:
web> CREATE TEMPORARY TABLE a ( ... )
web> CREATE TEMPORARY TABLE a ( ... )

web> which will give an error when the update log is fed to the slave databases.
web> I don't think the cure is as simple as just logging the table being dropped,
web> due to concurrency issues :-(  The logging may need to include the thread ID
web> to make table names unique, or something like that.

Hi!

Yes, TEMPORARY tables is not update-log safe if you don't use a unique 
temporary table name in your queries.  (Sorry about that)

We plan to fix this by making the update log binary and logging a lot
more information.  This will also be needed for the replication code
we are working on.

Regards,
Monty
Thread
Temporary table logging errorweb13 Oct
  • Temporary table logging errorMichael Widenius14 Oct