[SERVER-71952] Allow values owned by an SBE Array or ArraySet to be extracted via a move operation Created: 07/Dec/22  Updated: 29/Oct/23  Resolved: 30/Mar/23

Status: Closed
Project: Core Server
Component/s: Query Execution
Affects Version/s: None
Fix Version/s: 7.0.0-rc0

Type: Improvement Priority: Major - P3
Reporter: David Storch Assignee: Martin Neupauer
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: QE 2023-02-06, QE 2023-02-20, QE 2023-03-06, QE 2023-03-20, QE 2023-04-03
Participants:

 Description   

The constituent values of an SBE value::Array or value::ArraySet are always owned by the array. Imagine that a caller wants to assume ownership of one of these constituent values. At the moment, the only way that the caller can do so is to make a copy. The goal of this ticket is to improve the API to allow moving values of out a value::Array or value::ArraySet.

Such an API is dangerous and should be used with caution. The caller must be certain that they have ownership of the value::Array or value::ArraySet, since this precludes the possibility of other code holding a view into the array that would be invalidated by the move operation.



 Comments   
Comment by Githook User [ 29/Mar/23 ]

Author:

{'name': 'Martin Neupauer', 'email': 'xmaton@messengeruser.com', 'username': ''}

Message: SERVER-71952 Allow values owned by an SBE Array or ArraySet to be extracted via a move operation.
Branch: master
https://github.com/mongodb/mongo/commit/6759d92c8cd619d00bd522bb5ebd688a4d685fd0

Generated at Thu Feb 08 06:20:25 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.