Book a Demo

Author Topic: Virtual Documents and "Analyzing Model Structure"  (Read 6981 times)

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Virtual Documents and "Analyzing Model Structure"
« on: August 27, 2014, 11:04:20 pm »
Working with EA version 11.1.1110 and an Oracle repository.

For some reason EA now takes an increadibly long time during the initial "Analyzing Model Structure..." step.  10 minutes for even a simple Virtual document.

The CPU usage is extremely low %2 to %4, and the network usage is also extremely low %1.  So I'm not sure what it's doing or why it's taking so long.

My next step is to run an Oracle Trace to see what, if anything it's querying.

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Re: Virtual Documents and "Analyzing Model St
« Reply #1 on: August 28, 2014, 01:43:16 am »
More tests.  The issue seems to be with fragments.  

I made 2 versions of a template, and did 4 tests against a single package containing 4 requirements.

Test 1: virtual document, template with fragment:  ~ 1min 45s
Test 2: virtual document, template without fragment: ~ 20s
Test 3: template with fragment run directly against package: 1min 30s
Test 4: template without fragment run directly against package: ~ 6s

Both the fragment and nonfragment versions output the Element.LevelNumber and Element.Name for each requirement.

For the Fragment
  • No Bookmarks is checked
  • Child Packages is NOT checked
  • Child Elements is NOT checked

Is there anything else I should be doing?
« Last Edit: August 28, 2014, 01:45:14 am by realitystorm »

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Re: Virtual Documents and "Analyzing Model Structu
« Reply #2 on: August 28, 2014, 02:28:50 am »
Test 5: template with a empty fragment run directly against package: 1min 30s.

The empty fragment had not sections (package, element,and custom all UNchecked), only the word text.

So just the inclusion of a fragment, no matter what it does causes the delay.

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Re: Virtual Documents and "Analyzing Model St
« Reply #3 on: August 28, 2014, 03:09:04 am »
Test 6: virtual document, template with 2 empty fragments: ~ 1min 45s.
Test 7: virtual document, 2 parts, template with 2 empty fragments ~3 min 30s.

Based on these pretty basic tests, there is a fixed increase for adding fragments to a template, and does not increase if you add more than 1 fragment.  

The issue is the cumulative hit when you create a virtual document with a lot of model documents, and each template uses fragments.
« Last Edit: August 28, 2014, 06:11:18 am by realitystorm »

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Re: Virtual Documents and "Analyzing Model St
« Reply #4 on: August 28, 2014, 10:10:31 am »
Final issue discovered, the initial delay for "Analyzing Model Structure" is directly proportional to how many child packages are under the package the model document that your virtual document is referencing.  Even if the model document is using a template that only references the top parent package. (childpackages is UNchecked)

I had created a model document for my cover page pointing to the "root" package for the project to get information about the project.  When I pointed the same model document to a package with no children it processed considerably faster.

Instead I will take the hit from a template fragment, and use the fragment with a script as the source that "trees up" from the selected package to find the Project Package.
« Last Edit: August 28, 2014, 10:27:09 pm by realitystorm »

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Re: Virtual Documents and "Analyzing Model St
« Reply #5 on: January 19, 2015, 10:05:19 am »
Found the cause of the slowdown, but not what triggered it.

I decided to export a fragment as an RTF to see what the contents of the file were (viewed as text in notepad).

The file size was 8Mbytes and contained literally 1000s of list override entries....  We had only created a 3 in our stylesheet.

So I created an empty RTF document using notepad (just enough RTF code to define it as an RTF), then loaded this "blank" file in to Sparx as a starting point, and then recreated the fragment.

Exported again, and found that the file size dropped to ~3KBytes.

We've now gone through and recreated our style sheets, templates, fragments etc. starting with same "blank file" and all them are now average ~10Kbytes.  

The speed improvement is enormous.  Reports that took hours now finish in under 5 minutes.

We've been trying to duplicate the bug that caused the exponential growth in list overrides but so far no luck, all I can think of is there was a bug in a previous version of Sparx EA triggered when we were using the "update styles" feature that kept duplicating the list overrides so 3 became 6, became 12, became 24, etc.
« Last Edit: January 19, 2015, 10:12:42 am by realitystorm »

KP

  • EA Administrator
  • EA Expert
  • *****
  • Posts: 2919
  • Karma: +55/-3
    • View Profile
Re: Virtual Documents and "Analyzing Model Structu
« Reply #6 on: January 19, 2015, 10:48:23 am »
EA 12 has an option to remove list overrides. Right-click > Other > Remove Unused Lists. This can bring about exactly the performance improvements you describe.
The Sparx Team
[email protected]

stevesavage

  • EA User
  • **
  • Posts: 119
  • Karma: +4/-0
    • View Profile
Re: Virtual Documents and "Analyzing Model Structu
« Reply #7 on: January 20, 2015, 12:21:45 am »
Thanks KP, I look forward to the final release of EA12.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: Virtual Documents and "Analyzing Model Structu
« Reply #8 on: January 20, 2015, 09:17:34 am »
Quote
EA 12 has an option to remove list overrides.

Yes, well done, I recall asking about this a few years ago.
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.