@@ -16,33 +16,33 @@ Logging macro calls via a call to a procedure that does DML in an autonomous tra
1616## Example (bad)
1717
1818``` sql
19- create or replace function row_generator (
20- in_num_rows in number
21- )
22- return varchar2 sql_macro as
23- begin
24- insert into function_calls(name,called_at,parameter_value)
25- values ($$plsql_unit,current_timestamp ,in_num_rows);
26- commit ;
27-
28- return ' select level as row_sequence
19+ create or replace package body my_package is
20+ function row_generator(in_num_rows in number ) -- NOSONAR: non-deterministic
21+ return varchar2 sql_macro as
22+ begin
23+ insert into function_calls(name,called_at,parameter_value)
24+ values ($$plsql_unit,current_timestamp ,in_num_rows);
25+ commit ;
26+
27+ return ' select level as row_sequence -- NOSONAR: G-1050
2928 from dual
3029 connect by level <= in_num_rows' ;
31- end row_generator;
30+ end row_generator;
31+ end my_package;
3232/
3333```
3434
3535## Example (good)
3636
3737``` sql
38- create or replace function row_generator (
39- in_num_rows in number
40- )
41- return varchar2 sql_macro as
42- begin
43- return ' select level as row_sequence
38+ create or replace package body my_package is
39+ function row_generator(in_num_rows in number ) -- NOSONAR: non-deterministic
40+ return varchar2 sql_macro as
41+ begin
42+ return ' select level as row_sequence -- NOSONAR: G-1050
4443 from dual
4544 connect by level <= in_num_rows' ;
46- end row_generator;
45+ end row_generator;
46+ end my_package;
4747/
4848```
0 commit comments