[root] / trunk / io / dcache / src / TDCacheFile.cxx Repository:
ViewVC logotype

Log of /trunk/io/dcache/src/TDCacheFile.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 46215 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 27 11:04:24 2012 UTC (2 years, 3 months ago) by rdm
File length: 20633 byte(s)
Diff to previous 46214
Remove also Linux Mips and SGI Irix platform support.

Revision 46214 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 27 10:10:19 2012 UTC (2 years, 3 months ago) by rdm
File length: 20652 byte(s)
Diff to previous 43518
Digital Alpha is no longer supported. Remove all references to __alpha and
__true64.

Revision 43518 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 28 01:04:07 2012 UTC (2 years, 9 months ago) by pcanal
File length: 20673 byte(s)
Diff to previous 43512
Fix for coding convention RS1 and RS2

Revision 43512 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Mar 27 20:26:50 2012 UTC (2 years, 9 months ago) by pcanal
File length: 20660 byte(s)
Diff to previous 41697
Fix for coding convention RN6 (Enumeration types begin 'E'.)

Revision 41697 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 1 21:03:41 2011 UTC (3 years, 2 months ago) by pcanal
File length: 20659 byte(s)
Diff to previous 35359
Fix medium impact coverity reports

Revision 35359 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 17 10:10:18 2010 UTC (4 years, 4 months ago) by rdm
File length: 20650 byte(s)
Diff to previous 35358
removed one } too many.

Revision 35358 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 17 09:58:04 2010 UTC (4 years, 4 months ago) by rdm
File length: 20645 byte(s)
Diff to previous 34444
As fOffset is now used in TFile to cache the Seek offset on the buffer
level, the many plugins that used the same fOffset on the SysSeek level
were broken.

Revision 34444 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 16 02:17:39 2010 UTC (4 years, 6 months ago) by pcanal
File length: 20809 byte(s)
Diff to previous 32076
Avoid doing seeks on the physical file reprensation when it is not absolutely necessary
(i.e. it is not need if we are going to pick the data from our cache).
Introduce a SetOffset to change fOffset (i.e. the logical position in the file) without doing a lseek.
Introduce ReadBuffer(char * buf, Long64_t pos, Int_t len) to avoid the lseek when the data is in the cache.

See <http://savannah.cern.ch/bugs/?69845>

Revision 32076 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 22 13:37:26 2010 UTC (5 years ago) by rdm
File length: 20346 byte(s)
Diff to previous 31171
From Tigran Mkrtchyan:
fix regression which caused dcap://host:port/path to fail.

Revision 31171 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 15 20:32:01 2009 UTC (5 years, 2 months ago) by rdm
File length: 20467 byte(s)
Diff to previous 31104
From Shuwei:
forgot to correctly use dcache_RAHEAD_SIZE.

Revision 31104 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 12 05:57:33 2009 UTC (5 years, 2 months ago) by brun
File length: 20467 byte(s)
Diff to previous 31099
Fix a fatal compilation error.

Revision 31099 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 11 21:10:36 2009 UTC (5 years, 2 months ago) by rdm
File length: 20461 byte(s)
Diff to previous 31069
increase readahead size from 8k to 128k and make it settable via
DCACHE_RA_BUFFER env var.

Revision 31069 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 10 17:25:28 2009 UTC (5 years, 2 months ago) by rdm
File length: 20109 byte(s)
Diff to previous 30975
dCap client does not ignore ?filetpye=raw and other options, so remove it.
Fixes issue #57409.

Revision 30975 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 5 01:12:21 2009 UTC (5 years, 2 months ago) by rdm
File length: 20005 byte(s)
Diff to previous 26184
handle fArchiveOffset in ReadBuffers().

Revision 26184 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 14 07:59:14 2008 UTC (6 years, 2 months ago) by rdm
File length: 19989 byte(s)
Diff to previous 24902
From Tigran:
this patch enables 8k read ahead buffer for dcap.
The vector read are not affected. The patch turns client into active
mode, which makes dcap access more firewall friendly.

Revision 24902 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jul 21 17:52:01 2008 UTC (6 years, 6 months ago) by brun
File length: 19776 byte(s)
Diff to previous 23122
When compiling with gcc4.3.1 cstdlib must be included.

