![]() |
CernVM-FS
2.13.0
|
#include <catalog.h>
Public Types | |
typedef std::vector< CatalogT * > | CatalogList |
typedef CatalogT | catalog_t |
Public Member Functions | |
AbstractCatalogManager (perf::Statistics *statistics) | |
virtual | ~AbstractCatalogManager () |
void | SetInodeAnnotation (InodeAnnotation *new_annotation) |
virtual bool | Init () |
LoadReturn | RemountDryrun () |
LoadReturn | Remount () |
LoadReturn | ChangeRoot (const shash::Any &root_hash) |
void | DetachNested () |
bool | LookupPath (const PathString &path, const LookupOptions options, DirectoryEntry *entry) |
bool | LookupPath (const std::string &path, const LookupOptions options, DirectoryEntry *entry) |
bool | LookupXattrs (const PathString &path, XattrList *xattrs) |
bool | LookupNested (const PathString &path, PathString *mountpoint, shash::Any *hash, uint64_t *size) |
bool | ListCatalogSkein (const PathString &path, std::vector< PathString > *result_list) |
bool | Listing (const PathString &path, DirectoryEntryList *listing, const bool expand_symlink) |
bool | Listing (const PathString &path, DirectoryEntryList *listing) |
bool | Listing (const std::string &path, DirectoryEntryList *listing) |
bool | ListingStat (const PathString &path, StatEntryList *listing) |
bool | ListFileChunks (const PathString &path, const shash::Algorithms interpret_hashes_as, FileChunkList *chunks) |
void | SetOwnerMaps (const OwnerMap &uid_map, const OwnerMap &gid_map) |
void | SetCatalogWatermark (unsigned limit) |
shash::Any | GetNestedCatalogHash (const PathString &mountpoint) |
Statistics | statistics () const |
uint64_t | inode_gauge () |
bool | volatile_flag () const |
uint64_t | GetRevision () const |
uint64_t | GetTimestamp () const |
uint64_t | GetTTL () const |
bool | HasExplicitTTL () const |
bool | GetVOMSAuthz (std::string *authz) const |
int | GetNumCatalogs () const |
std::string | PrintHierarchy () const |
std::string | PrintAllMemStatistics () const |
inode_t | GetRootInode () const |
CatalogT * | GetRootCatalog () const |
inode_t | MangleInode (const inode_t inode) const |
catalog::Counters | LookupCounters (const PathString &path, std::string *subcatalog_path, shash::Any *hash) |
Static Public Attributes | |
static const inode_t | kInodeOffset = 255 |
Protected Member Functions | |
virtual LoadReturn | GetNewRootCatalogContext (CatalogContext *result)=0 |
virtual LoadReturn | LoadCatalogByHash (CatalogContext *ctlg_context)=0 |
virtual void | UnloadCatalog (const CatalogT *catalog) |
virtual void | ActivateCatalog (CatalogT *catalog) |
const std::vector< CatalogT * > & | GetCatalogs () const |
virtual void | StageNestedCatalogByHash (const shash::Any &, const PathString &) |
void | StageNestedCatalogAndUnlock (const PathString &path, const CatalogT *parent, bool is_listable) |
virtual CatalogT * | CreateCatalog (const PathString &mountpoint, const shash::Any &catalog_hash, CatalogT *parent_catalog)=0 |
CatalogT * | MountCatalog (const PathString &mountpoint, const shash::Any &hash, CatalogT *parent_catalog) |
bool | MountSubtree (const PathString &path, const CatalogT *entry_point, bool can_listing, CatalogT **leaf_catalog) |
CatalogT * | LoadFreeCatalog (const PathString &mountpoint, const shash::Any &hash) |
bool | AttachCatalog (const std::string &db_path, CatalogT *new_catalog) |
void | DetachCatalog (CatalogT *catalog) |
void | DetachSubtree (CatalogT *catalog) |
void | DetachSiblings (const PathString ¤t_tree) |
void | DetachAll () |
bool | IsAttached (const PathString &root_path, CatalogT **attached_catalog) const |
CatalogT * | FindCatalog (const PathString &path) const |
uint64_t | GetRevisionNoLock () const |
uint64_t | GetTimestampNoLock () const |
void | ReadLock () const |
void | WriteLock () const |
void | Unlock () const |
virtual void | EnforceSqliteMemLimit () |
![]() | |
SingleCopy () | |
Private Member Functions | |
void | CheckInodeWatermark () |
std::string | PrintHierarchyRecursively (const CatalogT *catalog, const int level) const |
std::string | PrintMemStatsRecursively (const CatalogT *catalog) const |
InodeRange | AcquireInodes (uint64_t size) |
void | ReleaseInodes (const InodeRange chunk) |
Private Attributes | |
CatalogList | catalogs_ |
int | inode_watermark_status_ |
uint64_t | inode_gauge_ |
uint64_t | revision_cache_ |
uint64_t | timestamp_cache_ |
unsigned | catalog_watermark_ |
bool | volatile_flag_ |
bool | has_authz_cache_ |
std::string | authz_cache_ |
uint64_t | incarnation_ |
InodeAnnotation * | inode_annotation_ |
pthread_rwlock_t * | rwlock_ |
Statistics | statistics_ |
pthread_key_t | pkey_sqlitemem_ |
OwnerMap | uid_map_ |
OwnerMap | gid_map_ |
This class provides the read-only interface to a tree of catalogs representing a (subtree of a) repository. Mostly lookup functions filling DirectoryEntry objects. Reloading of expired catalogs, attaching of nested catalogs and delegating of lookups to the appropriate catalog is done transparently.
The loading / creating of catalogs is up to derived classes.
CatalogT is either Catalog or MockCatalog.
Usage: DerivedCatalogManager *catalog_manager = new DerivedCatalogManager(); catalog_manager->Init(); catalog_manager->Lookup(<inode>, &<result_entry>);
typedef CatalogT catalog::AbstractCatalogManager< CatalogT >::catalog_t |
Definition at line 243 of file catalog_mgr.h.
typedef std::vector<CatalogT *> catalog::AbstractCatalogManager< CatalogT >::CatalogList |
Definition at line 242 of file catalog_mgr.h.
|
explicit |
|
virtual |
Definition at line 51 of file catalog_mgr_impl.h.
|
private |
Assigns the next free numbers in the 64 bit space
Definition at line 759 of file catalog_mgr_impl.h.
|
inlineprotectedvirtual |
Reimplemented in catalog::WritableCatalogManager, and catalog::ClientCatalogManager.
Definition at line 349 of file catalog_mgr.h.
|
protected |
Attaches a newly created catalog.
db_path | the file on a local file system containing the database |
new_catalog | the catalog to attach to this CatalogManager |
Definition at line 1016 of file catalog_mgr_impl.h.
LoadReturn catalog::AbstractCatalogManager< CatalogT >::ChangeRoot | ( | const shash::Any & | root_hash | ) |
Remounts to the given hash
Definition at line 167 of file catalog_mgr_impl.h.
Referenced by FuseRemounter::TryFinish().
|
private |
|
protectedpure virtual |
Create a new Catalog object. Every derived class has to implement this and return a newly created (derived) Catalog structure of it's desired type.
mountpoint | the future mountpoint of the catalog to create |
catalog_hash | the content hash of the catalog database |
parent_catalog | the parent of the catalog to create |
Implemented in catalog::WritableCatalogManager, catalog::ClientCatalogManager, and catalog::SimpleCatalogManager.
|
inlineprotected |
Definition at line 397 of file catalog_mgr.h.
|
protected |
Removes a catalog from this CatalogManager, the catalog pointer is freed if the call succeeds. This method can create dangling children if a catalog in the middle of a tree is removed.
catalog | the catalog to detach |
Definition at line 1068 of file catalog_mgr_impl.h.
void catalog::AbstractCatalogManager< CatalogT >::DetachNested | ( | ) |
Detaches everything except the root catalog
Definition at line 208 of file catalog_mgr_impl.h.
Referenced by TalkManager::MainResponder(), and quota::MainUnpinListener().
|
protected |
Detaches all nested catalogs that are not on a prefix of the given tree. Used when the catalog_watermark_ is surpassed.
Definition at line 1116 of file catalog_mgr_impl.h.
|
protected |
Removes a catalog (and all of it's children) from this CatalogManager. The given catalog and all children are freed, if this call succeeds.
catalog | the catalog to detach |
Definition at line 1097 of file catalog_mgr_impl.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::DetachAll().
|
protectedvirtual |
Reimplemented in catalog::WritableCatalogManager.
Definition at line 1193 of file catalog_mgr_impl.h.
|
protected |
Find the catalog leaf in the tree that fits the path. The path might be served by a not yet loaded nested catalog.
path | the path a catalog is searched for |
Definition at line 790 of file catalog_mgr_impl.h.
Referenced by catalog::WritableCatalogManager::FindCatalog().
|
inlineprotected |
Definition at line 350 of file catalog_mgr.h.
Referenced by catalog::CatalogBalancer< CatalogMgrT >::Balance().
shash::Any catalog::AbstractCatalogManager< CatalogT >::GetNestedCatalogHash | ( | const PathString & | mountpoint | ) |
Returns the NULL hash if the nested catalog is not found.
Definition at line 231 of file catalog_mgr_impl.h.
|
protectedpure virtual |
Load the catalog and return a file name and the catalog hash.
GetNewRootCatalogContext() populates CatalogContext object with the information needed to retrieve the most recent root catalog independent of its location. The CatalogContext object must be populated with at least hash and mountpoint to call LoadCatalogByHash().
See class description of CatalogContext for more information.
Implemented in catalog::ClientCatalogManager, and catalog::SimpleCatalogManager.
int catalog::AbstractCatalogManager< CatalogT >::GetNumCatalogs | ( | ) | const |
Definition at line 735 of file catalog_mgr_impl.h.
Referenced by NClgMagicXattr::PrepareValueFenced().
uint64_t catalog::AbstractCatalogManager< CatalogT >::GetRevision | ( | ) | const |
Definition at line 668 of file catalog_mgr_impl.h.
Referenced by LibContext::GetRevision(), Init(), TalkManager::MainResponder(), RevisionMagicXattr::PrepareValueFenced(), cvmfs::PrintInodeGeneration(), LibContext::Remount(), and FuseRemounter::TryFinish().
|
protected |
Like GetRevision() only without any locking mechanism. As such should only be used in conditions where a lock was already taken and calling GetRevision() would otherwise result in a deadlock.
Definition at line 682 of file catalog_mgr_impl.h.
|
inline |
Definition at line 319 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::DetachAll(), and RepoCountersMagicXattr::PrepareValueFenced().
|
inline |
Get the inode number of the root DirectoryEntry ('root' means the root of the whole file system)
Definition at line 315 of file catalog_mgr.h.
Referenced by cvmfs::cvmfs_lookup(), cvmfs::cvmfs_opendir(), cvmfs::GetDirentForInode(), cvmfs::GetPathForInode(), LibContext::ListDirectory(), catalog::AbstractCatalogManager< Catalog >::MangleInode(), and cvmfs::MayBeInPageCacheTracker().
uint64_t catalog::AbstractCatalogManager< CatalogT >::GetTimestamp | ( | ) | const |
Definition at line 687 of file catalog_mgr_impl.h.
|
protected |
Like GetTimestamp() only without any locking mechanism. As such should only be used in conditions where a lock was already taken and calling GetTimestamp() would otherwise result in a deadlock.
Definition at line 701 of file catalog_mgr_impl.h.
uint64_t catalog::AbstractCatalogManager< CatalogT >::GetTTL | ( | ) | const |
Definition at line 726 of file catalog_mgr_impl.h.
Referenced by MountPoint::GetEffectiveTtlSec().
bool catalog::AbstractCatalogManager< CatalogT >::GetVOMSAuthz | ( | std::string * | authz | ) | const |
Definition at line 706 of file catalog_mgr_impl.h.
Referenced by MountPoint::ReEvaluateAuthz().
bool catalog::AbstractCatalogManager< CatalogT >::HasExplicitTTL | ( | ) | const |
Definition at line 717 of file catalog_mgr_impl.h.
|
virtual |
Initializes the CatalogManager and loads and attaches the root entry.
Definition at line 99 of file catalog_mgr_impl.h.
Referenced by publish::ConstructSyncManagers(), MountPoint::CreateCatalogManager(), publish::GetSimpleCatalogManager(), swissknife::Ingest::Main(), swissknife::IngestSQL::Main(), swissknife::CommandApplyDirtab::Main(), and swissknife::CommandSync::Main().
|
inline |
Definition at line 294 of file catalog_mgr.h.
Referenced by SaveState().
|
protected |
Checks if a searched catalog is already mounted to this CatalogManager
root_path | the root path of the searched catalog |
attached_catalog | is set to the searched catalog, if not NULL |
Definition at line 815 of file catalog_mgr_impl.h.
bool catalog::AbstractCatalogManager< CatalogT >::ListCatalogSkein | ( | const PathString & | path, |
std::vector< PathString > * | result_list | ||
) |
Create a listing of the parents, catalog, and children of the catalog that serves the specified path. If the path specified is a catalog mountpoint the catalog at that point is mounted and returned.
path | the path to find in the catalogs |
result_list | the list where the results will be added. |
Definition at line 431 of file catalog_mgr_impl.h.
Referenced by LibContext::ListNestedCatalogs().
bool catalog::AbstractCatalogManager< CatalogT >::ListFileChunks | ( | const PathString & | path, |
const shash::Algorithms | interpret_hashes_as, | ||
FileChunkList * | chunks | ||
) |
Collect file chunks (if exist)
path | the path of the directory to list |
interpret_hashes_as | hash of the directory entry (by convention the same than the chunk hashes) |
Definition at line 600 of file catalog_mgr_impl.h.
Referenced by cvmfs::cvmfs_open(), cvmfs::Evict(), LibContext::GetExtAttr(), LibContext::Open(), cvmfs::Pin(), ChunkListMagicXattr::PrepareValueFenced(), and ChunksMagicXattr::PrepareValueFenced().
bool catalog::AbstractCatalogManager< CatalogT >::Listing | ( | const PathString & | path, |
DirectoryEntryList * | listing, | ||
const bool | expand_symlink | ||
) |
Do a listing of the specified directory.
path | the path of the directory to list |
listing | the resulting DirectoryEntryList |
Definition at line 526 of file catalog_mgr_impl.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::Listing(), and catalog::VirtualCatalog::RemoveRecursively().
|
inline |
Definition at line 275 of file catalog_mgr.h.
|
inline |
Definition at line 278 of file catalog_mgr.h.
bool catalog::AbstractCatalogManager< CatalogT >::ListingStat | ( | const PathString & | path, |
StatEntryList * | listing | ||
) |
Do a listing of the specified directory, return only struct stat values.
path | the path of the directory to list |
listing | the resulting StatEntryList |
Definition at line 563 of file catalog_mgr_impl.h.
Referenced by cvmfs::cvmfs_opendir(), LibContext::ListDirectory(), LibContext::ListDirectoryStat(), and recursively_delete_directory().
|
protectedpure virtual |
Implemented in catalog::ClientCatalogManager, and catalog::SimpleCatalogManager.
|
protected |
Load a catalog file as a freestanding Catalog object. Loading of catalogs is implemented by derived classes.
Definition at line 991 of file catalog_mgr_impl.h.
catalog::Counters catalog::AbstractCatalogManager< CatalogT >::LookupCounters | ( | const PathString & | path, |
std::string * | subcatalog_path, | ||
shash::Any * | hash | ||
) |
Definition at line 630 of file catalog_mgr_impl.h.
Referenced by LibContext::GetNestedCatalogAttr(), and CatalogCountersMagicXattr::PrepareValueFenced().
bool catalog::AbstractCatalogManager< CatalogT >::LookupNested | ( | const PathString & | path, |
PathString * | mountpoint, | ||
shash::Any * | hash, | ||
uint64_t * | size | ||
) |
Perform a lookup for Nested Catalog that serves this path. If the path specified is a catalog mountpoint the catalog at that point is mounted and returned.
path | the path to find in the catalogs |
mountpoint | the path to the nested catalog found |
hash | the hash of the nested catalog found |
size | the size of the nested catalog, 0 for root. Root is not a nested catalog in the database. |
Definition at line 369 of file catalog_mgr_impl.h.
Referenced by LibContext::GetNestedCatalogAttr().
bool catalog::AbstractCatalogManager< CatalogT >::LookupPath | ( | const PathString & | path, |
const LookupOptions | options, | ||
DirectoryEntry * | dirent | ||
) |
Perform a lookup for a specific DirectoryEntry in the catalogs.
path | the path to find in the catalogs |
options | whether to perform another lookup to get the parent entry, too |
dirent | the resulting DirectoryEntry, or special Negative entry Note: can be set to zero if the result is not important |
Definition at line 257 of file catalog_mgr_impl.h.
Referenced by catalog::CatalogBalancer< CatalogMgrT >::AddCatalogMarker(), cvmfs::cvmfs_getxattr(), cvmfs::cvmfs_open(), catalog::VirtualCatalog::EnsurePresence(), swissknife::CommandApplyDirtab::FilterCandidatesFromGlobResult(), cvmfs::FixupOpenInode(), cvmfs::GetDirentForInode(), LibContext::GetDirentForPath(), cvmfs::GetDirentForPath(), catalog::AbstractCatalogManager< Catalog >::LookupPath(), and catalog::VirtualCatalog::Remove().
|
inline |
Definition at line 258 of file catalog_mgr.h.
bool catalog::AbstractCatalogManager< CatalogT >::LookupXattrs | ( | const PathString & | path, |
XattrList * | xattrs | ||
) |
Definition at line 490 of file catalog_mgr_impl.h.
Referenced by cvmfs::cvmfs_getxattr(), cvmfs::cvmfs_listxattr(), and LibContext::GetExtAttr().
|
inline |
Inodes are ambiquitous under some circumstances, to prevent problems they must be passed through this method first
inode | the raw inode |
Definition at line 326 of file catalog_mgr.h.
Referenced by cvmfs::cvmfs_getattr(), cvmfs::cvmfs_getxattr(), cvmfs::cvmfs_listxattr(), cvmfs::cvmfs_lookup(), cvmfs::cvmfs_open(), cvmfs::cvmfs_opendir(), cvmfs::cvmfs_read(), cvmfs::cvmfs_readdir(), cvmfs::cvmfs_readlink(), cvmfs::cvmfs_release(), cvmfs::cvmfs_releasedir(), and cvmfs::cvmfs_statfs().
|
protected |
Load a catalog file and attach it to the tree of Catalog objects. Loading of catalogs is implemented by derived classes.
Definition at line 940 of file catalog_mgr_impl.h.
|
protected |
Recursively mounts all nested catalogs required to serve a path. If leaf_catalog is NULL, just indicate if it is necessary to load a nested catalog for the given path. The final leaf nested catalog is returned. The is_listable parameter is relevant if path is a nested catalog. Only if is_listable is true, the nested catalog will be used; otherwise the parent with the transaction point is sufficient.
Definition at line 877 of file catalog_mgr_impl.h.
std::string catalog::AbstractCatalogManager< CatalogT >::PrintAllMemStatistics | ( | ) | const |
Statistics from all catalogs
Definition at line 1183 of file catalog_mgr_impl.h.
Referenced by TalkManager::MainResponder().
string catalog::AbstractCatalogManager< CatalogT >::PrintHierarchy | ( | ) | const |
Gets a formatted tree of the currently attached catalogs
Definition at line 747 of file catalog_mgr_impl.h.
Referenced by TalkManager::MainResponder().
|
private |
Formats the catalog hierarchy
Definition at line 1140 of file catalog_mgr_impl.h.
|
private |
Definition at line 1165 of file catalog_mgr_impl.h.
|
inlineprotected |
Definition at line 408 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::inode_gauge().
|
private |
Called if a catalog is detached which renders the associated InodeChunk invalid.
chunk | the InodeChunk to be freed |
Definition at line 778 of file catalog_mgr_impl.h.
LoadReturn catalog::AbstractCatalogManager< CatalogT >::Remount | ( | ) |
Definition at line 126 of file catalog_mgr_impl.h.
Referenced by LibContext::Remount(), and FuseRemounter::TryFinish().
LoadReturn catalog::AbstractCatalogManager< CatalogT >::RemountDryrun | ( | ) |
Remounts the root catalog if necessary. If a newer root catalog exists, it is mounted and replaces the currently mounted tree (all existing catalogs are detached)
Definition at line 119 of file catalog_mgr_impl.h.
Referenced by LibContext::Remount().
void catalog::AbstractCatalogManager< CatalogT >::SetCatalogWatermark | ( | unsigned | limit | ) |
Definition at line 73 of file catalog_mgr_impl.h.
Referenced by MountPoint::CreateCatalogManager().
void catalog::AbstractCatalogManager< CatalogT >::SetInodeAnnotation | ( | InodeAnnotation * | new_annotation | ) |
Definition at line 59 of file catalog_mgr_impl.h.
Referenced by MountPoint::SetupInodeAnnotation().
void catalog::AbstractCatalogManager< CatalogT >::SetOwnerMaps | ( | const OwnerMap & | uid_map, |
const OwnerMap & | gid_map | ||
) |
Definition at line 66 of file catalog_mgr_impl.h.
Referenced by MountPoint::SetupOwnerMaps().
|
protected |
Called within the ReadLock(), which will be released before downloading the catalog (and before leaving the method)
Definition at line 831 of file catalog_mgr_impl.h.
|
inlineprotectedvirtual |
Opportunistic optimization: the client catalog manager uses this method to preload into the cache a nested catalog that is likely to be required next. Likely, because there is a race with the root catalog reload which may result in the wrong catalog being staged. That's not a fault though, the correct catalog will still be loaded with the write lock held. Note that this method is never used for root catalogs.
Reimplemented in catalog::ClientCatalogManager.
Definition at line 360 of file catalog_mgr.h.
|
inline |
Definition at line 293 of file catalog_mgr.h.
|
inlineprotectedvirtual |
Reimplemented in catalog::ClientCatalogManager.
Definition at line 348 of file catalog_mgr.h.
|
inlineprotected |
Definition at line 420 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::inode_gauge().
|
inline |
Definition at line 300 of file catalog_mgr.h.
Referenced by MountPoint::CreateCatalogManager(), cvmfs::cvmfs_open(), cvmfs::cvmfs_read(), and LHashMagicXattr::FinalizeValue().
|
inlineprotected |
Definition at line 412 of file catalog_mgr.h.
|
private |
Saves the VOMS requirements when a root catalog is attached
Definition at line 455 of file catalog_mgr.h.
|
private |
Try to keep number of nested catalogs below the given limit. Zero means no limit. Surpassing the watermark on mounting a catalog triggers a DetachSiblings() call.
Definition at line 442 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
private |
The flat list of all attached catalogs.
Definition at line 432 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::DetachAll(), catalog::AbstractCatalogManager< Catalog >::GetCatalogs(), and catalog::AbstractCatalogManager< Catalog >::GetRootCatalog().
|
private |
Definition at line 466 of file catalog_mgr.h.
|
private |
Saves the result of GetVOMSAuthz when a root catalog is attached
Definition at line 451 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
private |
Counts how often the inodes have been invalidated.
Definition at line 459 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
private |
applied to all catalogs
Definition at line 461 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager(), and catalog::AbstractCatalogManager< Catalog >::GetRootInode().
|
private |
highest issued inode
Definition at line 434 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager(), and catalog::AbstractCatalogManager< Catalog >::inode_gauge().
|
private |
0: OK, 1: > 32bit
Definition at line 433 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
static |
Definition at line 245 of file catalog_mgr.h.
Referenced by cvmfs::cvmfs_forget(), catalog::AbstractCatalogManager< Catalog >::GetRootInode(), and catalog::AbstractCatalogManager< Catalog >::MangleInode().
|
private |
Definition at line 464 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
private |
Definition at line 435 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
private |
Definition at line 462 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager(), catalog::AbstractCatalogManager< Catalog >::ReadLock(), catalog::AbstractCatalogManager< Catalog >::Unlock(), and catalog::AbstractCatalogManager< Catalog >::WriteLock().
|
private |
Definition at line 463 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< Catalog >::statistics(), and catalog::AbstractCatalogManager< Catalog >::WriteLock().
|
private |
Definition at line 436 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager().
|
private |
Definition at line 465 of file catalog_mgr.h.
|
private |
Not protected by a read lock because it can only change when the root catalog is exchanged (during big global lock of the file system).
Definition at line 447 of file catalog_mgr.h.
Referenced by catalog::AbstractCatalogManager< CatalogT >::AbstractCatalogManager(), and catalog::AbstractCatalogManager< Catalog >::volatile_flag().