INNER CODE UNIT · Go
compareTarget
simagix/keyhole · comparator.go:283
func compareTarget(client *mongo.Client, filter Filter, ids []interface{}, docsMap map[interface{}]bson.D) []ErrorMessage {
var err error
var messages []ErrorMessage
var cursor *mongo.Cursor
ctx := context.Background()
targetCount := 0
logger := gox.GetLogger("comparator")
pr := message.NewPrinter(language.English)
dbName, collName := mdb.SplitNamespace(filter.TargetNS)
query := bson.D{{Key: "_id", Value: bson.D{{Key: "$in", Value: ids}}}}
if len(ids) == 0 {
query = bson.D{}
}
if cursor, err = client.Database(dbName).Collection(collName).Find(ctx, query); err != nil {
return messages
}
for cursor.Next(ctx) {