Docs Menu
Docs Home
/ /

Índice de clave de fragmento faltante

MissingShardKeyIndex

Existe una colección fragmentada que no tiene un índice compatible con la clave de fragmento de la colección.

Nuevo en la versión 7.0.

{
type: "MissingShardKeyIndex",
description: "<string>",
details: {
namespace: "<string>",
shard: "<string>",
shardKey: { <document> }
}
}

MissingShardKeyIndex los documentos de inconsistencias contienen los siguientes campos:

Campo
Tipo
Descripción

type

string

Tipo de documento con inconsistencia. Devuelve el valor MissingShardKeyIndex para este tipo de inconsistencia.

description

string

Describe la inconsistencia encontrada en los metadatos.

details

Documento

Documento con información adicional sobre dónde existe la inconsistencia en la base de datos y el clúster fragmentado.

details.namespace

string

Indica la base de datos y la colección donde existe la inconsistencia.

details.shard

string

El fragmento donde existe la inconsistencia.

details.shardKey

Documento

La clave de fragmento que requiere un índice.

Uso el db.adminCommand() método para llamar al checkMetadataConsistency comando:

db.adminCommand( { checkMetadataConsistency: 1 } )

El método devuelve un cursor con un lote de documentos que muestran las inconsistencias encontradas en los metadatos de fragmentación. El siguiente ejemplo muestra un cursor con un documento con inconsistencia MissingShardKeyIndex:

{
cursor: {
id: Long("0"),
ns: "test.$cmd.aggregate",
firstBatch: [
{
type: "MissingShardKeyIndex",
description: "Found sharded collection without a shard key index",
details: {
namespace: "test.authors",
shard: "shard-rs0",
shardKey: {
skey: 1
}
}
}
],
},
ok: 1
}

Volver

Tabla de enrutamiento faltante

En esta página