Quando insiro dados em um cluster fragmentado mongo, ele mostra 2 atualizações nas primárias (verifique localhost:55030). Alguém sabe de onde vêm essas atualizações? Eu só faço inserções usando for (var i = 1; i <= 1000000; i++) { db.testData.insert( { x : i , y : (i+10)/2}, {z:2},{w :3} ) }
insert query update delete getmore command flushes mapped vsize res faults locked db idx miss % qr|qw ar|aw netIn netOut conn set repl time
localhost:55027 *0 *0 *0 *0 0 3|0 0 1.53g 5.58g 871m 0 test:0.0% 0 0|0 0|0 178b 4k 9 rs01 SEC 13:01:28
localhost:55028 *0 *0 *0 *0 0 5|0 0 1.53g 5.58g 872m 0 test:0.0% 0 0|0 0|0 452b 4k 9 rs01 SEC 13:01:28
localhost:55029 *0 *0 *0 *0 2 3|0 0 1.53g 5.62g 900m 0 test:0.0% 0 0|0 0|0 272b 4k 24 rs01 PRI 13:01:28
localhost:55030 427 *0 2 *0 807 801|0 0 1.28g 5.13g 548m 23 admin:0.9% 0 0|0 0|0 276k 239k 25 rs02 PRI 13:01:28
localhost:55031 *428 *0 *0 *0 0 1|0 0 1.28g 5.06g 501m 25 local:3.8% 0 0|0 0|0 62b 3k 9 rs02 SEC 13:01:28
localhost:55032 *429 *0 *0 *0 0 1|0 0 1.28g 5.06g 501m 25 .:3.4% 0 0|0 0|0 62b 3k 9 rs02 SEC 13:01:28
localhost:61027 423 0 0 0 0 424 2.42g 16m 0 57k 24k 3 RTR 13:01:28
Não confirmei olhando o código, mas aposto que são atualizações no banco de dados local em relação aos seus secundários. O primário rastreia o status atual dos secundários no conjunto (incluindo onde eles foram sincronizados), de modo que seria uma atualização no local para a
local.slaves
coleção. Da mesma forma, hálocal.replset.minvalid
o que certamente mudará à medida que você insere.Basicamente, eu não me preocuparia com isso, não será um fator importante em seu desempenho (aliás, se você estiver usando 2.6+, deverá ler estas perguntas e respostas sobre o desempenho desse tipo de loop no shell).