#include <XrdFrmPurge.hh>
List of all members.
Public Member Functions |
| XrdFrmPurge (const char *snp, XrdFrmPurge *spp=0) |
| ~XrdFrmPurge () |
Static Public Member Functions |
static void | Display () |
static int | Init (XrdOucTList *sP=0, long long minV=-1, int hVal=-1) |
static XrdFrmPurge * | Policy (const char *sname) |
static XrdFrmPurge * | Policy (const char *sname, long long minV, long long maxV, int hVal, int xVal) |
static void | Purge () |
Private Member Functions |
XrdFrmFileset * | Advance () |
void | Clear () |
void | Defer (XrdFrmFileset *sP, time_t xTime) |
const char * | Eligible (XrdFrmFileset *sP, time_t &xTime, int hTime=0) |
int | PurgeFile () |
void | Track (XrdFrmFileset *sP) |
const char * | XPolOK (XrdFrmFileset *sP) |
Static Private Member Functions |
static void | Add (XrdFrmFileset *fsp) |
static XrdFrmPurge * | Find (const char *snp) |
static int | LowOnSpace () |
| >0 -> Purge is needed.
|
static void | Remfix (const char *Ftype, const char *Fname) |
static void | Scan () |
static int | Screen (XrdFrmFileset *sP, int needLF) |
static void | Stats (int Final) |
Private Attributes |
long long | freeSpace |
long long | fconMaxsp |
long long | usedSpace |
long long | pmaxSpace |
long long | totlSpace |
long long | contSpace |
long long | purgBytes |
long long | minFSpace |
long long | maxFSpace |
char * | spaceTotl |
char * | spaceTotP |
int | spaceTLen |
int | spaceTLep |
int | Hold |
int | Hold2x |
int | Ext |
int | numFiles |
int | prgFiles |
int | Enabled |
int | Stop |
int | SNlen |
XrdFrmPurge * | Next |
XrdFrmTSort | FSTab |
char | SName [XrdOssSpace::minSNbsz] |
XrdFrmFileset * | DeferQ [DeferQsz] |
time_t | DeferT [DeferQsz] |
Static Private Attributes |
static XrdOucProg * | PolProg = 0 |
static XrdOucStream * | PolStream = 0 |
static XrdOucHash< char > | BadFiles |
static time_t | lastReset = 0 |
static time_t | nextReset = 0 |
static XrdFrmPurge * | First = 0 |
static XrdFrmPurge * | Default = 0 |
static int | Left2Do = 0 |
static const int | DeferQsz = 16 |
Constructor & Destructor Documentation
XrdFrmPurge::XrdFrmPurge |
( |
const char * |
snp, |
|
|
XrdFrmPurge * |
spp = 0 |
|
) |
| |
References Clear(), contSpace, DeferQ, Enabled, freeSpace, maxFSpace, minFSpace, Next, pmaxSpace, SName, SNlen, Stop, totlSpace, and usedSpace.
Referenced by Policy().
XrdFrmPurge::~XrdFrmPurge |
( |
| ) |
[inline] |
Member Function Documentation
References XrdFrmTSort::Add(), XrdFrmFileset::baseFile(), XrdFrmFileset::basePath(), DEBUG, Default, Defer(), Eligible(), Enabled, EPNAME, Find(), FSTab, XrdOssPath::getCname(), Hold, XrdOucNSWalk::NSEnt::Link, XrdOucNSWalk::NSEnt::Lksz, XrdOssSpace::minSNbsz, and numFiles.
Referenced by Advance(), and Scan().
void XrdFrmPurge::Clear |
( |
| ) |
[private] |
void XrdFrmPurge::Defer |
( |
XrdFrmFileset * |
sP, |
|
|
time_t |
xTime |
|
) |
| [private] |
void XrdFrmPurge::Display |
( |
| ) |
[static] |
References XrdCms::Config, XrdFrmConfig::VPInfo::Dir, Enabled, Ext, First, XrdOucUtils::fmtBytes(), Hold, maxFSpace, minFSpace, XrdFrmConfig::VPInfo::Name, Next, XrdFrmConfig::VPInfo::Next, XrdOucTList::next, Say, SName, XrdOucTList::text, and XrdFrmConfig::VPInfo::Val.
const char * XrdFrmPurge::Eligible |
( |
XrdFrmFileset * |
sP, |
|
|
time_t & |
xTime, |
|
|
int |
hTime = 0 |
|
) |
| [private] |
References XrdFrmFileset::baseFile(), close, XrdFrmFileset::failFile(), XrdFrmFileset::lockFile(), open(), XrdOucNSWalk::NSEnt::Path, XrdFrmFileset::pinFile(), read(), Say, and XrdOucNSWalk::NSEnt::Stat.
Referenced by Add(), and PurgeFile().
XrdFrmPurge * XrdFrmPurge::Find |
( |
const char * |
snp | ) |
[static, private] |
int XrdFrmPurge::Init |
( |
XrdOucTList * |
sP = 0 , |
|
|
long long |
minV = -1 , |
|
|
int |
hVal = -1 |
|
) |
| [static] |
References XrdCms::Config, Default, Find(), First, XrdOucProg::getStream(), XrdOssVSInfo::Large, XrdFrmConfig::VPInfo::Name, XrdOucTList::next, Next, XrdFrmConfig::VPInfo::Next, XrdCmsConfig::ossFS, PolProg, PolStream, XrdFrmConfig::PP_atime, XrdFrmConfig::PP_fsize, XrdFrmConfig::PP_mtime, XrdFrmConfig::PP_pfn, XrdFrmConfig::PP_sname, Say, XrdOucProg::Setup(), XrdOucProg::Start(), XrdOss::StatVS(), XrdOucTList::text, XrdOssVSInfo::Total, totlSpace, and XRDABS.
Referenced by mainConfig().
int XrdFrmPurge::LowOnSpace |
( |
| ) |
[static, private] |
>0 -> Purge is needed.
References XrdCms::Config, contSpace, Enabled, First, XrdOssVSInfo::Free, freeSpace, Left2Do, XrdOssVSInfo::LFree, minFSpace, Next, XrdCmsConfig::ossFS, SName, XrdOss::StatVS(), Stop, XrdOssVSInfo::Usage, and usedSpace.
Referenced by Purge().
XrdFrmPurge * XrdFrmPurge::Policy |
( |
const char * |
sname, |
|
|
long long |
minV, |
|
|
long long |
maxV, |
|
|
int |
hVal, |
|
|
int |
xVal |
|
) |
| [static] |
static XrdFrmPurge* XrdFrmPurge::Policy |
( |
const char * |
sname | ) |
[inline, static] |
void XrdFrmPurge::Purge |
( |
| ) |
[static] |
int XrdFrmPurge::PurgeFile |
( |
| ) |
[private] |
References Advance(), XrdFrmFileset::baseFile(), XrdFrmFileset::basePath(), XrdCms::Config, DEBUG, Eligible(), EPNAME, Ext, freeSpace, FSTab, Hold, maxFSpace, nextReset, XrdFrmTSort::Oldest(), XrdCmsConfig::ossFS, prgFiles, purgBytes, XrdFrmFileset::Refresh(), SName, XrdOucNSWalk::NSEnt::Stat, Stop, Track(), XrdOss::Unlink(), XPolOK(), XRDOSS_isMIG, and XRDOSS_isPFN.
Referenced by Purge().
void XrdFrmPurge::Remfix |
( |
const char * |
Ftype, |
|
|
const char * |
Fname |
|
) |
| [static, private] |
void XrdFrmPurge::Scan |
( |
| ) |
[static, private] |
References Add(), BadFiles, XrdFrmFiles::CompressD, XrdCms::Config, XrdFrmConfig::VPInfo::Dir, XrdFrmFiles::Get(), XrdFrmPurgeDir::lowDirTime, XrdFrmConfig::VPInfo::Name, XrdFrmConfig::VPInfo::Next, XrdFrmFiles::NoAutoDel, XrdFrmPurgeDir::numEMD, XrdFrmPurgeDir::numRMD, XrdMpx::Opts, XrdOucHash< T >::Purge(), XrdFrmFiles::Recursive, XrdFrmPurgeDir::Reset(), Say, Screen(), XrdFrmConfig::VPInfo::Val, and VMSG.
int XrdFrmPurge::Screen |
( |
XrdFrmFileset * |
sP, |
|
|
int |
needLF |
|
) |
| [static, private] |
References XrdOucHash< T >::Add(), BadFiles, XrdFrmFileset::baseFile(), XrdFrmFileset::basePath(), XrdCms::Config, XrdFrmFileset::dirPath(), XrdFrmFileset::failFile(), XrdFrmFileset::failPath(), Hash_data_is_key, XrdFrmFileset::lockFile(), XrdFrmFileset::lockPath(), Remfix(), and Say.
Referenced by Scan().
void XrdFrmPurge::Stats |
( |
int |
Final | ) |
[static, private] |
References XrdFrmTSort::Count(), Enabled, First, XrdOucUtils::fmtBytes(), freeSpace, FSTab, maxFSpace, minFSpace, Next, numFiles, prgFiles, purgBytes, Say, SName, totlSpace, and usedSpace.
Referenced by Purge().
References XrdFrmFileset::baseFile(), XrdFrmFileset::basePath(), XrdCms::Config, XrdOucProg::Feed(), XrdOucNSWalk::NSEnt::File, freeSpace, XrdOucStream::GetLine(), PolProg, PolStream, XrdFrmConfig::PP_atime, XrdFrmConfig::PP_ctime, XrdFrmConfig::PP_fname, XrdFrmConfig::PP_fsize, XrdFrmConfig::PP_fspace, XrdFrmConfig::PP_mtime, XrdFrmConfig::PP_pfn, XrdFrmConfig::PP_sname, XrdFrmConfig::PP_tspace, XrdFrmConfig::PP_usage, purgBytes, SName, SNlen, spaceTLen, spaceTotl, XrdOucNSWalk::NSEnt::Stat, Stop, and usedSpace.
Referenced by PurgeFile().
Member Data Documentation
The documentation for this class was generated from the following files: