MySQL Crear tabla como SELECT

Cada vez que uso MySQLCREATE TABLE AS SELECT ... todas las tablas / índices que se seleccionan son bloqueado por la duración de la consulta. Realmente no entiendo por qué? ¿Hay alguna forma de evitar esto?

Utilizando MySQL 5.1.41 yInnoDB

Ejemplo agregado:

Por ejemplo, la siguiente consulta puede tardar hasta 10 minutos en completarse:

CREATE TABLE temp_lots_of_data_xxx AS 
SELECT
    a.*
    b.*
    c.*
FROM a
LEFT JOIN b ON a.foo = b.foo
LEFT JOIN c ON a.foo = c.foo

Intentar actualizar los valores en las tablas a, b o c durante la consulta anterior esperará a que la consulta anterior finalice primero. Quiero evitar este bloqueo, ya que no estoy interesado en los datos más completos en la tabla temporal creada.

PD. @SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; no produce cambios en el comportamiento.

Respuestas a la pregunta(14)

Su respuesta a la pregunta