A resposta básica aqui é: não use maxSize
com um valor tão baixo, não é uma configuração de precisão. Ele se baseia no valor mem.mapped
para determinar o tamanho e valor é simplesmente o tamanho de todos os arquivos de dados que tiveram mmap()
ligou para eles. Na verdade, até que você tenha uma ideia melhor dos tamanhos mapeados, eu recomendaria desativá-lo completamente.
Para explicar: Os tamanhos dos arquivos de dados para bancos de dados começam em 64 MB, depois double para cada alocação subsequente por padrão até o máximo de 2GB. Combine isso com o fato de que o MongoDB alocará um arquivo de 128MB (para um total de 192MB) depois de inserir um único dado no arquivo de dados de 64MB (por padrão, o MongoDB mantém um arquivo de dados vazio pré-alocado para evitar atrasos escrever cargas de trabalho pesadas). Depois, há a probabilidade de você ter mais de um banco de dados (um oplog no banco de dados local, por exemplo) e ter certeza de que, com esse limite de 125 MB, todos os seus shards serão considerados "completos" quase imediatamente. >
Remova a opção maxSize, determine o uso real dos dados e, em seguida, adicione um buffer sensato (pelo menos o tamanho de um arquivo de dados vazio) se quiser usá-lo no futuro, mas esteja ciente de que pode acabar no mesmo cenário, se você usar mais espaço do que o esperado.