Samba 3.0.1 on Solaris, Slowness, Clearcase
This is somewhat long -- sorry:
I recently upgraded Samba on our Solaris 8 servers to 3.0.1 and
changed authentication from security=server to security=domain.
We are now seeing a major slowness in authentication and file access.
Seems to be the worst upon initial connection. Our software engineers
are using Clearcase and at times Clearcase checkins will fail because
authentication is taking too long. I have oplocks turned off (as well
as level2 oplocks).
Here are some things I'm seeing, and I'm not sure if all are related
1. We initially get log files of the type log.<ip address>, i.e.
log.188.8.131.52. After initial setup, it then closes this file
and creates logs of the type log.<hostname>. Is this typical
behavior for domain authentication?
2. Error messages:
[2004/01/03 10:49:26, 0] lib/util_sock.c:set_socket_options(160)
Failed to set socket option SO_KEEPALIVE (Error Invalid argument)
I noticed that SO_KEEPALIVE is compiled by default into Samba, and on
Solaris it is on by default. The value of tcp_keepalive_interval is
7200000. I can change this value, but don't want to mess with it unless
I'm really sure of what I'm doing. Why the invalid argument error?
Next one is this:
[2004/01/10 00:06:12, 0] locking/posix.c:posix_fcntl_lock(657)
posix_fcntl_lock: WARNING: lock request at offset 0, length
[2004/01/10 00:06:12, 0] locking/posix.c:posix_fcntl_lock(658)
an Invalid argument error. This can happen when using 64 bit lock
[2004/01/10 00:06:12, 0] locking/posix.c:posix_fcntl_lock(659)
on 32 bit NFS mounted file systems.
[2004/01/10 00:06:12, 0] locking/posix.c:posix_fcntl_lock(673)
Count greater than 31 bits - retrying with 31 bit truncated length.
This was worse before I turned oplocks off. I am not sharing out any
NFS file systems. I thought Samba assumes 32 bit lock offsets on unix,
even when compiled on a 64 bit machine.
And finally, here is the last:
[2004/01/12 09:54:48, 0] lib/util_sock.c:set_socket_options(160)
Failed to set socket option TCP_NODELAY (Error Invalid argument)
[2004/01/12 09:54:48, 0] lib/util_sock.c:get_peer_addr(948)
getpeername failed. Error was Transport endpoint is not connected
[2004/01/12 10:16:45, 0] smbd/server.c:open_sockets_smbd(377)
open_sockets_smbd: accept: Software caused connection abort
Any help with this would be appreciated. I am not sure if the above errors
are part of the problem or if I just need to do some tuning either with
smb.conf or Solaris.