[SERVER-27034] views_legacy.js should test OP_GET_MORE/OP_KILL_CURSORS against a view Created: 14/Nov/16  Updated: 05/Apr/17  Resolved: 16/Nov/16

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Kyle Suarez Assignee: James Wahlin
Resolution: Duplicate Votes: 0
Labels: read-only-views
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-27030 Improve the error message when issuin... Closed
Backwards Compatibility: Fully Compatible
Sprint: Query 2016-11-21
Participants:

 Description   

A driver that wishes to interact with a view must use the new command path (OP_COMMAND); the legacy protocols are not supported. views_legacy.js tests that the legacy write and legacy find paths fail appropriately, but it lacks a test for OP_GET_MORE and OP_KILL_CURSORS.



 Comments   
Comment by James Wahlin [ 16/Nov/16 ]

This was was done under SERVER-27030.

Comment by James Wahlin [ 15/Nov/16 ]

Legacy OP_KILL_CURSORS will work against a cursor established on a view.

We store the underlying collection namespace in the cursor manager. As the legacy kill operation takes only a cursorId, it will map this ID correctly and kill the cursor.

For the kill cursors command we take a cursorId and the view namespace. This code path has logic to convert the view namespace to the underlying collection namespace so that the requested namespace matches that in the cursor manager.

Given the above I will add a test confirming that the OP_KILL_CURSORS is successful against a cursorId representing a view read.

Comment by James Wahlin [ 15/Nov/16 ]

I will add these tests along with my work for SERVER-27030.

Generated at Thu Feb 08 04:13:58 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.