Después de insertar, seleccionar count(1) de la tabla de motor ReplicatedMergeTree a la vez, obteniendo un resultado diferente muchas veces.
La situación es la siguiente: inserto algunos datos en una tabla de motor ReplicatedMergeTree y hago una consulta de selección de conteo (select count(1) from table at once), obteniendo resultados diferentes. Sé que esto es causado por el mecanismo Replicated, lo que implica que se tarda algún tiempo en copiar los datos de shard replicado, por lo que si la consulta va a un shard replicado, dará una respuesta diferente.
¿Cómo puedo evitar este problema si quiero utilizar los datos que he insertado de una sola vez?
davy.ai
Puede usar la consulta
SET enable_replicated_mergetree_optimizations=0
antes de ejecutar su consultaselect count(1)
. Esto desactivará las optimizaciones de ReplicatedMergeTree, lo que garantizará que la consulta siempre se enrute al mismo fragmento y devolverá el mismo resultado.