Martin Zielinski wrote:
Bruno Gomes Pessanha wrote:
I'm having the same problem... but with a 520 print queues samba
server and
20.000 AD users.
I'm getting desperate! I did a lot of tuning changes..... but nothing
helps!
Bruno
[...]
If i remember correctly, the original description of the problem has
been, that the number of smbd proccess is growing until this breaks
the whole system (correct me, if I'm wrong).
Actually it does not break the whole system. Only Samba is broken. All
other services continue running on the server and work fine, but samba
just hangs and connections that were already made stop working, and all
new connections are denied. Please review bug #3636 that I submitted
yesterday.
If more information is needed I'll provide it, but for now I'm waiting
for it to crash again to get an strace on one of the processes and more
debug at level 10.
Thanks
Matt Lung
In your case the reason might be that clients leave *one* spoolss-pipe
open, after they have opened (and closed) a connection to a printer.
The deadtime parameter is not working, because of this one open
connection.
BTW, this is diffrent to connections with admin rights.
To fix this, I add the following lines to smbd/conn.c:
---- start code
for (conn=Connections;conn;conn=next) {
next=conn->next;
/* close dirptrs on connections that are idle */
if ((t-conn->lastused) > DPTR_IDLE_TIMEOUT)
dptr_idlecnum(conn);
+ /* force the closure, even if one spoolss is open */
+ if (conn->num_files_open == 1 && (t-conn->lastused)>=deadtime) {
+ for (plist = get_first_internal_pipe(); plist;
+ plist = get_next_internal_pipe(plist)) {
+ if (plist->name && !strcmp (plist->name, "spoolss")) {
+ DEBUG(2,("Client holds one spoolss connection.
Deadtime reached. Closing last pipe\n"));
+ pipe_close_conn (conn);
+ break;
+ }
+ }
+ }
+
if (conn->num_files_open > 0 ||
(t-conn->lastused)<deadtime)
allidle = False;
}
---- end code
If the description meets your existing problem, this might help.
(There was an earlier discussion with Gerald Carter about this topic -
this might be his code or merged with mine - I don't remember excactly)
Bye,
Martin
--
---
Bruno Gomes Pessanha
LPI Brasil
--
Matt Lung
Midwest Tool & Die, Corp.
--
To unsubscribe from this list go to the following URL and read the
instructions: https://lists.samba.org/mailman/listinfo/samba