Project

General

Profile

Bug #158

Running a refactor over MSExcel can be really slow

Added by Wil van Antwerpen about 2 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Start date:
07/10/2019
Due date:
% Done:

0%


Description

On behalf of Ian Smith.

If your workspace includes com wrappers then running a refactoring process over the workspace can be really time consuming.

Attached is the MSExcel16.zip and if you run a refactor on that with ALL options enabled (20 refactoring options) then it can take over half an hour to complete!

Statistics:
===========
Right trimmed 0 lines
Markers removed 0
Local keywords removed 0
Static fonts removed 0
Public keywords removed 0
Private keywords removed 0
If/Else lines changed 0
End Comments removed 0
Change 'U_class' style to 'RefClass' 0
Reindent Source Code 1
Making proper Upper/Lowercase Source Code 1
Dropping 'Self' 1
Removed 'Project Object Structure' lines 0
Replaced to use 'Move' command 0
Removed number of empty lines 0
Replaced 'GetAddress of' command 0
Replaced 'IN' with 'Contains' 0
Replaced 'If sTmp Ne '' Begin' 0
Removed number of unused Local variables 0
Number of files unused by source program(s) 0
Process completed. Elapsed Time: 00:48:49.213

That's on my test VM when running ONLY on the generated MSExcel16.pkg

Here's Ians report:
Hi Wil

It took approx. 78 mins on my i7 with 16g of ram to process the 67872 line of the Excel wrapper. So I think some additional progress info is definitely needed.

An alternative option would be to ignore COM wrappers - check for " // DataFlex COM proxy classes generated from " as the start of the first line and if found skip the file.

Other observations - not saying your current logic is wrong
1. Case changing - the Dataflex studio does not title case the word "for" when used in Define statements
2. COM Wrappers enumerated values - the indenting logic is removing the default indenting

Regards
Ian

Note that if you select a single file to process that there's is ZERO progress info for the whole time.

MSExcel16.zip (145 KB) Wil van Antwerpen, 07/10/2019 01:46 PM


Related issues

Related to DfRefactor - Suggestion #156: Add line x of y to running process dialog New 07/03/2019

History

#1 Updated by Wil van Antwerpen about 2 months ago

  • Related to Suggestion #156: Add line x of y to running process dialog added

Also available in: Atom PDF