-
Type: Task
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Labels:None
The cursors, and most of command infrastructure, has liberal assumption that the opcode they are working with is OP_REPLY.
Aside from the OP_REPLY sanitychecks, it accesses the rpc structure in a intimate way rather then through a layer that abstracts the actual opcodes.
There are also aggressive optimizations in the command infrastructure that instead of expecting a cursor it allocates the entire reply as a command reply, rather then reading the reply into buffer and present it as a bson, like the cursors do.
These assumptions are no longer true for other opcdoes.