xrootd
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
XrdOssVSPart Class Reference

#include <XrdOssVS.hh>

Public Member Functions

 XrdOssVSPart ()
 
 ~XrdOssVSPart ()
 

Public Attributes

const char * pPath
 
const char ** aPath
 
long long Total
 
long long Free
 
unsigned short bdevID
 
unsigned short partID
 
int rsvd1
 
void * rsvd2
 

Detailed Description

Class describing the patitions associated with a space. This is returned as a vector by StatVS() when so requested. Note that pPath points to a path associated with the partition. No inference should be made about this path other than it is one of, perhaps of many, paths associated with the partition. The aPath vector provides specific paths that are associated with allocated files in the partition relative to the space name. There may be many of these for the partition. The vector always ends with a nil pointer.

The bdevID is a unique identifier for each block device. It is currently only supported in Linux. Other systems assign all partitions the generic ID of 0. Even in Linux, the ID will be zero for softwared devices (though not for LVM devices backed by a real device). Softwared devices such as distributed file systems cannot be identified correctly as they do not provide sufficiently distinguishing information.

The partID is an ascending value that uniquely identifies a partition irrespective of its associated bdevID. However, using this information to schedule read/write requests is not trivial and may overwhelm the underlying device if it has many partitions. You can check if the system correctly identified all devices using DevID(0,x,y). If 'x' is one upon return, then using partID for scheduling is the only recourse as either no real devices were found or the system only has one such device.

Constructor & Destructor Documentation

◆ XrdOssVSPart()

XrdOssVSPart::XrdOssVSPart ( )
inline

◆ ~XrdOssVSPart()

XrdOssVSPart::~XrdOssVSPart ( )
inline

Member Data Documentation

◆ aPath

const char** XrdOssVSPart::aPath

◆ bdevID

unsigned short XrdOssVSPart::bdevID

◆ Free

long long XrdOssVSPart::Free

◆ partID

unsigned short XrdOssVSPart::partID

◆ pPath

const char* XrdOssVSPart::pPath

◆ rsvd1

int XrdOssVSPart::rsvd1

◆ rsvd2

void* XrdOssVSPart::rsvd2

◆ Total

long long XrdOssVSPart::Total

The documentation for this class was generated from the following file: