[Samba] strang locking behaviour with macosx clients

James Peach jorgar at gmail.com
Tue Sep 30 17:43:13 GMT 2008


2008/9/30 Holger Hegmanns <hlx at jungle-world.com>:
> On Mon, Sep 29, 2008 at 08:45:40PM -0700, James Peach wrote:
>> 2008/9/29 Holger Hegmanns <hlx at jungle-world.com>:
>> > The only debug information I have is the output of smbstatus. The column
>> > "DenyMode" looks totally different if a mac or a windows client opens
>> > the same file.
>> >
>> > A *windows* client opens a file:
>> > [...]
>> > Locked files:
>> > Pid          Uid        DenyMode   Access      R/W        Oplock
>> >   SharePath   Name   Time
>> > --------------------------------------------------------------------------------------------------
>> > 19919        501        DENY_ALL   0x2019f     RDWR
>> > EXCLUSIVE+BATCH  /data0/prod   ~test~0kjyv(.idlk   Tue Sep 30 00:50:24 2008
>> > 19919        501        DENY_WRITE 0x20089     RDONLY
>> > EXCLUSIVE+BATCH  /data0/prod   test.indd   Tue Sep 30 00:50:24 2008
>> >
>> > A *mac* client opens a file:
>> > [...]
>> > Locked files:
>> > Pid          Uid        DenyMode   Access      R/W        Oplock
>> >   SharePath   Name   Time
>> > --------------------------------------------------------------------------------------------------
>> > 19564        501        DENY_NONE  0x20007     RDWR       NONE
>> >   /data0/prod   ~test~0kjyv(.idlk   Tue Sep 30 00:51:43 2008
>> > 19564        501        DENY_NONE  0x20001     RDONLY     NONE
>> >   /data0/prod   test.indd   Tue Sep 30 00:51:43 2008
>> >
>> > Believe it or not, but generally windows denies the opening of a file
>> > that is already opened on a mac.
>>
>> It's the client's choice which kind of deny mode to use. If the OS X
>> application is happy to use DENY_NONE, then presumably that's correct
>> for that usage. There's no bug here and nothing you can do on the
>> server to alter this behaviour.
>
> Thanks for your help, James. But who is responsible for the lock of this
> file? The application (Indesign by the example above)? Only with the
> existence of the .idlk file?

The application is 100% responsible for locking. There's nothing in
the protocol or the server that can override the application's choice
of locking strategy.

> Isn't it horrible?

I guess that depends on your point of view :)

> What's about that scenario:
> The Mac opens the file and it takes some time to create the .idlk file.
> Than there is no "lock" at all, not even an application based.

If InDesign doesn't take a lock, then there's no lock.

-- 
James Peach | jorgar at gmail.com


More information about the samba mailing list