Print

Print


Hi Andy,
> I was wondering if there was a way to structure this so that a thread 
> is run to destroy the file object only if a file cache is being used. 
> I'd rather not add the thread overhead to things like fuse and a 
> non-caching proxy server. As for reusung a worker thread, while a good 
> idea, we really don't have access to them. Something to think about. 
> I'll see how difficult it would be. In any case, even if I could 
> provide access to the thread pool, there won't be one if the posix 
> interface is being used outside of xrootd, so the code would have to 
> have two paths in any case.
>
How about adding a new virtual XrdOucCacheIO function that checks if 
destruction of XrdPosixFile needs to be delayed (e.g. InitiateClose(), 
RequiresDelayedClose(), TryClose() ...)? The return value of this 
function determines if a new thread is needed to run the real Close(). 
In this function I will prevent issuing any new read requests so it has 
to be guaranteed that the real Close() is called immediately after that.

Alja

> On Fri, 21 Mar 2014, Alja Mrak-Tadel wrote:
>
>> Hi Andy,
>>
>> I had to move destruction of XrdPosixFile into separate task to avoid 
>> long lock in XrdOfsHandle::Alloc() and XrdOfsHandle::Retire(). This 
>> is the change which fixed the problem:
>>  https://github.com/alja/xrootd/compare/pd
>> You might want to reuse existing worker threads instead. One of the 
>> XrdClFile::Close() calls is also removed.
>>
>> We also made improvements in XrdFileCache module. We need a day or 
>> two to close up changes and test them.
>>
>> Alja
>>
>>
>>
>> On 03/20/14 13:33, Andrew Hanushevsky wrote:
>>> Hi Matevz,
>>>
>>> Hmmmm, ok you need to give me specific details on what you want done.
>>>
>>> Andy
>>>
>>> On Thu, 20 Mar 2014, Matevz Tadel wrote:
>>>
>>>> Hi,
>>>>
>>>> Alja and I would like to push in some changes for the XrdFileCache. We
>>>> have our own workaround for destruction of XrdPosixFile /
>>>> XrdOucCacheIO in a special thread  ... Andy will probably want to
>>>> implement this for us so he stays on top of things.
>>>>
>>>> We should be good to go early next week.
>>>>
>>>> Cheers,
>>>> Matevz
>>>>
>>>>
>>>> On 03/20/14 10:04, Lukasz Janyst wrote:
>>>>> Hello everyone,
>>>>>
>>>>>     I have done all the coding that was on my list. I have two items
>>>>> left:
>>>>>
>>>>> 1) packaging - in the process of being done - consulting with 
>>>>> Mattias to
>>>>> integrate with EPEL. I have some draft specfiles, but probably need
>>>>> two or three
>>>>> more iterations.
>>>>>
>>>>> 2) the server is broken when compiled in C++11 mode. It didn't seem
>>>>> to respond
>>>>> when I tested it three months ago, so perhaps the issue is fixed now,
>>>>> needs
>>>>> testing. Andy, can you please check whether this is still the case?
>>>>> You can use
>>>>> my testing cluster.
>>>>>
>>>>> Cheers,
>>>>>     Lukasz
>>>>>
>>>>> ######################################################################## 
>>>>>
>>>>> Use REPLY-ALL to reply to list
>>>>>
>>>>> To unsubscribe from the XROOTD-DEV list, click the following link:
>>>>> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A
>>>>
>>>> ######################################################################## 
>>>>
>>>> Use REPLY-ALL to reply to list
>>>>
>>>> To unsubscribe from the XROOTD-DEV list, click the following link:
>>>> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1
>>>>
>>>
>>> ######################################################################## 
>>>
>>> Use REPLY-ALL to reply to list
>>>
>>> To unsubscribe from the XROOTD-DEV list, click the following link:
>>> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1
>>
>> ########################################################################
>> Use REPLY-ALL to reply to list
>>
>> To unsubscribe from the XROOTD-DEV list, click the following link:
>> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1
>>
>
> ########################################################################
> Use REPLY-ALL to reply to list
>
> To unsubscribe from the XROOTD-DEV list, click the following link:
> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1