|
XRootD
|
#include <XrdOssCsi.hh>
Inheritance diagram for XrdOssCsiFile:
Collaboration diagram for XrdOssCsiFile:Classes | |
| struct | puMapItem_t |
Public Member Functions | |
| XrdOssCsiFile (XrdOss *parent, const char *tid, XrdOssCsiConfig &cf) | |
| virtual | ~XrdOssCsiFile () |
| void | aioDec () |
| void | aioInc () |
| void | aioWait () |
| virtual int | Close (long long *retsz=0) |
| virtual void | Flush () |
| Flush filesystem cached pages for this file (used for checksums). | |
| virtual int | Fstat (struct stat *) |
| virtual int | Fsync () |
| virtual int | Fsync (XrdSfsAio *) |
| virtual int | Ftruncate (unsigned long long) |
| virtual int | getFD () |
| virtual off_t | getMmap (void **addr) |
| virtual int | Open (const char *, int, mode_t, XrdOucEnv &) |
| XrdOssCsiPages * | Pages () |
| virtual ssize_t | pgRead (void *, off_t, size_t, uint32_t *, uint64_t) |
| virtual int | pgRead (XrdSfsAio *, uint64_t) |
| virtual ssize_t | pgWrite (void *, off_t, size_t, uint32_t *, uint64_t) |
| virtual int | pgWrite (XrdSfsAio *, uint64_t) |
| virtual ssize_t | Read (off_t, size_t) |
| virtual ssize_t | Read (void *, off_t, size_t) |
| virtual int | Read (XrdSfsAio *) |
| virtual ssize_t | ReadRaw (void *, off_t, size_t) |
| virtual ssize_t | ReadV (XrdOucIOVec *readV, int n) |
| int | VerificationStatus () |
| virtual ssize_t | Write (const void *, off_t, size_t) |
| virtual int | Write (XrdSfsAio *) |
| virtual ssize_t | WriteV (XrdOucIOVec *writeV, int n) |
Public Member Functions inherited from XrdOssDFHandler | |
| XrdOssDFHandler (XrdOssDF *successor) | |
| virtual | ~XrdOssDFHandler () |
| virtual int | Fchmod (mode_t Mode) |
| virtual int | Fctl (int cmd, int alen, const char *args, char **resp=0) |
| virtual const char * | getTID () |
| virtual int | isCompressed (char *cxidp=0) |
| virtual int | Opendir (const char *dir_path, XrdOucEnv &Env) |
| virtual int | Readdir (char *buff, int blen) |
| virtual int | StatRet (struct stat *buff) |
Public Member Functions inherited from XrdOssDF | |
| XrdOssDF (const char *tid="", uint16_t dftype=0, int fdnum=-1) | |
| virtual | ~XrdOssDF () |
| uint16_t | DFType () |
Static Public Member Functions | |
| static int | mapRelease (std::shared_ptr< puMapItem_t > &, XrdSysMutexHelper *plck=NULL) |
| static void | mapTake (const std::string &, std::shared_ptr< puMapItem_t > &, bool create=true) |
Static Public Attributes | |
| static std::unordered_map< std::string, std::shared_ptr< puMapItem_t > > | pumap_ |
| static XrdSysMutex | pumtx_ |
Static Public Attributes inherited from XrdOssDF | |
| static const uint16_t | DF_isDir = 0x0001 |
| Object is for a directory. | |
| static const uint16_t | DF_isFile = 0x0002 |
| Object is for a file. | |
| static const uint16_t | DF_isProxy = 0x0010 |
| Object is a proxy object. | |
| static const uint64_t | doCalc = 0x4000000000000000ULL |
| pgw: Calculate checksums | |
| static const int | Fctl_ckpObj = 0 |
| static const int | Fctl_utimes = 1 |
| static const uint64_t | Verify = 0x8000000000000000ULL |
| all: Verify checksums | |
Friends | |
| class | XrdOssCsiFileAio |
| class | XrdOssCsiFileAioJob |
Additional Inherited Members | |
Protected Attributes inherited from XrdOssDFHandler | |
| XrdOssDF * | successor_ |
Protected Attributes inherited from XrdOssDF | |
| uint16_t | dfType |
| int | fd |
| off_t | pgwEOF |
| short | rsvd |
| const char * | tident |
Definition at line 73 of file XrdOssCsi.hh.
|
inline |
Definition at line 106 of file XrdOssCsi.hh.
References XrdOssDFHandler::XrdOssDFHandler(), and parent().
Here is the call graph for this function:
|
virtual |
Definition at line 178 of file XrdOssCsiFile.cc.
References Close().
Here is the call graph for this function:
|
inline |
Definition at line 120 of file XrdOssCsi.hh.
Referenced by XrdOssCsiFileAio::Recycle().
Here is the caller graph for this function:
|
inline |
Definition at line 111 of file XrdOssCsi.hh.
|
inline |
Definition at line 126 of file XrdOssCsi.hh.
Referenced by Close(), and Fsync().
Here is the caller graph for this function:
|
virtual |
Close a directory or file.
| retsz | If not nil, where the size of the file is to be returned. |
Reimplemented from XrdOssDFHandler.
Definition at line 186 of file XrdOssCsiFile.cc.
References aioWait(), and XrdOssDFHandler::successor_.
Referenced by ~XrdOssCsiFile(), and Open().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Flush filesystem cached pages for this file (used for checksums).
Reimplemented from XrdOssDFHandler.
Definition at line 598 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::Flush(), Pages(), and XrdOssDFHandler::successor_.
Here is the call graph for this function:
|
virtual |
Return state information for this file.
| buf | - Pointer to the structure where info it to be returned. |
Reimplemented from XrdOssDFHandler.
Definition at line 575 of file XrdOssCsiFile.cc.
References Pages(), stat, XrdOssDFHandler::successor_, and XrdOssCsiPages::TrackedSizesGet().
Here is the call graph for this function:
|
virtual |
Synchronize associated file with media (synchronous).
Reimplemented from XrdOssDFHandler.
Definition at line 542 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::Fsync(), Pages(), and XrdOssDFHandler::successor_.
Referenced by Fsync().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Synchronize associated file with media (asynchronous).
| aiop | - Pointer to async I/O request object. |
Reimplemented from XrdOssDFHandler.
Definition at line 115 of file XrdOssCsiFileAio.cc.
References aioWait(), XrdSfsAio::doneWrite(), Fsync(), and XrdSfsAio::Result.
Here is the call graph for this function:
|
virtual |
Set the size of the associated file.
| flen | - The new size of the file. |
Reimplemented from XrdOssDFHandler.
Definition at line 552 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), Pages(), XrdOssCsiRangeGuard::ReleaseAll(), XrdOssDFHandler::successor_, and XrdOssCsiPages::truncate().
Here is the call graph for this function:
|
inlinevirtual |
Return the underlying file descriptor.
Reimplemented from XrdOssDFHandler.
Definition at line 83 of file XrdOssCsi.hh.
References XrdOssDFHandler::successor_.
|
inlinevirtual |
Return the memory mapped characteristics of the file.
| addr | - Pointer to where the memory mapped address is to be returned. |
Reimplemented from XrdOssDFHandler.
Definition at line 82 of file XrdOssCsi.hh.
|
static |
Definition at line 109 of file XrdOssCsiFile.cc.
References pumap_, pumtx_, and XrdSysMutexHelper::UnLock().
Referenced by XrdOssCsi::Create(), XrdOssCsi::Rename(), and XrdOssCsi::Unlink().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 88 of file XrdOssCsiFile.cc.
References pumap_, and pumtx_.
Referenced by XrdOssCsi::Create(), XrdOssCsi::Rename(), and XrdOssCsi::Unlink().
Here is the caller graph for this function:
|
virtual |
Open a file.
| path | - Pointer to the path of the file to be opened. |
| Oflag | - Standard open flags. |
| Mode | - File open mode (ignored unless creating a file). |
| env | - Reference to environmental information. |
Reimplemented from XrdOssDFHandler.
Definition at line 286 of file XrdOssCsiFile.cc.
References Close(), Mode, Pages(), XrdOssDFHandler::successor_, and XrdOssOK.
Here is the call graph for this function:
|
inline |
Definition at line 140 of file XrdOssCsi.hh.
Referenced by Flush(), Fstat(), Fsync(), Ftruncate(), Open(), pgRead(), pgWrite(), Read(), ReadRaw(), ReadV(), VerificationStatus(), Write(), and WriteV().
Here is the caller graph for this function:
|
virtual |
Reimplemented from XrdOssDFHandler.
Definition at line 475 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::FetchRange(), XrdOssCsiPages::LockTrackinglen(), opts, Pages(), and XrdOssDFHandler::successor_.
Here is the call graph for this function:
|
virtual |
Read file pages and checksums using asynchronous I/O.
| aioparm | - Pointer to async I/O object controlling the I/O. |
| opts | - Processing options (see above). |
Reimplemented from XrdOssDFHandler.
Definition at line 81 of file XrdOssCsiFileAio.cc.
References XrdOssCsiFileAio::Alloc(), XrdOssCsiFileAio::Init(), opts, XrdOssCsiFileAio::SchedReadJob(), and XrdOssCsiFileAio.
Here is the call graph for this function:
|
virtual |
Write file pages into a file with corresponding checksums.
| buffer | - pointer to buffer containing the bytes to write. |
| offset | - The offset where the write is to start. |
| wrlen | - The number of bytes to write. |
| csvec | - A vector which contains the corresponding CRC32 checksum for each page. See XrdOucPgrwUtils::csNum() for sizing. |
| opts | - Processing options (see above). |
Reimplemented from XrdOssDFHandler.
Definition at line 503 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), opts, Pages(), XrdOssCsiPages::pgWritePrelockCheck(), XrdOssCsiRangeGuard::ReleaseAll(), XrdOssCsiPages::StoreRange(), and XrdOssDFHandler::successor_.
Here is the call graph for this function:
|
virtual |
Write file pages and checksums using asynchronous I/O.
| aioparm | - Pointer to async I/O object controlling the I/O. |
| opts | - Processing options (see above). |
Reimplemented from XrdOssDFHandler.
Definition at line 91 of file XrdOssCsiFileAio.cc.
References aiocb::aio_buf, aiocb::aio_nbytes, aiocb::aio_offset, XrdOssCsiFileAio::Alloc(), XrdSfsAio::cksVec, XrdOssCsiFileAio::Init(), opts, XrdOssCsiPages::pgWritePrelockCheck(), XrdOssCsiFileAio::SchedWriteJob(), XrdSfsAio::sfsAio, and XrdOssCsiFileAio.
Here is the call graph for this function:
|
virtual |
Preread file blocks into the file system cache.
| offset | - The offset where the read is to start. |
| size | - The number of bytes to pre-read. |
Reimplemented from XrdOssDFHandler.
Definition at line 340 of file XrdOssCsiFile.cc.
References XrdOssDFHandler::successor_.
|
virtual |
Read file bytes into a buffer.
| buffer | - pointer to buffer where the bytes are to be placed. |
| offset | - The offset where the read is to start. |
| size | - The number of bytes to read. |
Reimplemented from XrdOssDFHandler.
Definition at line 345 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), Pages(), XrdOssDFHandler::successor_, and XrdOssCsiPages::VerifyRange().
Here is the call graph for this function:
|
virtual |
Read file bytes using asynchronous I/O.
| aiop | - Pointer to async I/O object controlling the I/O. |
Reimplemented from XrdOssDFHandler.
Definition at line 59 of file XrdOssCsiFileAio.cc.
References XrdOssCsiFileAio::Alloc(), XrdOssCsiFileAio::Init(), XrdOssCsiFileAio::SchedReadJob(), and XrdOssCsiFileAio.
Here is the call graph for this function:
|
virtual |
Read uncompressed file bytes into a buffer.
| buffer | - pointer to buffer where the bytes are to be placed. |
| offset | - The offset where the read is to start. |
| size | - The number of bytes to read. |
Reimplemented from XrdOssDFHandler.
Definition at line 360 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), Pages(), XrdOssDFHandler::successor_, and XrdOssCsiPages::VerifyRange().
Here is the call graph for this function:
|
virtual |
Read file bytes as directed by the read vector.
| readV | pointer to the array of read requests. |
| rdvcnt | the number of elements in readV. |
Reimplemented from XrdOssDFHandler.
Definition at line 375 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), XrdOucIOVec::offset, Pages(), XrdOssDFHandler::successor_, and XrdOssCsiPages::VerifyRange().
Here is the call graph for this function:| int XrdOssCsiFile::VerificationStatus | ( | ) |
Definition at line 606 of file XrdOssCsiFile.cc.
References Pages(), and XrdOssCsiPages::VerificationStatus().
Here is the call graph for this function:
|
virtual |
Write file bytes from a buffer.
| buffer | - pointer to buffer where the bytes reside. |
| offset | - The offset where the write is to start. |
| size | - The number of bytes to write. |
Reimplemented from XrdOssDFHandler.
Definition at line 404 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), Pages(), XrdOssCsiRangeGuard::ReleaseAll(), XrdOssDFHandler::successor_, and XrdOssCsiPages::UpdateRange().
Here is the call graph for this function:
|
virtual |
Write file bytes using asynchronous I/O.
| aiop | - Pointer to async I/O object controlling the I/O. |
Reimplemented from XrdOssDFHandler.
Definition at line 69 of file XrdOssCsiFileAio.cc.
References XrdOssCsiFileAio::Alloc(), XrdOssCsiFileAio::Init(), XrdOssCsiFileAio::SchedWriteJob(), and XrdOssCsiFileAio.
Here is the call graph for this function:
|
virtual |
Write file bytes as directed by the write vector.
| writeV | pointer to the array of write requests. |
| wrvcnt | the number of elements in writeV. |
Reimplemented from XrdOssDFHandler.
Definition at line 437 of file XrdOssCsiFile.cc.
References XrdOssCsiPages::LockTrackinglen(), XrdOucIOVec::offset, Pages(), XrdOssCsiRangeGuard::ReleaseAll(), XrdOssDFHandler::successor_, and XrdOssCsiPages::UpdateRange().
Here is the call graph for this function:
|
friend |
Definition at line 75 of file XrdOssCsi.hh.
References XrdOssCsiFileAio.
Referenced by pgRead(), pgWrite(), Read(), Write(), and XrdOssCsiFileAio.
|
friend |
Definition at line 76 of file XrdOssCsi.hh.
References XrdOssCsiFileAioJob.
Referenced by XrdOssCsiFileAioJob.
|
static |
Definition at line 160 of file XrdOssCsi.hh.
Referenced by mapRelease(), mapTake(), and XrdOssCsi::Rename().
|
static |
Definition at line 159 of file XrdOssCsi.hh.
Referenced by mapRelease(), mapTake(), and XrdOssCsi::Rename().