[SERVER-58789] Make GeometryContainer Copyable Created: 23/Jul/21  Updated: 29/Oct/23  Resolved: 06/Apr/22

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

Type: Improvement Priority: Major - P3
Reporter: Maddie Zechar Assignee: Dan Larkin-York
Resolution: Fixed Votes: 0
Labels: quick-tech-debt
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Backwards Compatibility: Fully Compatible
Participants:

 Description   

The proposed solution for SERVER-58359 involves serializing into BSON in order to call matchesSingleElement() from isSubsetOf. This is less efficient because it involves converting to and from BSON per query.

To fix this, we need to make the GeometryContainer copyable so we can pull out a helper function from matchesSingleElement that will project the index's geometry into the CRS of the query.

GeometryContainer is currently not copyable as it contains unique_ptrs and even classes that use new/delete. One potential solution would involve using clonable_ptrs instead of unique_ptrs inside GeometryContainer.



 Comments   
Comment by Githook User [ 06/Apr/22 ]

Author:

{'name': 'Dan Larkin-York', 'email': 'dan.larkin-york@mongodb.com', 'username': 'dhly-etc'}

Message: SERVER-58789 Make GeometryContainer copyable
Branch: master
https://github.com/mongodb/mongo/commit/26a4ad50a630050643bf9f3ccd58d096dd792db0

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