PDS Auto completion on multilevel classes is slow ( > 3seconds) - Forum - OpenEdge General - Progress Community

PDS Auto completion on multilevel classes is slow ( > 3seconds)

 Forum

PDS Auto completion on multilevel classes is slow ( > 3seconds)

This question is not answered

Hello Community,

I'm facing a rather annoying issue that I can't seem to solve yet, and I wonder if one of you might have the solution.

I'm building a class / sub-class architecture for a software feature.

 

The setup

- Progress 11.6.2

- Class-oriented feature

- Using classes class with multiple level of inheritance (up to 6)

Say FClass inherits EClass, inheriting DClass, inheriting CClass,inheriting BClass, inheriting AClass

          Say SimpleClass is a very simple class with a few properties

- FClass is of a fair size (around 20 methods, with 10 of them override methods), ~1300 lines

- A-B-C-D-EClass have between 3 to 10 methods, ranging from 120 to 350 lines

 

The Issue

In any .p file if I do:

Def var myvar as SimpleClass no-undo.

Pressing ctrl-space avec ‘myvar:’ is pretty fast.

Pressing Ctrl space after ‘SUBS’ (to get SUBSTITUTE) is also immediate

 

However, if I do the same two actions in FClass: then the completion popup takes between 5 and 9 seconds to raise, with 100% of a CPU-Core used by javaw.exe

It seems to be faster in the source code of classes higher in the hierarchy.  (~1 or 2 seconds)

It feels like everytime I try to auto complete a variable, a method name or a function, PDS is processing and reflecting in all the classes above the one being written.

Does this issue ring a bell ? I've searched a little to see the options that might be consuming process time or help to reduce the "auto completion time to process" but I hardly find anything.

I've seen something called "Meta Catalog" in PDS, not sure if this might be a solution.

if needs be I can provide some more information

All Replies
  • Stay away from the meta catalog.  It won't help with this.  

    1. Make sure your PROPATH isn't absurdly long.

    2. Make sure your source and r-code folders are not on a network drive.  local disks only.

    3. Make sure your workspace metadata folders on not on a network drive. local disks only.

    4.  Make sure enough memory is allocated.  Use 64 bit install, and setup to use at least -Xmx of 2GB

    5. Make sure you have compile on save.  Otherwise PDSOE has to reparse every file it needs to look at.  reading r-code is much faster than building AST

    6. Turn off auto complete. Leave it triggered on ctrl+space.

  • PDSOE 11.7 (don’t remember if a service pack was required) is a huge performance improvement. I really suggest an upgrade.

    Architect of the SmartComponent Library and WinKit

    Consultingwerk Ltd.

  • Plus, consider using OEDT as an add-on to PDSOE: https://www.omecra.de/

    Architect of the SmartComponent Library and WinKit

    Consultingwerk Ltd.

  • Mike, does OEDT require PDSOE?  Is it an extension or is it a standalone tool?

  • It depends on PDSOE

  • It’s built on top of PDSOE. It’s not a replacement.

    Architect of the SmartComponent Library and WinKit

    Consultingwerk Ltd.

  • Hello

    1 - switched the PROPATH locations of classes as the first folder to watch : no improvement

    I'm working on local disks only, so 2 and 3 are good.

    4 - I can't sadly push Allocated memory to 2GB due to

    5 - Already set

    6 - Same

    Thanks a lot for the suggestions.

    I'm afraid that unless point 4 is to blame, they gave little positive results.

  • Hi,

    Few performance improvements are done w.r.t content assist and initialize tooling operations in 11.7.2 release. Upgrading to 11.7.2 or 11.7.3 can solve the performance issues w.r.t content assist.

    Thanks,

    Ramadevi