Date: Sat, 25 Apr 1998 07:15:31 +1000
Reply-To: Tim Churches <tchurch@IBM.NET>
Sender: "SAS(r) Discussion" <SAS-L@UGA.CC.UGA.EDU>
From: Tim Churches <tchurch@IBM.NET>
Subject: WinNT as SAS/CONNECT Server - sigh!
Content-Type: text/plain; charset=us-ascii
Help (or even just encouraging stories of success) appreciated from
anyone who is successfully running a SAS/CONNECT server under Windows NT
Server. Our problem is that WORK libraries are not being cleaned up when
each user's SAS/CONNECT session on the server ends.
We are using SAS V6.12 TS045 with the V7 spawner programme from the SAS
FTP site running in secure, non-scripted service mode over TCP/IP on a
machine running Win NT Server SP3. We have created a user group in the
NT domain called SASUsers. In order to ensure that users can't see each
other's WORK libraries, we have set the permissions on the work library
(i.e. a directory on an NTFS volume) specified in the config.sas using
the -WORK option to: Administrators (Full control), OWNER CREATOR (Full
Control), SASUsers (Add + Delete). This works fine - each new SAS user
session on the server creates a work subdirectory of the form #TD00pid
which only the owner of that subdirectory and admins can see or read (or
delete).
The problem is that it these subdirectories are not automatically
cleaned up by the SAS session when it finishes. This is not a problem
with permissions because it occurs even when a member of the Admins
group starts a SAS/CONNECT session on the server (i.e. signs on), the
same thing happens. However, if a user starts an interactive SAS session
on the Win NT Server console, that session's work subdirectory is
created in exactly the same place as the SAS/CONNECT session work
directories, but it **IS** cleaned up when the user ends the interactive
SAS session. This is further evidence that the problem is not due to
wrong permissions on the directory in which all the SAS work
subdirectories are being created.
Note that the problem is not with the value of the WORKTERM option - we
have tried that already.
SI has acknowledged the problem but no solution yet. Is anyone else
running SAS/CONNECT on Win NT having this problem? Any solutions or
work-arounds? One inelegant work-around would be to schedule the SAS
cleanwork utility to run at intervals to delete all SAS work directories
which are no longer associated with an active SAS session, except that
SI don't supply cleanwork with SAS for Windows. I thought of writing a
replacement for it myself, but I can't fathom how to get a list of the
PIDs of all active SAS sessions (since we don't want to delete the WORK
subdirectories for these) in either Perl or Visual Basic - seems like
an API call is required.
Without a solution, the disc on which users' work subdirectories are
created will fill up every day or so, and user's jobs will start to
crash as the amount of available disc space diminishes. Deleting work
subdirectories manually is laborious - you have to note down the PIDs of
all running SAS processes (up to 12 or 15 on our server) and then delete
all the work subdirectories (a few hundred will accumulate in a few
days) except those for the PIds you have just listed. Not something I
want to do every day! Therefore I regard this problem, in the absence of
a solution or work-around, as a serious threat to the viability of Win
NT as a SAS/CONNECT server. Assistance, similar war stories or stories
of success with Win NT much appreciated.
Tim Churches