¿Después de recrear los insertos de transmisión de tabla BigQuery no funcionan?

Acabo de encontrar un problema interesante con BigQuery.

Esencialmente, hay un trabajo por lotes que recrea una tabla en BigQuery, para eliminar los datos, y que inmediatamente comienza a alimentarse en un nuevo conjunto a través de la interfaz de transmisión.

Solía funcionar así durante bastante tiempo, con éxito.

Últimamente comenzó a perder datos.

Un pequeño caso de prueba ha confirmado la situación: si la alimentación de datos comienza inmediatamente después de recrear (¡con éxito!) La tabla, se perderán partes del conjunto de datos. Es decir. De los 4000 registros que se están ingresando, solo 2100 - 3500 podrían pasar.

Sospecho que la creación de la tabla podría estar devolviendo el éxito antes de que las operaciones de la tabla (eliminación y creación) se hayan propagado con éxito en todo el entorno, por lo que las primeras partes del conjunto de datos se están alimentando a las réplicas antiguas de la tabla (especulando aquí).

Para confirmar esto, he puesto un tiempo de espera entre la creación de la tabla y el inicio de la alimentación de datos. De hecho, si el tiempo de espera es inferior a 120 segundos, se pierden partes del conjunto de datos.

Si es más de 120 segundos, parece funcionar bien.

Solía no haber requisitos para este tiempo de espera. Estamos utilizando US BigQuery. ¿Me estoy perdiendo algo obvio aquí?

EDITAR: Del comentario proporcionado por Sean Chen a continuación y algunas otras fuentes: se espera el comportamiento debido a la forma en que se almacenan en caché las tablas y la identificación interna de la tabla se propaga a través del sistema. BigQuery se ha creado para operaciones de tipo de solo agregado. Reescribir no es algo que uno pueda acomodar fácilmente en el diseño y debe evitarse.

Respuestas a la pregunta(1)

Su respuesta a la pregunta