[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: TDS Questions
- Subject: Re: TDS Questions
- Date: Fri, 13 May 2011 12:29:20 -0400
Hi Estanislao :
On 5/11/2011 2:25 PM, Estanislao Gonzalez wrote:
Hi John,
as we've already spoken I'll try to summarize here the questions:
1) To minimize the memory footprint of the TDS, is it possible to
limit the cache amount used for storing catalogs in memory? Is that
configurable somehow?
not currently but i will add asap.
2) Is it possible to move the catalog to a DB? directly (read from DB)
or indirectly (read from Catalog but saved into DB for intermediate
caching)?
we dont want the overhead of administering a DB, and it wouldnt add any
functionality in this case i think, do you?.
3) I'll have to describe the problem here a little as I can't think
about the proper question:
I've developed a stager for staging files served by the TDS that are
on tape, or actually in any remote repo
(http://esgf.org/esgf-stager-site/ - this is part of esgf, BSD; I
promise to write a proper documentation but the code is pretty much
well documented, go to the repo link).
The stager sits on a tomcat filter that is configured to catch some
urls and map them into the expected location of the file in the file
system. Using the user-agent attribute in the http head its decided if
the stager goes into interactive (user is redirected to a waiting
page) or non-interactive mode (call blocks, in the worst case client
will time out, but a new call doesn't trigger the retrieval again).
For this to work the stager recreates the complete directory structure
as stored on the remote server (e.g. tape library), in this way, for
example, the OpenDAP will find the file where it should be.
The problem happens when the file is buried into a directory structure
that wasn't there before. If only the file is retrieved, i.e. the
directory structure is already in the cache area, the application
works perfectly. However if a directory structure is being generated
the TDS answers with a 404. Restarting the TDS shows the file is there
and can be accessed properly.
You were right and the modification timestamp of the directory is
being updated *iff* something in it gets changed. *However* this is
not the case for sub-directories.
So, if I have:
root/dir1
and the stager downloads dir2/file1 to root/dir1
(root/dir1/dir2/file1) the file stamp of the root doesn't change, only
that of dir1 does. So this might be the problem.
.. I'm missing the question so: is that so? :-)
if the directory.lastModified() date doesnt change when a subdirectory
changes, then my caching assumptions are wrong and i need to fix it.
what OS have you tested this behavior on?
Thanks,
Estani