|
| NamespaceDetailsCollectionCatalogEntry (StringData ns, NamespaceDetails *details, RecordStore *namespacesRecordStore, RecordId namespacesRecordId, RecordStore *indexRecordStore, MMAPV1DatabaseCatalogEntry *db) |
|
| ~NamespaceDetailsCollectionCatalogEntry () |
|
CollectionOptions | getCollectionOptions (OperationContext *opCtx) const final |
|
int | getTotalIndexCount (OperationContext *opCtx) const final |
|
int | getCompletedIndexCount (OperationContext *opCtx) const final |
|
int | getMaxAllowedIndexes () const final |
|
void | getAllIndexes (OperationContext *opCtx, std::vector< std::string > *names) const final |
|
void | getReadyIndexes (OperationContext *opCtx, std::vector< std::string > *names) const final |
|
BSONObj | getIndexSpec (OperationContext *opCtx, StringData idxName) const final |
|
bool | isIndexMultikey (OperationContext *opCtx, StringData indexName, MultikeyPaths *multikeyPaths) const final |
| Returns true if the index identified by 'indexName' is multikey, and returns false otherwise. More...
|
|
bool | isIndexMultikey (int idxNo) const |
|
bool | setIndexIsMultikey (OperationContext *opCtx, int idxNo, bool multikey=true) |
|
bool | setIndexIsMultikey (OperationContext *opCtx, StringData indexName, const MultikeyPaths &multikeyPaths) final |
| Sets the index identified by 'indexName' to be multikey. More...
|
|
RecordId | getIndexHead (OperationContext *opCtx, StringData indexName) const final |
|
void | setIndexHead (OperationContext *opCtx, StringData indexName, const RecordId &newHead) final |
|
bool | isIndexReady (OperationContext *opCtx, StringData indexName) const final |
|
KVPrefix | getIndexPrefix (OperationContext *opCtx, StringData indexName) const final |
|
Status | removeIndex (OperationContext *opCtx, StringData indexName) final |
|
Status | prepareForIndexBuild (OperationContext *opCtx, const IndexDescriptor *spec, bool isBackgroundSecondaryBuild) final |
|
void | indexBuildSuccess (OperationContext *opCtx, StringData indexName) final |
|
void | updateTTLSetting (OperationContext *opCtx, StringData idxName, long long newExpireSeconds) final |
|
void | updateFlags (OperationContext *opCtx, int newValue) final |
| Sets the flags field of CollectionOptions to newValue. More...
|
|
void | addUUID (OperationContext *opCtx, CollectionUUID uuid, Collection *coll) final |
| Assigns a new UUID to this collection. More...
|
|
bool | isEqualToMetadataUUID (OperationContext *opCtx, OptionalCollectionUUID uuid) |
| Compare the UUID argument to the UUID obtained from the metadata. More...
|
|
void | updateValidator (OperationContext *opCtx, const BSONObj &validator, StringData validationLevel, StringData validationAction) final |
| Updates the validator for this collection. More...
|
|
void | setIsTemp (OperationContext *opCtx, bool isTemp) final |
| Updates the 'temp' setting for this collection. More...
|
|
void | updateCappedSize (OperationContext *opCtx, long long size) final |
| Updates size of a capped Collection. More...
|
|
int | _findIndexNumber (OperationContext *opCtx, StringData indexName) const |
|
RecordId | getNamespacesRecordId () |
|
void | setNamespacesRecordId (OperationContext *opCtx, RecordId newId) |
| 'opCtx' is only allowed to be null when called from the constructor. More...
|
|
| CollectionCatalogEntry (StringData ns) |
|
virtual | ~CollectionCatalogEntry () |
|
const NamespaceString & | ns () const |
|
virtual void | getAllUniqueIndexes (OperationContext *opCtx, std::vector< std::string > *names) const |
|
virtual void | updateIndexMetadata (OperationContext *opCtx, const IndexDescriptor *desc) |
|
bool mongo::NamespaceDetailsCollectionCatalogEntry::isIndexMultikey |
( |
OperationContext * |
opCtx, |
|
|
StringData |
indexName, |
|
|
MultikeyPaths * |
multikeyPaths |
|
) |
| const |
|
finalvirtual |
Returns true if the index identified by 'indexName' is multikey, and returns false otherwise.
If the 'multikeyPaths' pointer is non-null, then it must point to an empty vector. If this index supports tracking path-level multikey information, then this function sets 'multikeyPaths' as the path components that cause this index to be multikey.
In particular, if this function returns false and the index supports tracking path-level multikey information, then 'multikeyPaths' is initialized as a vector with size equal to the number of elements in the index key pattern of empty sets.
Implements mongo::CollectionCatalogEntry.
bool mongo::NamespaceDetailsCollectionCatalogEntry::setIndexIsMultikey |
( |
OperationContext * |
opCtx, |
|
|
StringData |
indexName, |
|
|
const MultikeyPaths & |
multikeyPaths |
|
) |
| |
|
finalvirtual |
Sets the index identified by 'indexName' to be multikey.
If 'multikeyPaths' is non-empty, then it must be a vector with size equal to the number of elements in the index key pattern. Additionally, at least one path component of the indexed fields must cause this index to be multikey.
This function returns true if the index metadata has changed, and returns false otherwise.
Implements mongo::CollectionCatalogEntry.