Revision 23122 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 10 14:56:30 2008 UTC (6 years, 9 months ago) by rdm
File length: 19757 byte(s)
Diff to previous 20882
move the following directories into "io":

castor, chrip, dcache, gfal, io, rfio, sql, xml

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19757 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19757 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19811 byte(s)
Diff to previous 19313
remove :$ from tag line

Revision 19313 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jul 11 15:28:44 2007 UTC (7 years, 6 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19821 byte(s)
Diff to previous 19269
From Tigran:
ReadBuffers() with vector read is implemented.
Today we have released new dcache version 1.7.0-39 with this functionality.
I have tried with root version 5.14, 5.15 and 5.16. It's amazing! On some
applications I got up ti 12 times performance increase!

Revision 19269 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 6 10:39:19 2007 UTC (7 years, 6 months ago) by pcanal
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19228 byte(s)
Diff to previous 15572
Work around the missing 'vector read' in the DCache protocol by requesting
all the needed data in a single sequential read request (aka reading too
much data but reducing the number of messages).  This improves performances
by a factor 20 to 50 depending on network topology.

Revision 15572 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 27 14:36:28 2006 UTC (8 years, 6 months ago) by brun
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17930 byte(s)
Diff to previous 14620
-Rename class TFilePrefetch -> TFileCacheRead
-Rename class TTreeFilePrefetch -> TTreeCache
-Add new class TFileCacheWrite that implements automatic caching
 when writing network files. This class replaces the previous class TCache.
-old TCache class deleted.
-TFileCacheRead can read buffers from the wite cache in TFileCacheWrite.
-As a result TFile::UseCache is obsolete. The function is kept for
  backward compatibility.
-Remove references to TCache from TXMLFile, TSQLFile, TwebFile, TNetFile
-remove pointer TFile::fCache
-Add pointers TFile::fCacheRead and TFile::fCacheWrite
-Remove members fMaxCacheSize and fPageSize from TChain

NOTE that it is recommended to
  rm -f base/src/*.d base/src/*.o
  rm -f net/src/*.d  net/src/*.o
  rm -f tree/src/*.d tree/src/*.o

Revision 14620 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 10 13:48:39 2006 UTC (8 years, 9 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17921 byte(s)
Diff to previous 14598
support dCache either via the "dcap:" or "dcache:" URL's. The "dcap:" URL
has the form:
   dcap://<host.do.main>/<path>/<file>.root
while the "dcache:" URL has the form:
   dcache:/pnfs/<path>/<file>.root

Revision 14598 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 7 15:35:29 2006 UTC (8 years, 9 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17818 byte(s)
Diff to previous 14458
set file name to original file name, not to url->GetFile().

Revision 14458 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Mar 28 23:58:12 2006 UTC (8 years, 9 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17837 byte(s)
Diff to previous 13608
make sure correct file name (full url) is set and used.

Revision 13608 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Dec 10 01:07:24 2005 UTC (9 years, 1 month ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17866 byte(s)
Diff to previous 13577
fix white space.

Revision 13577 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 9 09:35:28 2005 UTC (9 years, 1 month ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17861 byte(s)
Diff to previous 11200
whitespace.

Revision 11200 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 28 17:28:12 2005 UTC (9 years, 10 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17862 byte(s)
Diff to previous 10921
From Dmytro Kustov:
OpenBSD port.

Revision 10921 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 14 10:21:05 2005 UTC (10 years ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17842 byte(s)
Diff to previous 10316
From Tigran Mkrtchyan:
support for large files is now available in dcap. Make use of it in
TDCacheFile. This needs the latest dcache.tgz file from
http://www.dcache.org/downloads.

Revision 10316 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 15 16:55:07 2004 UTC (10 years, 3 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17814 byte(s)
Diff to previous 9982
introduce a more complete TSystem::GetPathInfo() method that takes a
new FileStat_t structure as argument. This FileStat_t structure mimics the
common struct stat. This allows for full support of the file mode bits
(via the new enum EFileModeMask and the inline function R_ISDIR(), R_ISCHR(),
R_SIBLK(), R_ISREG(), R_ISLNK(), R_ISFIFO() and R_ISSOCK()).
The TSystem derived helper clsses for the remote file access protocols
have been updated too (all already supported struct stat in their POSIX
layers). Modified rootd to also support FileStat_t. With this change we
can get rid of machine dependent file permission checking code in several
places, notably in the TGFSContainer, which now can correctly display
file attributes for remote protocols.

Revision 9982 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 10 21:34:20 2004 UTC (10 years, 4 months ago) by brun
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 18672 byte(s)
Diff to previous 9699
Thanks to Robert Hatcher for reporting/fixing an uninitialized variable fStatCached
in the normal constructor.

Revision 9699 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 9 17:43:07 2004 UTC (10 years, 5 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 18647 byte(s)
Diff to previous 9508
fix problem of reading ZIP archives when a TCache cache is active.

Revision 9508 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 13 11:33:55 2004 UTC (10 years, 6 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19145 byte(s)
Diff to previous 8820
From Tigran Mkrtchyan:
finally, we have implemented dc_opendir/dc_readdir and dc_closedir
functions. The new patch allow to use regular expressions in file names
with url:

TChain hat("HAT");
hat.Add("dcap://d2cachedoor.desy.de:24125/pnfs/desy.de/h1/data/oo-2.6/04/hat.2.6.3.10dst1.c04013*.root");
hat.Draw("LPol");

The patch created against ROOT cvs head at 29.06.2004. User need a
dcap library version 1.2.30 to get it running.

Revision 8820 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri May 7 16:27:31 2004 UTC (10 years, 8 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19327 byte(s)
Diff to previous 8743
fix error in description text in ctor.

Revision 8743 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 29 17:05:39 2004 UTC (10 years, 8 months ago) by brun
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 19389 byte(s)
Diff to previous 8595
From Bill Tanenbaum + Philippe
There were a couple of issues in TDCacheFile.
The number of call to dc_stat in case of opening a file in read-only
mode was 6.  This patchs reduce it to 1 by checking existing and read permission
only in case of failure and by caching the size of the file.
The testing of the file in the update/create mode was incorrect in some circuntances
(this is due to gSystem->AccessPathName requiring an uri to proper work).

Revision 8595 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 16 17:03:04 2004 UTC (10 years, 9 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17665 byte(s)
Diff to previous 7810
fix error string propagation from TFile plugins. These plugins use SetErrorStr()
to set the error string to be used via SysError(). However, SysError() is using
TSystem::GetError() and GetError() was not looking at the error string set
via SetErrorStr(), thus RFIO errors were not properly reported. This is now
fixed in GetError().

Revision 7810 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 30 13:16:51 2003 UTC (11 years ago) by brun
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 18066 byte(s)
Diff to previous 7803
Mega patch to add support for large files (bigger than 2 GBytes)
----------------------------------------------------------------

  ==========>NEW VERSION 4.00/00 <===========

Because this new version has a considerable number of changes,
and new important additions by Philippe are scheduled for the coming days
we are starting a new major version 4.
  -Support for large files
  -Automatic schema evolution for foreign classes
  -New data type Double32_t

Large files are currently tested only under Linux with gcc3.2.
Support for other systems will be gradually added in the coming days.
By default under Linux, files are created with the option LARGEFILE.
Note that when creating a Tree, the default maximum size for a Tree
is set to 1.9 GBytes. You can change this default value by calling
  TTree::SetMaxTreeSize(Long64_t maxsize)

The implementation of this new feature has required changes in many places.
The files produced by this new version can still be read by old ROOT versions
if their size if smaller than 2 GBytes. And obviously, the new version
can digest old ROOT files.

WARNING: note the following backward incompatibility:
 -TSystem::GetPathInfo has a new signature: (also TUnixSystem, TWinNTSystem, etc)
  old: GetPathInfo(const char *path, Long_t *id, Long_t *size, Long_t *flags, Long_t *modtime);
  new: GetPathInfo(const char *path, Long_t *id, Long64_t *size, Long_t *flags, Long_t *modtime);

 -TFile::SysSeek and TFile::SysStat have a new signature (also TNetFile, TWebFile, etc)
  old:  Int_t    SysSeek(Int_t fd, Long_t offset, Int_t whence);
        Int_t    SysStat(Int_t fd, Long_t *id, Long_t *size, Long_t *flags, Long_t *modtime);
  new:  Long64_t SysSeek(Int_t fd, Long64_t offset, Int_t whence);
        Int_t    SysStat(Int_t fd, Long_t *id, Long64_t *size, Long_t *flags, Long_t *modtime);

 -TTree::SetMaxTreeSize has a new signature:
  old:  void TTree::SetMaxTreeSize(Int_t maxsize)
  new:  void TTree::SetMaxTreeSize(Long64_t maxsize)

  All references to Seek_t have been replaced by Long64_t.

Revision 7803 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 25 18:11:57 2003 UTC (11 years, 1 month ago) by brun
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 18051 byte(s)
Diff to previous 7681
Fix warnings with unused parameter

Revision 7681 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 2 07:49:11 2003 UTC (11 years, 1 month ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 18042 byte(s)
Diff to previous 7680
add missing usage comments to methods.

Revision 7680 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 2 02:07:44 2003 UTC (11 years, 1 month ago) by brun
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 17730 byte(s)
Diff to previous 7048
New code from Bill Tanenbaum adapting TDCacheFile to the latest dcache version.

Revision 7048 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 6 21:31:24 2003 UTC (11 years, 5 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 12823 byte(s)
Diff to previous 6978
remove unused argument and other warnings exposed by the -W option.

Revision 6978 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Jul 19 00:14:15 2003 UTC (11 years, 6 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 12818 byte(s)
Diff to previous 6886
fix SysStat() where we now use fRealName and not GetName(). Should fix
Ursula's problem.

Revision 6886 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 11 09:01:34 2003 UTC (11 years, 6 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 12818 byte(s)
Diff to previous 6879
fix on string handling.

Revision 6879 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jul 10 11:19:49 2003 UTC (11 years, 6 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 12801 byte(s)
Diff to previous 6533
GetName() for dCache and Chirp files now return full url that was used
in TFile::Open(). Consistent with TRFIOFile, TNetFile and TWebFile.

Revision 6533 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 5 09:36:27 2003 UTC (11 years, 8 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 12815 byte(s)
Diff to previous 6490
fix in offset handling in case of cache usage. Use Seek() now instead
of directly updating fOffset, Seek() takes care of reseting the real file
offset pointer if needed.

Revision 6490 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 28 10:18:38 2003 UTC (11 years, 8 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 13000 byte(s)
Diff to previous 5857
fix ReOpen() problem reported by Bill Tannenbaum. We now save the real
filename that was used to open the file (in fRealName) and use that when
calling ReOpen().

Revision 5857 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jan 9 16:52:11 2003 UTC (12 years ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 12976 byte(s)
Diff to previous 5854
code cosmetics.

Revision 5854 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 7 17:31:53 2003 UTC (12 years ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 13136 byte(s)
Diff to previous 4992
small mod in option handling.

Revision 4992 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 19 11:41:41 2002 UTC (12 years, 6 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 13277 byte(s)
Diff to previous 4233
correct return value in SysSeek() in SET mode when offset is not changed.

Revision 4233 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 25 16:43:16 2002 UTC (12 years, 10 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 13264 byte(s)
Diff to previous 3795
New version of dCache interface by Grzegorz Mazur. The important changes
in this version are:

 - contents of dcap.h is no longer included int the source, path to
   dcap.h can be specified by --with-dcap-incdir during configuration,

 - catch up with some minor modifications in libdcap API,

 - improved error handling,

 - quick'n'dirty but functional support for accessing files without
   PNFS (dcap://dcachedoor...),

 - preliminary support for (not yet functional in libdcap) SSL support.

Revision 3795 - (view) (download) (as text) (annotate) - [select for diffs]
Added Sun Jan 27 17:21:22 2002 UTC (12 years, 11 months ago) by rdm
Original Path: trunk/dcache/src/TDCacheFile.cxx
File length: 10772 byte(s)
new module dcache implementing class TDCacheFile which implements a TFile
interface to the DESY dCache mass storage system. Code by Grzegorz Mazur
<mazur@mail.desy.de>. For more on dCache see http://www-dcache.desy.de/.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9