Book a Demo

Author Topic: Problems with Baseline compare / restore  (Read 3850 times)

kiesel

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Problems with Baseline compare / restore
« on: August 15, 2014, 04:57:11 pm »
We work with an EA project in a database. There we regularly create baselines for the overall model and compare them. The comparison takes rather long but it works.

We intend to branch the model and for that I experiment with transferring the EA project to an .eap file and creating, comparing / restoring baselines there.

To my astonishment :-? for even the simplest difference between 2 baselines (1 UC added) comparing or restoring always ends with the message "Query to complex".

I have done the transfer from database to .eap file in 2 ways: via Project transfer and via export to xmi and import of that xmi to an .eap file. It doesn't work either way.

The .eap file after Project transfer is about 290 MB big. The .eap file after export / import of xmi about 50 MB. This difference puzzles me, too.

By the way, Auditing is not enabled in the database version of our model.

Do I do something wrong? Is Baseline compare / restore for such big (is that really big?) models only possible within a database? Why are the file sizes so different depending on what way the transfer is done?

I hope for a simple solution. :) Thank you in advance.

Uffe

  • EA Practitioner
  • ***
  • Posts: 1859
  • Karma: +133/-14
  • Flutes: 1; Clarinets: 1; Saxes: 5 and counting
    • View Profile
Re: Problems with Baseline compare / restore
« Reply #1 on: August 20, 2014, 12:41:25 am »
Quote
To my astonishment :-? for even the simplest difference between 2 baselines (1 UC added) comparing or restoring always ends with the message "Query to complex".
My guess is that the comparison runs out of memory. The default EAP database manager is MS Jet 3.5, which is not the most powerful. Try JET 4.0 (Tools - Options - General) or, if you're on EA 11, Firebird. Or if you can, transfer to another database on the same server as your original project (you mention that you went to EAP for experimentation), that should work.

Quote
The .eap file after Project transfer is about 290 MB big. The .eap file after export / import of xmi about 50 MB. This difference puzzles me, too.
An XMI export contains only the package tree, what you see in the project browser. A project transfer duplicates the full database, which contains any number of things that are never shown in the browser -- notably the baselines themselves.

A baseline is stored in the t_document table as a zipped XMI file, so taking a couple of baselines on an entire package tree from the root node on down will soon have a significant impact on the project size.

Because the project contains a lot of secondary stuff besides the project browser content, my recommendation for branching is always to do a project transfer and then prune any contents that aren't needed in the branch, rather than exporting / importing XMI.

You should also make a habit of cleaning out obsolete baselines every once in a while. There's no need to keep them around "just in case" (this confuses version control with backup, which is a Big Bad Practice), as you can export baselines to files for backup purposes.

An empty EAP project on JET 3.5 is about 1 MB, so with 50 MB after XMI import it does sound to me like you're baselining too much in one unit. If you can identify separate parts of the model tree that do not refer to one another, you should baseline those rather than the whole project tree. This can be a very tall order if you haven't set the project up that way from the start.

Finally, the reusable asset functionality in EA 11 provides a somewhat better way to handle this stuff, so I'd advise you to take a look at that too.

HTH,


/Uffe
My theories are always correct, just apply them to the right reality.