[SERVER-30123] clarify seekExact behaviors Created: 13/Jul/17  Updated: 06/Dec/22  Resolved: 09/Nov/20

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

Type: Task Priority: Major - P3
Reporter: Eric Milkie Assignee: Backlog - Storage Execution Team
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Storage Execution
Sprint: Execution Team 2020-01-13, Execution Team 2020-01-27, Execution Team 2020-02-10, Execution Team 2020-02-24, Execution Team 2020-04-20, Execution Team 2020-06-29
Participants:

 Description   

Currently, seekExact on a record store in WiredTiger has the following behavior:
After the first call to seekExact(), a call to next() will repeat the same answer (either eof or the record that was seek'd).
However, I found code (currently unused) that seems to assume that calling next() after seekExact() will have normal cursor semantics and actually return the next record after the one that was seek'd. I could find no comments or tests that lock in one behavior or the other. We should make it clear what the behavior should be for all storage engines.



 Comments   
Comment by Eric Milkie [ 07/Jan/20 ]

I think at this point we should make it illegal to call next() after a seekExact(). We can then later redo the semantics once we want to implement, for example, range scans across a collection.

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