Print

Print


Hi Andy and Wilko,

Thanks for the clarification.  I wasn't sure if the kXR_wait was an 
indication of an error condition or was normal.


Patrick

Andrew Hanushevsky wrote:
> Hi Patrick,
> 
> By default, the redirector asks the client to wait 5 second when it 
> encounters a file it has never seen before. The reason is to give 
> sufficient time for all the data servers to indicate whether they 
> already have the file. This is a standard tactic in a large distributed 
> cluster where there is no single point of control. Can we do better? 
> Perhaps, we can give the option of allowing a client saying "I don't 
> care" give me a destination server right away.
> 
> Now, the easier way to get around this philisophical problem is to issue 
> a "prepare" request for all the files you want to load. This request 
> happens in parallel and then when you really want to load the files, the 
> redirector knows what is there and what is not. In practice, it means 
> you suffer the 5 seconds delay only once.
> 
> The only thing I can say is that xrootd does not behave as a standard 
> filesystem (which most people are used to). On the other hand, because 
> it does not, it can give you much better performance in the standard 
> case (i.e., sub-millisecond response time for existent file opens).
> 
> Andy
> 
> On Sat, 8 Dec 2007, Patrick McGuigan wrote:
> 
>> I have a basic system working with one client, seven dataservers, and 
>> a redirector.  The client can store correctly but I am observing a 
>> consistent five second delay when the client is storing data.
>>
>> I ran xrdcp with -d 3 and the output contains :
>>
>> 071207 23:03:40 001 Xrd: DoLogin: No prev session info for 
>> 10.1.2.255:1094
>> 071207 23:03:40 001 Xrd: Open: Access to server granted.
>> 071207 23:03:40 001 Xrd: Open: Opening the remote file /xrd/test24/100mb
>> 071207 23:03:40 001 Xrd: Open: File open in progress.
>> 071207 23:03:40 18805 Xrd: XrdClientMessage::ReadRaw: Reading header 
>> (8 bytes).
>> 071207 23:03:40 18805 Xrd: ReadRaw: Reading from 10.1.2.255:1094
>> 071207 23:03:40 18805 Xrd: SendGenCommand: Sending command Open
>> 071207 23:03:40 18805 Xrd: WriteRaw: Writing 24 bytes to physical 
>> connection
>> 071207 23:03:40 18805 Xrd: WriteRaw: Writing to substreamid 0
>> 071207 23:03:40 18805 Xrd: WriteRaw: Writing 17 bytes to physical 
>> connection
>> 071207 23:03:40 18805 Xrd: WriteRaw: Writing to substreamid 0
>> 071207 23:03:40 18805 Xrd: ReadPartialAnswer: Reading a 
>> XrdClientMessage from the server [10.1.2.255:1094]...
>> 071207 23:03:40 18805 Xrd: XrdClientMessage::ReadRaw:  sid: 1, IsAttn: 
>> 0, substreamid: 0
>> 071207 23:03:40 18805 Xrd: XrdClientMessage::ReadRaw: Reading data (4 
>> bytes) from substream 0
>> 071207 23:03:40 18805 Xrd: ReadRaw: Reading from 10.1.2.255:1094
>> 071207 23:03:40 18805 Xrd: BuildMessage:  posting id 1
>> 071207 23:03:40 18805 Xrd: XrdClientMessage::ReadRaw: Reading header 
>> (8 bytes).
>> 071207 23:03:40 18805 Xrd: ReadRaw: Reading from 10.1.2.255:1094
>> 071207 23:03:40 18805 Xrd: ReadPartialAnswer: Server [10.1.2.255:1094] 
>> answered [kXR_wait] (4005)
>> 071207 23:03:40 18805 Xrd: CheckErrorStatus: Server [10.1.2.255:1094] 
>> requested 5 seconds of wait
>> 071207 23:03:42 18805 Xrd: DumpPhyConn: Phyconn entry, 
>> [log in to unmask]:1094', LogCnt=1 Valid
>> 071207 23:03:44 18805 Xrd: DumpPhyConn: Phyconn entry, 
>> [log in to unmask]:1094', LogCnt=1 Valid
>> 071207 23:03:45 18805 Xrd: SendGenCommand: Sending command Open
>>
>>
>>
>> It appears that the client received a 5 second delay from the 
>> redirector.  I don't seen any useful information in the olbd log of 
>> the redirector and the xrootd log only indicates that the client was 
>> asked to wait:
>>
>> 071207 22:54:24 15092 odc_send2Man: root.18805:16@compute-0-0 asked to 
>> wait 5 by xrdb path=/xrd/test24/100mb
>>
>>
>> How do I determine why the redirector is sending xXR_wait?
>>
>> Is the result of my configuration defaulting to round robin scheduling?
>>
>>
>> Thanks,
>>
>> Patrick
>>
>>
>>
>>
>>
>>
>>