description: findOneAndDelete-hint-unacknowledged schemaVersion: '1.0' createEntities: - client: id: &client0 client0 observeEvents: - commandStartedEvent - database: id: &database0 database0 client: *client0 databaseName: &database0Name db0 - collection: id: &collection0 collection0 database: *database0 collectionName: &collection0Name coll0 collectionOptions: writeConcern: { w: 0 } initialData: - collectionName: *collection0Name databaseName: *database0Name documents: &documents - { _id: 1, x: 11 } - { _id: 2, x: 22 } tests: - description: "Unacknowledged findOneAndDelete with hint string fails with client-side error on pre-4.4 server" runOnRequirements: - maxServerVersion: "4.2.99" operations: - object: *collection0 name: findOneAndDelete arguments: filter: &filter { _id: { $gt: 1 } } hint: _id_ expectError: isClientError: true expectEvents: &noEvents - client: *client0 events: [] - description: "Unacknowledged findOneAndDelete with hint document fails with client-side error on pre-4.4 server" runOnRequirements: - maxServerVersion: "4.2.99" operations: - object: *collection0 name: findOneAndDelete arguments: filter: *filter hint: { _id: 1 } expectError: isClientError: true expectEvents: *noEvents - description: "Unacknowledged findOneAndDelete with hint string on 4.4+ server" runOnRequirements: - minServerVersion: "4.4.0" operations: - object: *collection0 name: findOneAndDelete arguments: filter: *filter hint: _id_ expectResult: &unacknowledgedResult { $$unsetOrMatches: null } expectEvents: &events - client: *client0 events: - commandStartedEvent: command: findAndModify: *collection0Name query: *filter remove: true hint: { $$type: [ string, object ]} writeConcern: { w: 0 } - description: "Unacknowledged findOneAndDelete with hint document on 4.4+ server" runOnRequirements: - minServerVersion: "4.4.0" operations: - object: *collection0 name: findOneAndDelete arguments: filter: *filter hint: { _id: 1 } expectResult: *unacknowledgedResult expectEvents: *events