[cifs-protocol] Excel timestamp client side-caching request

Hongwei Sun hongweis at microsoft.com
Fri Aug 28 17:22:44 MDT 2009


Jeremy,

   Just want to check with you to see if the information is helpful for you to identify the problem. If you need any more information or help from our side, please let us know.

Thanks!

Hongwei 

-----Original Message-----
From: Jeremy Allison [mailto:jra at samba.org] 
Sent: Friday, August 21, 2009 6:29 PM
To: Hongwei Sun
Cc: Jeremy Allison; pfif at tridgell.net; cifs-protocol at samba.org; Edgar Olougouna; Nick Meier
Subject: Re: Excel timestamp client side-caching request

On Fri, Aug 21, 2009 at 11:25:57PM +0000, Hongwei Sun wrote:
> Jeremy,
>
>
>
>     After much of testing and debugging, it seems that we are getting the cause
> why Windows takes the file offline and the timestamp update only goes to local
> store.   When Windows close one particular handle through which the file had
> been modified, it queries the timestamps using FIND_FIRST2 on the file after
> receiving the close response. Those timestamps are then saved in CSC cache.
>  We can see that the LastWriteTime value returned from the create response does
> not match the value returned from FIND_FRIST2 query.  The mismatch of
> LastWriteTime  causes Windows to declare the version conflict between server
> copy and local cache and thus takes it offline.
>
>
>
>    Here are the details shown in the traces you sent us..
>
>
>
>    Office2003-opnclose-samba-bad.cap:
>
>
>
>       Opening file,  the current time stamp is written to the excel file
>
>
>
>             Frame 175   10.20.0.111 10.20.0.66  SMB   Trans2 Response,
> FIND_FIRST2, Files: excel test.xls  Last Write: Jul  8, 2009 15:10:06.000000000
>
>             Frame 185   10.20.0.111 10.20.0.66  SMB   NT Create AndX Response,
> FID: 0x13ff                 Last Write: Jul  8, 2009 15:10:06.000000000
>
>             Frame 214   10.20.0.66  10.20.0.111 SMB   Trans2 Request,
> SET_FILE_INFO, FID: 0x13ff
>
>
>
>       So far so good..
>
>
>
>       Closing file,  the original time stamp is supposed to be restored to the
> excel file
>
>
>
>             Frame 574   10.20.0.111 10.20.0.66  SMB   Trans2 Response,
> FIND_FIRST2, Files: excel test.xls  Last Write: Jul  8, 2009 19:36:12.294000000
>
>             Frame 587   10.20.0.111 10.20.0.66  SMB   NT Create AndX Response,
> FID: 0x103e                 Last Write: Jul  8, 2009 19:36:12.000000000
>
>
>
>       Mismatch of time stamp is detected and remote file is closed and it is
> going offline.  SET_FILEINFO will not sent to the server any update will
> only goes to local copy.
>
>
>
>             Frame 588   10.20.0.66  10.20.0.111 SMB   Close Request, FID:
> 0x103e
>
>
>
>     From all the failed cases I got, I can see that only the millisecond part
> is different.
>
>
>
>     You may look at the difference between logics of those two commands
> regarding LastWriteTime.  Please let me know what you think and, if necessary,
> we can continue working together to debug the problem.

Fantastic analysis ! Thanks. I'll get onto this immediately.

Thanks,

Jeremy.



More information about the cifs-protocol mailing list