[EMAIL PROTECTED] пишет:
------------------------------------------------------------
revno: 692
revision-id:[EMAIL PROTECTED]
parent: [EMAIL PROTECTED]
committer: Andrew Tridgell <[EMAIL PROTECTED]>
branch nick: s3-ctdb-tridge
timestamp: Mon 2008-01-21 23:24:50 +1100
message:
dmapi got into a state on a test cluster where dm_get_dmattr returned
-1/EINVAL but it was impossible to delete the stale session, and the
session still showed up in dm_getall_sessions(). This patch copes
with that by changing to a new session name when the error occurs.
Is this a GPFS bug?
As we have about 4000 DMAPI handles limit in GPFS what do you plan to do
with limiting DMAPI exhaustion from Samba side? Currently session_num is
growing unbound and if all sessions are used up and inaccessible like in
case above the loop below will be indefinite:
+again:
ret = dm_get_dmattr(*sessionp, dmhandle, dmhandle_len,
- DM_NO_TOKEN, &dmname, 0, NULL, &rlen);
+ DM_NO_TOKEN, &dmname, sizeof(buf), buf, &rlen);
+
+ if (ret == -1 && errno == EINVAL) {
+ DEBUG(0,("Stale DMAPI session - recreating\n"));
+ if (dmapi_new_session()) {
+ sessionp = dmapi_get_current_session();
+ goto again;
+ }
+ }
Wouldn't we need to do something with it in this case?
--
/ Alexander Bokovoy
Samba Team http://www.samba.org/
ALT Linux Team http://www.altlinux.org/
Midgard Project Ry http://www.midgard-project.org/