The Alert Generation Process (AGP) in SAS® Anti-Money Laundering might fail and report access violation errors.
For example, the SAS® Visual Scenario Designer log reports an error similar to the following:
2025-05-16 15:04:34.688 ERROR 2798310 --- [lTaskExecutor-4] com.sas.svi.commons.cas.CASSession : [69f6b2836d3aef82] CAS: aggregate: An access violation prevents progress of the analysis.
com.sas.cas.CASException: An access violation prevents progress of the analysis. (severity=2 reason=0 statusCode=3820028)
5 ERROR: An access violation prevents progress of the analysis.
5 ERROR: An access violation prevents progress of the analysis.
5 ERROR: The action stopped due to errors.
A behavioral change was introduced in the Aggregate action to report only the last contributing ID when you select the agg=LAST method. This optimization allowed the program to maintain a minimal contribute buffer, as the program needed to store only a single contributing ID.
However, a bug emerged when writing the results to a SAS Cloud Analytic Services table. The Write function incorrectly assumed that the buffer was large enough to hold all the contributing factors. As a result, it attempted to read from unallocated memory, leading to an access violation error in sufficiently large cases.
The fix for this issue involved aligning the buffer size variable with the actual memory allocation, ensuring that the buffer size variable accurately reflected the required size.