summaryrefslogtreecommitdiff
path: root/src/mongo/db/storage/kv
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/storage/kv')
-rw-r--r--src/mongo/db/storage/kv/kv_catalog.cpp30
-rw-r--r--src/mongo/db/storage/kv/kv_catalog.h26
-rw-r--r--src/mongo/db/storage/kv/kv_collection_catalog_entry.cpp18
-rw-r--r--src/mongo/db/storage/kv/kv_collection_catalog_entry.h14
-rw-r--r--src/mongo/db/storage/kv/kv_database_catalog_entry.cpp18
-rw-r--r--src/mongo/db/storage/kv/kv_database_catalog_entry.h14
-rw-r--r--src/mongo/db/storage/kv/kv_database_catalog_entry_test.cpp4
-rw-r--r--src/mongo/db/storage/kv/kv_engine.h26
-rw-r--r--src/mongo/db/storage/kv/kv_storage_engine.cpp8
-rw-r--r--src/mongo/db/storage/kv/kv_storage_engine.h6
10 files changed, 82 insertions, 82 deletions
diff --git a/src/mongo/db/storage/kv/kv_catalog.cpp b/src/mongo/db/storage/kv/kv_catalog.cpp
index 81490a90e80..20f0c28b830 100644
--- a/src/mongo/db/storage/kv/kv_catalog.cpp
+++ b/src/mongo/db/storage/kv/kv_catalog.cpp
@@ -58,7 +58,7 @@ namespace {
class KVCatalog::AddIdentChange : public RecoveryUnit::Change {
public:
- AddIdentChange(KVCatalog* catalog, const StringData& ident)
+ AddIdentChange(KVCatalog* catalog, StringData ident)
:_catalog(catalog), _ident(ident.toString())
{}
@@ -74,7 +74,7 @@ namespace {
class KVCatalog::RemoveIdentChange : public RecoveryUnit::Change {
public:
- RemoveIdentChange(KVCatalog* catalog, const StringData& ident, const Entry& entry)
+ RemoveIdentChange(KVCatalog* catalog, StringData ident, const Entry& entry)
:_catalog(catalog), _ident(ident.toString()), _entry(entry)
{}
@@ -118,7 +118,7 @@ namespace {
return false;
}
- std::string KVCatalog::_newUniqueIdent(const StringData& ns, const char* kind) {
+ std::string KVCatalog::_newUniqueIdent(StringData ns, const char* kind) {
// If this changes to not put _rand at the end, _hasEntryCollidingWithRand will need fixing.
StringBuilder buf;
if ( _directoryPerDb ) {
@@ -159,7 +159,7 @@ namespace {
}
Status KVCatalog::newCollection( OperationContext* opCtx,
- const StringData& ns,
+ StringData ns,
const CollectionOptions& options ) {
invariant( opCtx->lockState() == NULL ||
opCtx->lockState()->isDbLockedForMode( nsToDatabaseSubstring(ns), MODE_X ) );
@@ -202,7 +202,7 @@ namespace {
return Status::OK();
}
- std::string KVCatalog::getCollectionIdent( const StringData& ns ) const {
+ std::string KVCatalog::getCollectionIdent( StringData ns ) const {
boost::mutex::scoped_lock lk( _identsLock );
NSToIdentMap::const_iterator it = _idents.find( ns.toString() );
invariant( it != _idents.end() );
@@ -210,15 +210,15 @@ namespace {
}
std::string KVCatalog::getIndexIdent( OperationContext* opCtx,
- const StringData& ns,
- const StringData& idxName ) const {
+ StringData ns,
+ StringData idxName ) const {
BSONObj obj = _findEntry( opCtx, ns );
BSONObj idxIdent = obj["idxIdent"].Obj();
return idxIdent[idxName].String();
}
BSONObj KVCatalog::_findEntry( OperationContext* opCtx,
- const StringData& ns,
+ StringData ns,
RecordId* out ) const {
boost::scoped_ptr<Lock::ResourceLock> rLk;
@@ -252,7 +252,7 @@ namespace {
}
const BSONCollectionCatalogEntry::MetaData KVCatalog::getMetaData( OperationContext* opCtx,
- const StringData& ns ) {
+ StringData ns ) {
BSONObj obj = _findEntry( opCtx, ns );
LOG(3) << " fetched CCE metadata: " << obj;
BSONCollectionCatalogEntry::MetaData md;
@@ -265,7 +265,7 @@ namespace {
}
void KVCatalog::putMetaData( OperationContext* opCtx,
- const StringData& ns,
+ StringData ns,
BSONCollectionCatalogEntry::MetaData& md ) {
boost::scoped_ptr<Lock::ResourceLock> rLk;
@@ -318,8 +318,8 @@ namespace {
}
Status KVCatalog::renameCollection( OperationContext* opCtx,
- const StringData& fromNS,
- const StringData& toNS,
+ StringData fromNS,
+ StringData toNS,
bool stayTemp ) {
boost::scoped_ptr<Lock::ResourceLock> rLk;
@@ -370,7 +370,7 @@ namespace {
}
Status KVCatalog::dropCollection( OperationContext* opCtx,
- const StringData& ns ) {
+ StringData ns ) {
invariant( opCtx->lockState() == NULL ||
opCtx->lockState()->isDbLockedForMode( nsToDatabaseSubstring(ns), MODE_X ) );
boost::scoped_ptr<Lock::ResourceLock> rLk;
@@ -395,7 +395,7 @@ namespace {
return Status::OK();
}
- std::vector<std::string> KVCatalog::getAllIdentsForDB( const StringData& db ) const {
+ std::vector<std::string> KVCatalog::getAllIdentsForDB( StringData db ) const {
std::vector<std::string> v;
{
@@ -436,7 +436,7 @@ namespace {
return v;
}
- bool KVCatalog::isUserDataIdent( const StringData& ident ) const {
+ bool KVCatalog::isUserDataIdent( StringData ident ) const {
return
ident.find( "index-" ) != std::string::npos ||
ident.find( "index/" ) != std::string::npos ||
diff --git a/src/mongo/db/storage/kv/kv_catalog.h b/src/mongo/db/storage/kv/kv_catalog.h
index 6aec447d63d..359fa4cfbdb 100644
--- a/src/mongo/db/storage/kv/kv_catalog.h
+++ b/src/mongo/db/storage/kv/kv_catalog.h
@@ -65,39 +65,39 @@ namespace mongo {
* @return error or ident for instance
*/
Status newCollection( OperationContext* opCtx,
- const StringData& ns,
+ StringData ns,
const CollectionOptions& options );
- std::string getCollectionIdent( const StringData& ns ) const;
+ std::string getCollectionIdent( StringData ns ) const;
std::string getIndexIdent( OperationContext* opCtx,
- const StringData& ns,
- const StringData& idName ) const;
+ StringData ns,
+ StringData idName ) const;
const BSONCollectionCatalogEntry::MetaData getMetaData( OperationContext* opCtx,
- const StringData& ns );
+ StringData ns );
void putMetaData( OperationContext* opCtx,
- const StringData& ns,
+ StringData ns,
BSONCollectionCatalogEntry::MetaData& md );
Status renameCollection( OperationContext* opCtx,
- const StringData& fromNS,
- const StringData& toNS,
+ StringData fromNS,
+ StringData toNS,
bool stayTemp );
Status dropCollection( OperationContext* opCtx,
- const StringData& ns );
+ StringData ns );
- std::vector<std::string> getAllIdentsForDB( const StringData& db ) const;
+ std::vector<std::string> getAllIdentsForDB( StringData db ) const;
std::vector<std::string> getAllIdents( OperationContext* opCtx ) const;
- bool isUserDataIdent( const StringData& ident ) const;
+ bool isUserDataIdent( StringData ident ) const;
private:
class AddIdentChange;
class RemoveIdentChange;
BSONObj _findEntry( OperationContext* opCtx,
- const StringData& ns,
+ StringData ns,
RecordId* out=NULL ) const;
/**
@@ -105,7 +105,7 @@ namespace mongo {
* @param ns - the containing ns
* @param kind - what this "thing" is, likely collection or index
*/
- std::string _newUniqueIdent(const StringData& ns, const char* kind);
+ std::string _newUniqueIdent(StringData ns, const char* kind);
// Helpers only used by constructor and init(). Don't call from elsewhere.
static std::string _newRand();
diff --git a/src/mongo/db/storage/kv/kv_collection_catalog_entry.cpp b/src/mongo/db/storage/kv/kv_collection_catalog_entry.cpp
index c32736bcf07..21a3028780a 100644
--- a/src/mongo/db/storage/kv/kv_collection_catalog_entry.cpp
+++ b/src/mongo/db/storage/kv/kv_collection_catalog_entry.cpp
@@ -41,7 +41,7 @@ namespace mongo {
class KVCollectionCatalogEntry::AddIndexChange : public RecoveryUnit::Change {
public:
AddIndexChange(OperationContext* opCtx, KVCollectionCatalogEntry* cce,
- const StringData& ident)
+ StringData ident)
: _opCtx(opCtx)
, _cce(cce)
, _ident(ident.toString())
@@ -61,7 +61,7 @@ namespace mongo {
class KVCollectionCatalogEntry::RemoveIndexChange : public RecoveryUnit::Change {
public:
RemoveIndexChange(OperationContext* opCtx, KVCollectionCatalogEntry* cce,
- const StringData& ident)
+ StringData ident)
: _opCtx(opCtx)
, _cce(cce)
, _ident(ident.toString())
@@ -82,8 +82,8 @@ namespace mongo {
KVCollectionCatalogEntry::KVCollectionCatalogEntry( KVEngine* engine,
KVCatalog* catalog,
- const StringData& ns,
- const StringData& ident,
+ StringData ns,
+ StringData ident,
RecordStore* rs)
: BSONCollectionCatalogEntry( ns ),
_engine( engine ),
@@ -96,7 +96,7 @@ namespace mongo {
}
bool KVCollectionCatalogEntry::setIndexIsMultikey(OperationContext* txn,
- const StringData& indexName,
+ StringData indexName,
bool multikey ) {
MetaData md = _getMetaData(txn);
@@ -110,7 +110,7 @@ namespace mongo {
}
void KVCollectionCatalogEntry::setIndexHead( OperationContext* txn,
- const StringData& indexName,
+ StringData indexName,
const RecordId& newHead ) {
MetaData md = _getMetaData( txn );
int offset = md.findIndexOffset( indexName );
@@ -120,7 +120,7 @@ namespace mongo {
}
Status KVCollectionCatalogEntry::removeIndex( OperationContext* txn,
- const StringData& indexName ) {
+ StringData indexName ) {
MetaData md = _getMetaData( txn );
if (md.findIndexOffset(indexName) < 0)
@@ -153,7 +153,7 @@ namespace mongo {
}
void KVCollectionCatalogEntry::indexBuildSuccess( OperationContext* txn,
- const StringData& indexName ) {
+ StringData indexName ) {
MetaData md = _getMetaData( txn );
int offset = md.findIndexOffset( indexName );
invariant( offset >= 0 );
@@ -162,7 +162,7 @@ namespace mongo {
}
void KVCollectionCatalogEntry::updateTTLSetting( OperationContext* txn,
- const StringData& idxName,
+ StringData idxName,
long long newExpireSeconds ) {
MetaData md = _getMetaData( txn );
int offset = md.findIndexOffset( idxName );
diff --git a/src/mongo/db/storage/kv/kv_collection_catalog_entry.h b/src/mongo/db/storage/kv/kv_collection_catalog_entry.h
index 646b0c07fa3..504ecaa07fa 100644
--- a/src/mongo/db/storage/kv/kv_collection_catalog_entry.h
+++ b/src/mongo/db/storage/kv/kv_collection_catalog_entry.h
@@ -43,8 +43,8 @@ namespace mongo {
public:
KVCollectionCatalogEntry( KVEngine* engine,
KVCatalog* catalog,
- const StringData& ns,
- const StringData& ident,
+ StringData ns,
+ StringData ident,
RecordStore* rs );
virtual ~KVCollectionCatalogEntry();
@@ -52,28 +52,28 @@ namespace mongo {
virtual int getMaxAllowedIndexes() const { return 64; };
virtual bool setIndexIsMultikey(OperationContext* txn,
- const StringData& indexName,
+ StringData indexName,
bool multikey = true);
virtual void setIndexHead( OperationContext* txn,
- const StringData& indexName,
+ StringData indexName,
const RecordId& newHead );
virtual Status removeIndex( OperationContext* txn,
- const StringData& indexName );
+ StringData indexName );
virtual Status prepareForIndexBuild( OperationContext* txn,
const IndexDescriptor* spec );
virtual void indexBuildSuccess( OperationContext* txn,
- const StringData& indexName );
+ StringData indexName );
/* Updates the expireAfterSeconds field of the given index to the value in newExpireSecs.
* The specified index must already contain an expireAfterSeconds field, and the value in
* that field and newExpireSecs must both be numeric.
*/
virtual void updateTTLSetting( OperationContext* txn,
- const StringData& idxName,
+ StringData idxName,
long long newExpireSeconds );
RecordStore* getRecordStore() { return _recordStore.get(); }
diff --git a/src/mongo/db/storage/kv/kv_database_catalog_entry.cpp b/src/mongo/db/storage/kv/kv_database_catalog_entry.cpp
index 456ce30531f..a72aa8a12b6 100644
--- a/src/mongo/db/storage/kv/kv_database_catalog_entry.cpp
+++ b/src/mongo/db/storage/kv/kv_database_catalog_entry.cpp
@@ -44,7 +44,7 @@ namespace mongo {
class KVDatabaseCatalogEntry::AddCollectionChange : public RecoveryUnit::Change {
public:
AddCollectionChange(OperationContext* opCtx, KVDatabaseCatalogEntry* dce,
- const StringData& collection, const StringData& ident,
+ StringData collection, StringData ident,
bool dropOnRollback)
: _opCtx(opCtx)
, _dce(dce)
@@ -77,7 +77,7 @@ namespace mongo {
class KVDatabaseCatalogEntry::RemoveCollectionChange : public RecoveryUnit::Change {
public:
RemoveCollectionChange(OperationContext* opCtx, KVDatabaseCatalogEntry* dce,
- const StringData& collection, const StringData& ident,
+ StringData collection, StringData ident,
KVCollectionCatalogEntry* entry, bool dropOnCommit)
: _opCtx(opCtx)
, _dce(dce)
@@ -108,7 +108,7 @@ namespace mongo {
const bool _dropOnCommit;
};
- KVDatabaseCatalogEntry::KVDatabaseCatalogEntry( const StringData& db, KVStorageEngine* engine )
+ KVDatabaseCatalogEntry::KVDatabaseCatalogEntry( StringData db, KVStorageEngine* engine )
: DatabaseCatalogEntry( db ), _engine( engine ) {
}
@@ -175,7 +175,7 @@ namespace mongo {
}
CollectionCatalogEntry* KVDatabaseCatalogEntry::getCollectionCatalogEntry(
- const StringData& ns ) const {
+ StringData ns ) const {
CollectionMap::const_iterator it = _collections.find( ns.toString() );
if (it == _collections.end()) {
@@ -185,7 +185,7 @@ namespace mongo {
return it->second;
}
- RecordStore* KVDatabaseCatalogEntry::getRecordStore( const StringData& ns ) const {
+ RecordStore* KVDatabaseCatalogEntry::getRecordStore( StringData ns ) const {
CollectionMap::const_iterator it = _collections.find( ns.toString() );
if (it == _collections.end()) {
return NULL;
@@ -195,7 +195,7 @@ namespace mongo {
}
Status KVDatabaseCatalogEntry::createCollection( OperationContext* txn,
- const StringData& ns,
+ StringData ns,
const CollectionOptions& options,
bool allocateDefaultSpace ) {
@@ -272,8 +272,8 @@ namespace mongo {
}
Status KVDatabaseCatalogEntry::renameCollection( OperationContext* txn,
- const StringData& fromNS,
- const StringData& toNS,
+ StringData fromNS,
+ StringData toNS,
bool stayTemp ) {
invariant(txn->lockState()->isDbLockedForMode(name(), MODE_X));
@@ -324,7 +324,7 @@ namespace mongo {
return Status::OK();
}
- Status KVDatabaseCatalogEntry::dropCollection(OperationContext* opCtx, const StringData& ns) {
+ Status KVDatabaseCatalogEntry::dropCollection(OperationContext* opCtx, StringData ns) {
invariant(opCtx->lockState()->isDbLockedForMode(name(), MODE_X));
CollectionMap::const_iterator it = _collections.find( ns.toString() );
diff --git a/src/mongo/db/storage/kv/kv_database_catalog_entry.h b/src/mongo/db/storage/kv/kv_database_catalog_entry.h
index 4cb5d1d3edc..2bda9cc9afa 100644
--- a/src/mongo/db/storage/kv/kv_database_catalog_entry.h
+++ b/src/mongo/db/storage/kv/kv_database_catalog_entry.h
@@ -42,7 +42,7 @@ namespace mongo {
class KVDatabaseCatalogEntry : public DatabaseCatalogEntry {
public:
- KVDatabaseCatalogEntry( const StringData& db, KVStorageEngine* engine );
+ KVDatabaseCatalogEntry( StringData db, KVStorageEngine* engine );
virtual ~KVDatabaseCatalogEntry();
virtual bool exists() const;
@@ -62,26 +62,26 @@ namespace mongo {
virtual void getCollectionNamespaces( std::list<std::string>* out ) const;
- virtual CollectionCatalogEntry* getCollectionCatalogEntry( const StringData& ns ) const;
+ virtual CollectionCatalogEntry* getCollectionCatalogEntry( StringData ns ) const;
- virtual RecordStore* getRecordStore( const StringData& ns ) const;
+ virtual RecordStore* getRecordStore( StringData ns ) const;
virtual IndexAccessMethod* getIndex( OperationContext* txn,
const CollectionCatalogEntry* collection,
IndexCatalogEntry* index );
virtual Status createCollection( OperationContext* txn,
- const StringData& ns,
+ StringData ns,
const CollectionOptions& options,
bool allocateDefaultSpace );
virtual Status renameCollection( OperationContext* txn,
- const StringData& fromNS,
- const StringData& toNS,
+ StringData fromNS,
+ StringData toNS,
bool stayTemp );
virtual Status dropCollection( OperationContext* opCtx,
- const StringData& ns );
+ StringData ns );
// --------------
diff --git a/src/mongo/db/storage/kv/kv_database_catalog_entry_test.cpp b/src/mongo/db/storage/kv/kv_database_catalog_entry_test.cpp
index 0263c660f0b..2408106144c 100644
--- a/src/mongo/db/storage/kv/kv_database_catalog_entry_test.cpp
+++ b/src/mongo/db/storage/kv/kv_database_catalog_entry_test.cpp
@@ -77,8 +77,8 @@ namespace {
class InvalidRecordStoreKVEngine : public DevNullKVEngine {
public:
virtual Status createRecordStore( OperationContext* opCtx,
- const StringData& ns,
- const StringData& ident,
+ StringData ns,
+ StringData ident,
const CollectionOptions& options ) {
if (ns == "fail.me") {
return Status(ErrorCodes::BadValue, "failed to create record store");
diff --git a/src/mongo/db/storage/kv/kv_engine.h b/src/mongo/db/storage/kv/kv_engine.h
index a78d14e5385..ccc127c1abd 100644
--- a/src/mongo/db/storage/kv/kv_engine.h
+++ b/src/mongo/db/storage/kv/kv_engine.h
@@ -58,12 +58,12 @@ namespace mongo {
* Calling on a non-created ident is invalid and may crash.
*/
virtual RecordStore* getRecordStore( OperationContext* opCtx,
- const StringData& ns,
- const StringData& ident,
+ StringData ns,
+ StringData ident,
const CollectionOptions& options ) = 0;
virtual SortedDataInterface* getSortedDataInterface( OperationContext* opCtx,
- const StringData& ident,
+ StringData ident,
const IndexDescriptor* desc ) = 0;
//
@@ -75,22 +75,22 @@ namespace mongo {
//
virtual Status createRecordStore( OperationContext* opCtx,
- const StringData& ns,
- const StringData& ident,
+ StringData ns,
+ StringData ident,
const CollectionOptions& options ) = 0;
virtual Status createSortedDataInterface( OperationContext* opCtx,
- const StringData& ident,
+ StringData ident,
const IndexDescriptor* desc ) = 0;
virtual int64_t getIdentSize( OperationContext* opCtx,
- const StringData& ident ) = 0;
+ StringData ident ) = 0;
virtual Status repairIdent( OperationContext* opCtx,
- const StringData& ident ) = 0;
+ StringData ident ) = 0;
virtual Status dropIdent( OperationContext* opCtx,
- const StringData& ident ) = 0;
+ StringData ident ) = 0;
// optional
virtual int flushAllFiles( bool sync ) { return 0; }
@@ -110,14 +110,14 @@ namespace mongo {
virtual bool supportsDirectoryPerDB() const = 0;
virtual Status okToRename( OperationContext* opCtx,
- const StringData& fromNS,
- const StringData& toNS,
- const StringData& ident,
+ StringData fromNS,
+ StringData toNS,
+ StringData ident,
const RecordStore* originalRecordStore ) const {
return Status::OK();
}
- virtual bool hasIdent(OperationContext* opCtx, const StringData& ident) const = 0;
+ virtual bool hasIdent(OperationContext* opCtx, StringData ident) const = 0;
virtual std::vector<std::string> getAllIdents( OperationContext* opCtx ) const = 0;
diff --git a/src/mongo/db/storage/kv/kv_storage_engine.cpp b/src/mongo/db/storage/kv/kv_storage_engine.cpp
index 0f8e8c509ae..89ecf91f958 100644
--- a/src/mongo/db/storage/kv/kv_storage_engine.cpp
+++ b/src/mongo/db/storage/kv/kv_storage_engine.cpp
@@ -50,7 +50,7 @@ namespace mongo {
class KVStorageEngine::RemoveDBChange : public RecoveryUnit::Change {
public:
- RemoveDBChange(KVStorageEngine* engine, const StringData& db, KVDatabaseCatalogEntry* entry)
+ RemoveDBChange(KVStorageEngine* engine, StringData db, KVDatabaseCatalogEntry* entry)
: _engine(engine)
, _db(db.toString())
, _entry(entry)
@@ -205,7 +205,7 @@ namespace mongo {
}
DatabaseCatalogEntry* KVStorageEngine::getDatabaseCatalogEntry( OperationContext* opCtx,
- const StringData& dbName ) {
+ StringData dbName ) {
boost::mutex::scoped_lock lk( _dbsLock );
KVDatabaseCatalogEntry*& db = _dbs[dbName.toString()];
if ( !db ) {
@@ -215,12 +215,12 @@ namespace mongo {
return db;
}
- Status KVStorageEngine::closeDatabase( OperationContext* txn, const StringData& db ) {
+ Status KVStorageEngine::closeDatabase( OperationContext* txn, StringData db ) {
// This is ok to be a no-op as there is no database layer in kv.
return Status::OK();
}
- Status KVStorageEngine::dropDatabase( OperationContext* txn, const StringData& db ) {
+ Status KVStorageEngine::dropDatabase( OperationContext* txn, StringData db ) {
KVDatabaseCatalogEntry* entry;
{
diff --git a/src/mongo/db/storage/kv/kv_storage_engine.h b/src/mongo/db/storage/kv/kv_storage_engine.h
index f9cd1eeefda..b6f33c2d7b5 100644
--- a/src/mongo/db/storage/kv/kv_storage_engine.h
+++ b/src/mongo/db/storage/kv/kv_storage_engine.h
@@ -73,13 +73,13 @@ namespace mongo {
virtual void listDatabases( std::vector<std::string>* out ) const;
virtual DatabaseCatalogEntry* getDatabaseCatalogEntry( OperationContext* opCtx,
- const StringData& db );
+ StringData db );
virtual bool supportsDocLocking() const { return _supportsDocLocking; }
- virtual Status closeDatabase( OperationContext* txn, const StringData& db );
+ virtual Status closeDatabase( OperationContext* txn, StringData db );
- virtual Status dropDatabase( OperationContext* txn, const StringData& db );
+ virtual Status dropDatabase( OperationContext* txn, StringData db );
virtual int flushAllFiles( bool sync );