ABL Source Code Analysis Tools

tamhas

ProgressTalk.com Sponsor
I'm going to be giving a talk on ABL source code analysis tools at Exchange. The list I have now is:
* compile list
* compile xref
* xml xref
* databasing xref data
* "SuperXref"
* Ctrl-F and Ctrl-H in PDS/OEA
* substitute
* Araxis Merge & KDif3
* AutoDox2
* Debugger
* Profiler
* Proparse
* ProLint
* Proparse scripting
* Joanju Analyst
* Enterprise Architect
* ABL2UML
and Gilles Querret's forthcoming tool.

What am I missing?
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
This could fall under the use of the profiler, but for completeness I would add compile debug-list (as opposed to listing).
 

Stefan

Well-Known Member
The Progress Developer Studio OpenEdge Meta Catalog? It smells like it could do something useful xref-style - but I have never been impressed by its results / taken the time to read up on what I should be expecting.

Introducing the Meta Catalog

The Progress Developer Studio for OpenEdge's Meta Catalog is an index that enables you to find where elements are used in your application. You can find where a temp-table is defined and where it is used in your application. You can find all the procedures and functions in your application. You can find where those procedures and functions are called. You can also add your own annotations to the code and have them included in the index. You can use this index to simplify analyzing the impact of proposed changes and carrying out those changes.
 

tamhas

ProgressTalk.com Sponsor
compile debug-list is covered under the profiler, but good mention.

Yes, I've been wondering about the meta catalog since the beginning ... but haven't seen any real use of it yet.
 

Stefan

Well-Known Member
Just put my 'project' into the meta catalog - the database is now 500mb and performance is horrible. Simply populating the combo boxes for which user defined functions etc are available occassionally hang(this could be a result of the quantity). Finding the references then takes 20 - 30 seconds for one result... I am guessing that the meta catalog queries are jdbc sql92 queries and that somebody forgot to update table statistics?

Update: now the combo box for the results of 4GLREFERENCE/FUNCTION-REF seems to consistently result in 'not responding' for 30 seconds after which focus returns back to the entry type combo...

Now with a simple single search on an annotation (which I do not use, but of which there were two available) - retrieving data from catalogs is over 30 seconds...

Performed all the update statistics stuff. No improvement. Added -B 100000 to the other parameters when starting db - this was skillfully ignored and default 3000 still shows in log. Enabled SQL query log to show statements and query plan - beware it looks like it is treating function names in a case sensitive manner... the word INDEX SCAN OF pops up quite a bit too (no idea how bad this is).

From a user's point of view this is unworkable - if someone has more success / tips I'd be happy te hear them!
 

tamhas

ProgressTalk.com Sponsor
I'm going to be giving a talk on ABL source code analysis tools at Exchange. The list based on input received is now:
* compile list
* compile xref
* xml xref
* databasing xref data
* Roundtable TSMS => session
* "SuperXref"
* Ctrl-F and Ctrl-H in PDS/OEA
* Other ABL independent search tools (OpenGrok)
* substitute (omitted)
* Araxis Merge & KDif3
* AutoDox2 *
* SmartDox => session
* Debugger
* Profiler (including COMPILE DEBUG-LIST)
* ProTop
* Proparse *
* ProLint
* Proparse scripting *
* Joanju Analyst *
* PCT and Jenkins => session
* Gilles Querret's forthcoming SonicSource => session
* Enterprise Architect
* ABL2UML (2.0?)

* abHack?

What am I missing?

* All Joanju tools will be referenced, but reduced in coverage due to the lack of 11.x syntax support.

=> include references to other sessions at Exchange
 
Top