Home > Enterprise >  SSIS-job that executes SAS-scripts suddenly stopped working (but appears to run successfully)
SSIS-job that executes SAS-scripts suddenly stopped working (but appears to run successfully)

Time:09-16

We have a daily SSIS-job that runs in 3 SQL Server environments. The job runs an SSIS-project that executes multiple SAS-scripts (stored on a SAS-server per SSIS-environment).

There's never been any problems with this SSIS-project, until now. Although the SSIS-jobs appears to run well and appears to execute the SAS-scripts (they complete with successful status), the scripts don't actually get executed (on any of the SAS-servers).

According to the Execution Log in SSMS, each SAS-script is successfully executed. However it says that each script finished in under 1 second (a successful execution normally takes many minutes). And on the SAS-server side we don't find any trace of the scripts having been run (no log files are generated). SSMS log example

The SAS-scripts were successfully executed on Monday (and each day before that, for multiple years). We haven't changed the SSIS-project or the SAS-scripts in any way since then. And there apparently haven't been any changes to our infrastructure, network, drivers, etc. Not for SAS, nor for SQL Server. At least not according to anyone we've been in touch with so far...

It appears as though SSIS thinks it's communicating with SAS, while SAS ignores SSIS. And there's no errors or warnings.

If I try to execute a SAS-script manually by running an individual SSIS-package, the same thing happens: It appears to run well, but doesn't actually execute the SAS-program.

The SAS-scripts are stored on a SAS-server, and run via Execute Process tasks in SSIS-packages. The arguments use the following script (unchanged for 3 years):

 #!/bin/sh
 dtstamp=$(date  %Y%m%d_%H.%M.%S)
 sas_dir=/opt/sas94/$1/sashome/SASFoundation/9.4
 script_dir="/data/DVHANALYSE/scripts/projects/monaco/current/sas_code"
 log_dir="/data/DVHANALYSE/scripts/logs/monaco"
    
 suff=".sas"
 echo "This is running Monaco $2"
    
 echo "env: $1" >> $log_dir/plink.log
 echo "pgm: $2" >> $log_dir/plink.log
    
 pgmname=$2
 logname=${pgmname%"$suff"}"_$dtstamp.log"
    
 #
 $sas_dir/sas $script_dir/$pgmname -log $log_dir/$logname
 #exit 0

Do you have any suggestions on how to troubleshoot this?

EDIT: I've enabled full logging on one of the SSIS-packages and executed it. As you can see on row 19, the process simply exits now: SSIS Logging

CodePudding user response:

Best guess is that the SAS license is expired.

CodePudding user response:

This solved the problem:

  • We switched to SHA256-hostkeys (for communication between SSIS & SAS).

  • The Microsoft server (which was running putty/plink v.0.70) was upgraded to v.0.75 (which supports SHA256).

  • Related