1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
description: operation map_reduce
schemaVersion: '1.27'
runOnRequirements:
-
minServerVersion: '4.0'
topologies:
- single
- replicaset
-
minServerVersion: 4.1.7
# serverless proxy does not support mapReduce operation
serverless: forbid
topologies:
- sharded
- load-balanced
createEntities:
- client:
id: &client0 client0
useMultipleMongoses: false
observeTracingMessages:
enableCommandPayload: true
- database:
id: &database0 database0
client: *client0
databaseName: operation-map-reduce
- collection:
id: &collection0 collection0
database: *database0
collectionName: test
initialData:
-
collectionName: test
databaseName: operation-map-reduce
documents:
-
_id: 1
x: 0
-
_id: 2
x: 1
-
_id: 3
x: 2
tests:
- description: mapReduce
operations:
- object: *collection0
name: mapReduce
arguments:
map:
$code: 'function inc() { return emit(0, this.x + 1) }'
reduce:
$code: 'function sum(key, values) { return values.reduce((acc, x) => acc + x); }'
out:
inline: 1
expectResult:
-
_id: 0
value: 6
expectTracingMessages:
- client: *client0
ignoreExtraSpans: false
spans:
- name: mapReduce operation-map-reduce.test
attributes:
db.system: mongodb
db.namespace: operation-map-reduce
db.collection.name: test
db.operation.name: mapReduce
db.operation.summary: mapReduce operation-map-reduce.test
nested:
- name: mapReduce
attributes:
db.system: mongodb
db.namespace: operation-map-reduce
db.collection.name: test
db.command.name: mapReduce
network.transport: tcp
db.mongodb.cursor_id: { $$exists: false }
db.response.status_code: { $$exists: false }
exception.message: { $$exists: false }
exception.type: { $$exists: false }
exception.stacktrace: { $$exists: false }
server.address: { $$type: string }
server.port: { $$type: [ int, long ] }
db.query.summary: mapReduce operation-map-reduce.test
db.query.text:
$$matchAsDocument:
$$matchAsRoot:
mapReduce: test
map: { $code: 'function inc() { return emit(0, this.x + 1) }' }
reduce: { $code: 'function sum(key, values) { return values.reduce((acc, x) => acc + x); }' }
out: { inline: 1 }
db.mongodb.server_connection_id:
$$type: [ int, long ]
db.mongodb.driver_connection_id:
$$type: [ int, long ]
|