This PROC SORT is producing the following error (see complete log below). I have been using this PROC successfully for several days. All of the sudden, it produces this error.
I'm using SAS University Edition w/ the Base Memory set to 5715 MB. I have over 30 GB of hard disk space. The data set has 5,220,930 observations and 32 variables.
Any clues here?
1 OPTIONS NONOTES NOSTIMER NOSOURCE NOSYNTAXCHECK;
55
56
57 PROC SORT DATA=neiss.neiss_subset_2;
58 BY year_;
59 RUN;
ERROR: No disk space is available for the write operation. Filename =
/tmp/SAS_util0001000016F4_localhost.localdomain/ut16F4000005.utl.
ERROR: Failure while attempting to write page 545 of sorted run 3.
ERROR: Failure while attempting to write page 16153 to utility file 1.
ERROR: Failure encountered while creating initial set of sorted runs.
ERROR: Failure encountered during external sort.
ERROR: Sort execution failure.
NOTE: The SAS System stopped processing this step because of errors.
NOTE: There were 5033089 observations read from the data set NEISS.NEISS_SUBSET_2.
WARNING: The data set NEISS.NEISS_SUBSET_2 may be incomplete. When this step was stopped there were 0 observations and 32
variables.
WARNING: Data set NEISS.NEISS_SUBSET_2 was not replaced because this step was stopped.
NOTE: PROCEDURE SORT used (Total process time):
real time 27.24 seconds
cpu time 17.02 seconds
60
61
62 OPTIONS NONOTES NOSTIMER NOSOURCE NOSYNTAXCHECK;
74
In case @SuryaKiran advice doen't help, check your WORK library, what other datasets are there.
Are you using SAS Studio - University Edition ?
If positive than you are limitted by the VM (virtual machine) definitions.
Otherwise, are you sharing disk space with other users ?
If positive, you might be limitted by system/SAs administarator.
What SAS platform are you using ?
@Shmuel I'm using SAS University Edition w/ the Base Memory set to 5715 MB in the VM. This procedure worked yesterday!
One solution that might work to solve this problem is to use TAGSORT. It will reduce the space needed to sort.
PROC SORT tagsort DATA=neiss.neiss_subset_2;
BY year_;
RUN;
Or try compressing the dataset
DATA A (COMPRESS = YES);
SET B;
RUN;
In case @SuryaKiran advice doen't help, check your WORK library, what other datasets are there.
@SuryaKiran tagsort worked! Thanks.
Restart your VM. I think some SAS procs are leaving things in the work space that fills it up.
5 million rows should only be 1 or 2 GB so you shouldn't have major issues but it won't be snappy by any means.
I dont recall the exact specs of VM but you set the RAM and number of cores. It sounds like you've set the RAM to 5GB and I'm assuming 1 core. You can try changing it to two cores (not more) and see if that helps but I don't think it should.
Make /folders/myfolders/ as your WORK library and add TAGSORT option: libname xx v9 '/folders/myfolders/'; options user=xx; proc sort data=have tagsort ; ......
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.