-
Type:
Task
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Query Integration
-
Fully Compatible
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Currently, the extension::Handle helper template manages both the ownership semantics (owned/unowned), as well as the vtable API access of an extension API interface.
This makes it difficult to separate the concerns of ownership, and adapting the C API into C++. For example, MongoExtensionStatus is bound to an OwnedHandle<::MongoExtensionStatus>, where all the access methods are defined on the template instantiation of OwnedHandle<::MongoExtensionStatus>. If an unownedHandle is required, it's not possible to reuse the code for OwnedHandle.
As part of this ticket, try to identify a way to separate the concerns of VTable API, and owned/unowned handle.
- duplicates
-
SERVER-112687 Audit _assertVTableConstraints member function
-
- Closed
-