SAS错误消息(致命错误:在MISSING拖尾生成期间检测到代码生成错误)
问题描述:
有谁知道这个错误消息的含义是什么?SAS错误消息(致命错误:在MISSING拖尾生成期间检测到代码生成错误)
致命错误:在MISSING拖尾生成期间检测到代码生成错误。
它在连接大约40个数据集时发生。我相信这可能是由于打从有太多的变数(约217)的内存限制,但将是很好的得到证实这一点...
(日志文件)
301 Data &dsn.&pfix.;
302 set &setlist.;
303 if SPCODE > 50 then delete;
304 * these SPCODES are subtotals ; run;
FATAL: Code generation error detected during MISSING smear generation.
NOTE: The SAS System stopped processing this step because of errors.
WARNING: The data set WORK.XXXXXX may be incomplete. When this step was
stopped there were 0 observations and 217 variables.
NOTE: DATA statement used (Total process time):
real time 10.58 seconds
cpu time 1.76 seconds
答
唯一的一次我见过这个错误是关于内存限制的。
证明将是子集的数据集的数量和尝试再次处理。如果您的成功达到了特定的限制,问题就会清楚。
根据您的代码,您可以遍历数据集,而不是一步处理所有数据集。这也应该避免你的记忆问题。
正如AFHood所说,这是一个记忆问题,你最好的选择就是重做问题。如果你不能重写它,那么尝试用-memsize 0选项启动SAS以允许SAS使用更多的内存(如果可用的话) – cmjohns 2009-07-13 14:14:06