Problem Note 45674: DS2 activities for SAS® Real-Time Decision Manager experience memory leaks when method variables are used to hold package instances
DS2 activities for SAS® Real-Time Decision Manager have two different types of variables that can hold package instances: package variables and method variables. If you use method variables to hold package instances, there is a four-byte memory leak each time the method for your activity is called. This memory leak can cause deteriorating performance, and, eventually, a failure to complete activities.
In order to prevent the memory leak, use only package variables to hold package instances in your DS2 activity code, as in this example:
Incorrect:
package SAS_Activity_Tests /overwrite=yes sas_encrypt=yes;
method echo_array(varchar(32767) in_array, in_out varchar out_array);
declare package tap_array my_array();
my_array.decode(in_array);
out_array = my_array.encode();
end;
endpackage;
Correct:
package SAS_Activity_Tests /overwrite=yes sas_encrypt=yes;
declare package tap_array my_array();
method echo_array(varchar(32767) in_array, in_out varchar out_array);
my_array.decode(in_array);
out_array = my_array.encode();
end;
endpackage;
Click the Hot Fix tab in this note to access the hot fix for this issue.
Note that applying the hot fix changes the method signatures for tap_array and tap_table. The hot fix also adds a new tap_array method, decode. These changes to tap_array and tap_table can cause errors in your previously functioning activity code.
Operating System and Release Information
SAS System | SAS Real-Time Decision Manager | Microsoft® Windows® for x64 | 5.4_M1 | 6.1 | | 9.2 TS2M0 |
64-bit Enabled AIX | 5.4_M1 | 6.1 | | 9.2 TS2M0 |
64-bit Enabled Solaris | 5.4_M1 | 6.1 | | 9.2 TS2M0 |
HP-UX IPF | 5.4_M1 | 6.1 | | 9.2 TS2M0 |
Linux for x64 | 5.4_M1 | 6.1 | | 9.2 TS2M0 |
Solaris for x64 | 5.4_M1 | 6.1 | | 9.2 TS2M0 |
*
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.
Type: | Problem Note |
Priority: | alert |
Date Modified: | 2012-06-13 09:02:13 |
Date Created: | 2012-02-15 09:53:05 |