Fixed an issue causing some files to not be analyzed with the accompanying warning: "the file … it will not be analyzed, because it is not DDL neither DML or none of the statements are supported.". This was due to the presence of Oracle SQL*Plus scripts.
3.6.18
Resolved Issues
Customer Ticket Id
Details
45553
Oracle: fixed SQL-004 warnings during link creation phase for views selecting from synonyms.
3.6.17
Resolved Issues
Customer Ticket Id
Details
45227
Fixed added/deleted SQL objects.
Other Updates
Details
Changed SQL Analysis objects GUIDs. The analysis unit name logged in the analysis log will no longer contain the numeric suffix. Eg.: a previous GUID "SQLScriptFunction?Main_sourcesDatabase_36645.CASTPUBS.STORENAME_PROC" will change to "SQLScriptFunction?Main_sourcesDatabase.CASTPUBS.STORENAME_PROC". During the update to the new version, all SQL Analyzer GUID’s will be migrated.
3.6.16
Note
There are no functional changes in this release: this is only a change to an LTS release.
3.6.16-funcrel
Resolved Issues
Customer Ticket Id
Details
43071
Provided information about how to split source code into multiple SQL analysis units to improve analysis performance.
"Never use SQL queries with a cartesian product on XXL Tables (SQL)" - fixes an issue causing false positive violations of the rule when tables are joined by in operators.
1101072
FALSE
"Avoid not aliased Tables" fixes an issue causing false positive violations.
1101106
FALSE
"Avoid tables without primary key / unique key constraint / unique index" - fixes an issue causing false positive violations of the rule due to an erroneous scope.
1101022
FALSE
"Avoid Tables without Primary Key (SQL)" - fixes an issue causing false positive violations of the rule due to an erroneous scope.
New Support
Summary
Details
SQL rules and incomplete embedded SQL queries
The analyzer has been updated to ensure that SQL rules are no longer calculated on incomplete embedded SQL queries. Where the incomplete SQL query causes a link to other objects, these will still be saved in the results.
3.6.15-funcrel
Resolved Issues
Customer Ticket Id
Details
41889
Oracle SQL*Plus scripts. Fixes false positives on the rule: "Always define column names when inserting values".
Other Updates
Details
ADO.NET: Fixes missing link between ADO.NET query object and the table object when table is prefixed with "?". For example: select 1 from ?.table_name.
Mainframe: Access links are correctly displayed starting with Mainframe 1.0.1-funcrel.
Mainframe: Fixes after analysis error when Cobol SQL Queries are not called by a Cobol object.
Teradata: Fixes performance issue due to wrong detection of vendors.
Rules
Rule Id
New Rule
Details
1101006
FALSE
Fixed false positive for "COL_NAME in (" syntaxes.
1101026
FALSE
Fixed false positive for Oracle SQL*Plus scripts.
New Support
Summary
Details
Improve the resolution of Db2 for i tables/views.
Added the support of tabulation in the pf/lf files. Added the support of 12 numbers at the beginning of lines in pf/lf files.
Oracle multi table insert statement.
Added support for Oracle INSERT ALL statements.
3.6.14-funcrel
Resolved Issues
Customer Ticket Id
Details
42722
Fixes a missing link from procedure to the table's column.
42712
Fixes an issue wherein "error code 3" was displayed while running SQL analyzer caused by the wrong vendor detection: Oracle instead of PostgreSQL.
42626
Fixes a missing link issue which occurred when DB2 Table was used in COBOL program with EXEC SQL statement.
42652
Fixes an analysis warning which was displayed during Run Extension at application level SQL analysis resolving queries:AttributeError: 'NoneType' object has no attribute 'lower'.
42724
Fixes an issue related to Informix procedure, wherein the analysis was incomplete (END EXCEPTION).
Other Updates
Details
Fixed the performance issue which occurred while analyzing Cobol and SQL sources and the production option "Save sections and paragraphs" is activated for the Mainframe Analyzer.
Embedded SQL Queries which contain JCL statements are filtered.
Rules
Rule Id
New Rule
Details
1101076
FALSE
Fixed false negative on embedded SQL queries.
New Support
Summary
Details
SQL Table Size and exponential notation
Added the support of the exponential notation for values in SQL Table Size files. E.g. : schema_name.table_name=2.18978e+07. Number of rows of the table will be 21897800.
3.6.13-funcrel
Resolved Issues
Customer Ticket Id
Details
42104
Oracle Server: Fixed missing link between a procedure and an object type, when a procedure's variable has an object type as a data type.
Link Improvements
Callee Type
Caller Type
Details
Procedure / Function
Object Type
Oracle Server: Added missing link between a procedure / function and an object type, when a procedure's variable has an object type as a data type.
Other Updates
Details
Fixed message "Missing function / procedure nON, the callLink will miss" when embedded queries contain \r\n characters, e.g. : \r\nON.
Fixed a missing table object that was marked as internal for some projects.
Fixed missing links between "Microsoft Enterprise Library Query" objects and the procedure/table.
Fixed error on Linux deployment: "[ERROR] no property with name: SQLScript_Metric_HasLike.like_starlike_has_no_wildcardst_with_wildcards".
Fixed a missing "use" link between SQL embedded queries and SQL tables.
Fixed missing violation for the rule 7344 "Avoid SELECT *" when the SELECT ALL uses the following syntax: "SELECT a.*".
1101000
FALSE
Fixed false positive violations of the rule 1101000 "Never use SQL queries with a cartesian product (SQL)", where a multi table truncate statement is used, e.g.: "TRUNCATE table1, table2".
3.6.12-funcrel
Resolved Issues
Customer Ticket Id
Details
41966
Fixed a missing inheritance link between a Type and a super Type.
41863
Fixed an issue where the SQL Artifacts were not completely analyzed.
Other Updates
Details
Teradata : fixed missing links between SQL Macro and SQL Tables / Views when they are not declared in the same SQL file.
An update was made to ensure Linux path names are correctly supported.
Cobol files are no longer scanned when "Cobol SQL Query" objects are created (supported in com.castsoftware.mainframe 1.1.0-funcrel). Use / Call and Access links between Cobol Programs / Sections and Paragraphs and SQL Tables Functions / Procedures and Columns will no longer be created and the links will instead be between Cobol SQL Query and SQL Tables Functions / Procedures and Columns.
When a "missingtable" extension is installed and used during the analysis, com.castsoftware.sqlanalyzer will no longer generate "Missing table / view / function / procedure" messages in the log file when tables / views / functions / procedures are not delivered (the "missingtable" extension will create these non-delivered objects, therefore the log messages are redundant).
Fixed warning SQL-004: Analysis issue between line 119194 and 119301.
Fixed missing access link between Cobol Program, Cobol Data and SQL Column
3.6.11-funcrel
Other Updates
Details
Fixed a post application warning that is displayed in the analysis log when loading sensitive data for missing tables (i.e. when a Missing Tables extension is being used) and where a Source Code Location is used instead instead of a ZIP file to deliver the source code in CAST Console. This issue causes Oracle Package objects to not be created as missing objects.
3.6.10-funcrel
Other Updates
Details
An improvement has been added to ensure that "built-in" and "system" SQL objects are never added as missing objects.
Fixes missing Functions / Procedures when multiple Functions / Procedures with the same name are created in multiple files.
3.6.8-funcrel
Resolved Issues
Customer Ticket Id
Details
39404
Fixes an issue causing all objects to be categorised as belonging to the "master" database (and therefore ignored during the analysis) when this database is referenced in the first .SQL files to be processed.
40525
Fixes a false positive violation of the rule 1101106 - "Avoid tables without primary key/unique key constraint/unique index".
40391
Fixes an issue where a Teradata SQL file is incorrectly analyzed as DB2 leading to missing objects and links.
39530
Fixes a false positive violation of the rule 7424 - "Avoid SQL queries inside a loop".
39838
Fixes an issue where SQL table names are displayed incorrectly in the CAST Engineering Dashboard: all tables are incorrectly named "DEFAULT.<" when the schema name is a parameter, for example "<SCHEMA_NAME>".
Other Updates
Details
An update was made to ensure objects with duplicated CREATE statements are not displayed in the CAST Engineering Dashboard with duplicated violation bookmarks.
An update was made to ensure that "CREATE TABLE … PARTITION OF" statements are ignored during the analysis. These statements are logged as being skipped but not analyzed.
Rules
Rule Id
New Rule
Details
1101022
FALSE
Removed false positive violation for the rule "Avoid Tables without Primary Key (SQL)".
1101106
FALSE
Removed false positive violation for the rule "Avoid tables without primary key / unique key constraint / unique index".
7424
FALSE
Removed false positive violation for the rule "Avoid using SQL queries inside a loop".
New Support
Summary
Details
Oracle: Support forPL/SQL Subprograms
Added support of PL/SQL Subprograms, nested procedures and functions.
Performance
Summary
Post-application performance improvement for the step "Run analysis after analysis" when DDL is missing.
3.6.7-funcrel
Resolved Issues
Customer Ticket Id
Details
39693
Fixes an issue for Oracle PL/SQL where links between SQL Query and Synonym objects are added/deleted in successive snapshots with unchanged source code.
39476
Update to the documentation to add non-support of sub procedures / functions in begin/end blocks within another procedure.
39666
Fixes an issue for Oracle PL/SQL where links are not created when a procedure and functions are called from procedure.
39612
Fixes an issue for Oracle PL/SQL where links are not created when a procedure is called dynamically using "execute immediate" as the default value for a procedure variable..
39598
Fixes an issue where a SQL Script object was not created for a DML file.
39517
Fixes an issue causing missing links between Procedures and Table objects for Microsoft SQL Server.
New Support
Summary
Details
SQLSCRIPT-1090
Oracle PL/SQL: Add support for package nested procedures/functions. Package procedure / function with nested procedures / functions should end correctly and should be correctly analyzed. Nested procedures / functions are not created.
3.6.6-funcrel
Resolved Issues
Customer Ticket Id
Details
39297
Fixes an issue related to MySQL analysis. Tables were not created from SQL file even when create table syntax were available.
37531
Fixes an issue wherein wrong Synonym objects were created.
Fixes an issue where the SQL analysis was hanging during the "Start creating links for file" for a View .sql file, when the selected Table has the same name as the View.
New Support
Summary
Details
Add new pattern for DB2 vendor
CREATE TYPE 2 <UNIQUE> INDEX
3.6.4-funcrel
Resolved Issues
Customer Ticket Id
Details
31258
Moved the rule (1101022): "Avoid Tables without Primary Key (SQL)" to the Technical Criterion category "Robustness".
38228
Fixed missing link from Stored Procedure to Cobol program when the EXTERNAL NAME is a string instead of identifier.
Rules
Rule Id
New Rule
Details
1101022
FALSE
Moved the rule (1101022): "Avoid Tables without Primary Key (SQL)" to the Technical Criterion category "Robustness".
Add call links when they are missing between SQL Named Queries objects and SQL Analyzer stored functions / procedures.
3.6.2-funcrel
Resolved Issues
Customer Ticket Id
Details
36303
Issue in SQL file analysing artifacts are not getting analysed.
Other Updates
Details
Bad Number of occurrences for Avoid non-indexed XXL queries.
Table having REM for the table name should be correctly created.
New Support
Summary
Details
Calculate SQL quality rules on the embedded SQL queries when there is no SQL file
Client side queries - embedded SQL queries - should be analyzed always when SQL Analyzer is installed, even if the SQL files are missing. More details in the official documentation, Client Side Support topic.
Missing hasdistinct property on java method object
Missing call links between Cobol code and SQL Triggers
Rules
Rule Id
New Rule
Details
1634
FALSE
Fixed false positives
1101034
FALSE
Fixed missing violation on java method
New Support
Summary
Details
Add columns for views when they are not specified
When columns are not specified in the CREATE VIEW statement, retrieve them from the SELECT statement.
3.6.0-funcrel
Resolved Issues
Customer Ticket Id
Details
35504
Missing Reference link between tables linked with foreign key.
35564
Missing violation for rule (rule id: 7424): "Avoid using SQL queries inside a loop".
35346
Analysis stuck for 12 hours at Start scanning links for Cobol 'Run extensions after analysis' step.
Other Updates
Details
Fix added/deleted FETCH links between Cobol and SQL.
Rules
Rule Id
New Rule
Details
7424
FALSE
Fixed missing violation for the rule: "Avoid using SQL queries inside a loop".
1101022
FALSE
Removed false positive when the PRIMARY KEY is specified in ALTER TABLE statement, after ADD column.
New Support
Summary
Details
T-SQL : Added support for ALTER TABLE table_name ADD column_name_details PRIMARY KEY primary_key_details syntax
Added support for the ALTER TABLE statement, when the ADD column the statement specify a PRIMARY KEY.
3.6.0-beta2
Resolved Issues
Customer Ticket Id
Details
34547
Fixed an issue where a violation was reported for the rule "Avoid tables without Primary key" (1101022) even though the table had a foreign key. This was caused by the analyzer not supporting system-version related syntaxes (such as GENERATED ALWAYS AS ROW START/END/BEGIN/HIDDEN) at column level. These are now supported.
Added more messages in the application level log: 1. When a table/view is missing for a SQL Named query like property, the following message is logged: "Missing table/view named <OBJECT_NAME>, the <useUpdateLink/useDeleteLink/useInsertLink/useSelectLink> will miss.". 2. When we start analyzing a query, e.g.: "Start adding use links for the query <SQL Named Query>(bookmark=Bookmark(File(<FILE_NAME>, sourceFile), <query_begin_line>, <query_begin_column>, <query_end_line>, <query_end_column>))".
Rules
Rule Id
New Rule
Details
1101022
FALSE
Avoid Tables without Primary Key (SQL).
3.6.0-beta1
Resolved Issues
Customer Ticket Id
Details
34199
SQL files didn't get Analyzed, SQL LOC decreased after migration from 8.3.29 to 8.3.40 with additional "print" stmt beginning
Other Updates
Details
Oracle: SQL-002 warning is logged during analysis of Oracle SYS packages.
The SAP SQL script objects are no more created due to raise RuntimeError('Duplicate guid found "' + guid + '" second object has fullname: "' + fullname + '"')
New Support
Summary
Details
MySQL and MariaDB: INSERT IGNORE INTO
Added support for INSERT IGNORE INTO.
Performance
Summary
Improved performances of the DML analysis.
Improved performance for data exports files wrongly interpreted as mixed files: the case of INSERTs and ALTER COLUMN statements.