Usage Note 15379: Cross-Environment Data Access (CEDA) utilization message
Beginning in SAS® 9.1.3 Service Pack 3, the following message is produced when a data set is accessed with the Cross-Environment Data Access (CEDA) functionality of the BASE engine and the system option NOTES is set:
NOTE: Data file libref.member.DATA is in a format native to another host or the file encoding does not match the
session encoding. Cross Environment Data Access will be used, which may require additional CPU resources
and reduce performance.
Before you can remove this note, you must identify why CEDA was triggered. This information is obtained by the CONTENTS procedure where you can examine the fields entitled DATA REPRESENTATION and ENCODING. The Full Code tab shows how to place information in the log file that will report if the data representation is native or foreign. The remainder of this note provides code to convert the data representation. See Usage Note 15597 to convert encoding.
Since the data set is native to the operating environment in which it was created, one way to create a native data set is to use the DATA/SET statements. Another method is to use the COPY procedure with the NOCLONE option. Example code follows. When you first run the code to create a native file from the foreign one, the CEDA note will be issued because it is the underlying technology used to convert the file. Further processing of the file should not trigger the CEDA note. If the CEDA note remains, then check the encoding attribute, which also triggers CEDA processing when it is incompatible with the session encoding. The example code below shows how to use a DATA step with a SET statement to create a native file that does not require CEDA processing:
libname in 'path_old_directory';
libname out 'path_new_directory';
data out.data-set-name;
set in.data-set-name;
run;
The example code below shows how to use PROC COPY to create a native file that does not require CEDA processing:
libname in 'path_old_directory';
libname out 'path_new_directory';
proc copy in=in out=out noclone memtype=data;
select data-set-name;
run;
If you want to convert an entire SAS data library, omit the SELECT statement. If you want to delete the non-native file from the source library, use the MOVE option in the PROC COPY statement.
Operating System and Release Information
SAS System | Base SAS | Microsoft Windows XP Professional | 9.1 TS1M3 SP3 | |
Microsoft Windows NT Workstation | 9.1 TS1M3 SP3 | |
Microsoft® Windows® for 64-Bit Itanium-based Systems | 9.1 TS1M3 SP3 | |
Microsoft Windows XP 64-bit Edition | 9.1 TS1M3 SP3 | |
Microsoft Windows Server 2003 Enterprise Edition | 9.1 TS1M3 SP3 | |
Microsoft Windows Server 2003 Datacenter Edition | 9.1 TS1M3 SP3 | |
Microsoft Windows Server 2003 Standard Edition | 9.1 TS1M3 SP3 | |
Microsoft Windows 2000 Professional | 9.1 TS1M3 SP3 | |
Microsoft Windows 2000 Server | 9.1 TS1M3 SP3 | |
z/OS | 9.1 TS1M3 SP3 | |
64-bit Enabled Solaris | 9.1 TS1M3 SP3 | |
Microsoft Windows 2000 Advanced Server | 9.1 TS1M3 SP3 | |
Microsoft Windows 2000 Datacenter Server | 9.1 TS1M3 SP3 | |
64-bit Enabled AIX | 9.1 TS1M3 SP3 | |
OpenVMS Alpha | 9.1 TS1M3 SP3 | |
64-bit Enabled HP-UX | 9.1 TS1M3 SP3 | |
HP-UX IPF | 9.1 TS1M3 SP3 | |
Linux on Itanium | 9.1 TS1M3 SP3 | |
Linux | 9.1 TS1M3 SP3 | |
Tru64 UNIX | 9.1 TS1M3 SP3 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
The following code shows how to place information in the log file that will report if the data representation is native or foreign. The macro variables SYSSCP and SYSSCPL resolve to an abbreviation of the name of your operating environment. In some cases, SYSSCPL provides a more specific value than SYSSCP. Use your libref and data set name for DSN=.
%let dsn=libref.data-set-name;
%let dsid=%sysfunc(open(&dsn,i));
%let datarep= %sysfunc(attrc(&dsid,datarep)).;
%let rc=%sysfunc(close(&dsid));
%put The data representation for data set &dsn is: &datarep.;
%put The operating system running SAS is: &SYSSCP., specifically &SYSSCPL.;
This note contains instructions for how to convert a data set from foreign to native format to avoid the use of CEDA when the data set was created in a different operating environment.
Type: | Usage Note |
Priority: | |
Topic: | Data Management ==> Access ==> SAS I/O
|
Date Modified: | 2021-08-09 15:05:12 |
Date Created: | 2005-05-26 10:48:11 |