Spaces:
Runtime error
Runtime error
Download static/node_modules/mongodb/src/operations/kill_cursors.ts from kaab4321/NarrativeFlow: direct link, hf CLI and curl.
- Browser
- Download file 1.86 kB
-
https://huggingface.co/spaces/kaab4321/NarrativeFlow/resolve/main/static/node_modules/mongodb/src/operations/kill_cursors.ts
- Command line
-
hf download hf://spaces/kaab4321/NarrativeFlow/static/node_modules/mongodb/src/operations/kill_cursors.ts
-
curl -L -o kill_cursors.ts https://huggingface.co/spaces/kaab4321/NarrativeFlow/resolve/main/static/node_modules/mongodb/src/operations/kill_cursors.ts
1.86 kB
| import type { Long } from '../bson'; | |
| import { MongoRuntimeError } from '../error'; | |
| import type { Server } from '../sdam/server'; | |
| import type { ClientSession } from '../sessions'; | |
| import { type MongoDBNamespace, squashError } from '../utils'; | |
| import { AbstractOperation, Aspect, defineAspects, type OperationOptions } from './operation'; | |
| /** | |
| * https://www.mongodb.com/docs/manual/reference/command/killCursors/ | |
| * @internal | |
| */ | |
| interface KillCursorsCommand { | |
| killCursors: string; | |
| cursors: Long[]; | |
| comment?: unknown; | |
| } | |
| export class KillCursorsOperation extends AbstractOperation { | |
| cursorId: Long; | |
| constructor(cursorId: Long, ns: MongoDBNamespace, server: Server, options: OperationOptions) { | |
| super(options); | |
| this.ns = ns; | |
| this.cursorId = cursorId; | |
| this.server = server; | |
| } | |
| override get commandName() { | |
| return 'killCursors' as const; | |
| } | |
| override async execute(server: Server, session: ClientSession | undefined): Promise<void> { | |
| if (server !== this.server) { | |
| throw new MongoRuntimeError('Killcursor must run on the same server operation began on'); | |
| } | |
| const killCursors = this.ns.collection; | |
| if (killCursors == null) { | |
| // Cursors should have adopted the namespace returned by MongoDB | |
| // which should always defined a collection name (even a pseudo one, ex. db.aggregate()) | |
| throw new MongoRuntimeError('A collection name must be determined before killCursors'); | |
| } | |
| const killCursorsCommand: KillCursorsCommand = { | |
| killCursors, | |
| cursors: [this.cursorId] | |
| }; | |
| try { | |
| await server.command(this.ns, killCursorsCommand, { session }); | |
| } catch (error) { | |
| // The driver should never emit errors from killCursors, this is spec-ed behavior | |
| squashError(error); | |
| } | |
| } | |
| } | |
| defineAspects(KillCursorsOperation, [Aspect.MUST_SELECT_SAME_SERVER]); | |