Oplock problems under high load

Alexander Dubinin alex at inn.intel.com
Tue Jan 15 03:20:25 GMT 2002


Hello, all.

I'm using Samba 2.2.2 at my FreeBSD 4.4-STABLE server, and have next 
problems:

There is pool of W2K machines, each starting compilation job (usually 2 
at one dual CPU machine).
Then these jobs trying to simultaneously access sources, located at 
Samba server, appear problems.
Then I running 2 compilation threads from single machine - there is no 
problems.

For jobs error seems like "access denied" to file, it tries to open as 
_read_only_!!!

I tried different settings - turn on/off next settings:
blocking locks, level2 oplocks, strict locking, etc.
Nothing help.
I tried different way to use shares - map drive, use UNC path - in last 
case, samba died at all...
Can someone help?

Logs and configuration files included below:

For samba it looks like oplock logic error:
- Cut: smb.log -
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
[2002/01/15 13:03:24, 0] locking/locking.c:delete_fn(253)
  locking : delete_fn. LOGIC ERROR ! Entry for pid 47266 and it no 
longer exists !
- Cut -
In client log:
- Cut nnsnbgarcon.log -
  nnsnbgarcon103 (10.125.20.52) connect to service Scratch as user 
vkorobyc (uid=10132, gid=10001) (pid 42437)
[2002/01/15 12:51:51, 0] smbd/oplock.c:oplock_break(786)
  oplock_break: receive_smb timed out after 30 seconds.
  oplock_break failed for file IPP/_ipp_/_studio/make/win32/pwd.pl (dev 
= 20d04, inode = 4348986).
[2002/01/15 12:51:51, 0] smbd/oplock.c:oplock_break(859)
  oplock_break: client failure in oplock break in file 
IPP/_ipp_/_studio/make/win32/pwd.pl
[2002/01/15 12:51:51, 0] smbd/reply.c:reply_lockingX(4413)
  reply_lockingX: Error : oplock break from client for fnum = 12144 and 
no oplock granted on this file (IPP/_ipp_/_studio/make/win32/pwd.pl).
[2002/01/15 12:52:27, 0] smbd/oplock.c:request_oplock_break(1026)
  request_oplock_break: no response received to oplock break request to 
pid 42432 on port 24906 for dev = 20d04, in node = 4348978
  for dev = 20d04, inode = 4348978, tv_sec = 3c43fbbb, tv_usec = 95924
[2002/01/15 12:52:27, 0] smbd/open.c:open_mode_check(555)
  open_mode_check: exlusive oplock left by process 42432 after break ! 
For file IPP/_ipp_/_studio/make/win32/defines, dev = 20d04, inode = 
4348978. Deleting it to continue...
[2002/01/15 12:52:27, 0] lib/util.c:smb_panic(1055)
  PANIC: open_mode_check: Existant process 42432 left active oplock.
- Cut -

Or, sometime, these errors:
- Cut smb.log -
  yield_connection: tdb_delete for name  failed with error Record does 
not exist.
[2002/01/15 11:44:38, 0] smbd/connection.c:yield_connection(63)
  yield_connection: tdb_delete for name  failed with error Record does 
not exist.
[2002/01/15 11:45:09, 0] smbd/connection.c:yield_connection(63)
  yield_connection: tdb_delete for name  failed with error Record does 
not exist.
[2002/01/15 11:45:09, 0] smbd/connection.c:yield_connection(63)
  yield_connection: tdb_delete for name  failed with error Record does 
not exist.
- Cut -

And in user log:
- Cut nnsnbgarcon.log -

[2002/01/15 11:44:38, 0] smbd/connection.c:yield_connection(63)
[2002/01/15 12:47:34, 0] tdb/tdbutil.c:tdb_log(342)
  tdb(/var/lock/sessionid.tdb): tdb_oob len 1650750546 beyond eof at 24576
[2002/01/15 12:47:34, 0] tdb/tdbutil.c:tdb_log(342)
  tdb(/var/lock/sessionid.tdb): tdb_oob len 808465011 beyond eof at 24576
[2002/01/15 12:47:34, 0] tdb/tdbutil.c:tdb_log(342)
  tdb(/var/lock/sessionid.tdb): tdb_oob len 694314124 beyond eof at 24576
[2002/01/15 12:47:34, 0] tdb/tdbutil.c:tdb_log(342)
  tdb(/var/lock/sessionid.tdb): tdb_oob len 808465011 beyond eof at 24576
- Cut -

My global config:

- Cut -
[global]
	client code page = 866
	workgroup = MYDOM
	netbios name = NFS002
	server string = Samba 2.2.2 server
	security = DOMAIN
	encrypt passwords = Yes
	password server = DC001, DC002
	username level = 2
	lanman auth = No
	log level = 1
	log file = /var/log/samba/%m.log
	large readwrite = Yes
	deadtime = 90
	load printers = No
	show add printer wizard = No
	character set = KOI8-R
	os level = 0
	lm announce = False
	preferred master = False
	local master = No
	domain master = False
	wins server = 10.125.16.20
	guest account = ftp
	create mask = 0664
	directory mask = 01775
	directory security mask = 01777
- Cut -

For share:

- Cut -
[Projects]
	comment = Projects data
	path = /nfs/projects
	read only = No
	inherit permissions = Yes
	strict allocate = Yes
	write cache size = 262144
	hide files = quota.*
- Cut -

Regards!
  Alexander Dubinin






More information about the samba mailing list