eclipse-ocl / org.eclipse.ocl

Eclipse Public License 2.0
0 stars 0 forks source link

OCL Validation report generation never finish in OCL All-in-One SDK 6.9.0 #2134

Open eclipse-ocl-bot opened 3 days ago

eclipse-ocl-bot commented 3 days ago

| --- | --- | | Bugzilla Link | 568046 | | Status | REOPENED | | Importance | P3 normal | | Reported | Oct 20, 2020 12:13 EDT | | Modified | Dec 15, 2020 09:20 EDT | | Reporter | Lars-Ola Osterlund |

Description

Ecore and data xmi loaded in Eclipse GUI, select Validate in menu.

Installation 1: Eclipse 2019-09 with, E Modelling Tools 4.13, E Validation Framework 1.12.1, OCL All-in-one 6.9.0 and OCL Classic 5.10\ 24 GB memory allotted to Eclipse.\ Operation in progress dialog shown after OK in validation finish dialog.\ A 131 Mb xmi file validates in 2 minutes, 20 GB memory used\ 128852 errors report generated in 10 seconds, 22 GB memory used\ A 72 Mb xmi file validates in 1 minute, 12 GB memory used\ 2835 errors report is generated in 3 minutes, 21 GB memory used\ A 6 Mb xmi file validated in 5 seconds, 8 Mb memory used\ 584 errors report generated in 2 seconds, 8 Gb memory used

Installation 2: Eclipse 2020-09 with, E Modelling Tools 4.17, E Validation Framework 1.12.2, OCL All-in-one 6.9.0 and OCL Classic 5.10\ 26 GB memory allotted to Eclipse.\ No operation in progress dialog shown after OK in validation finish dialog. \ A 131 Mb xmi file validates in 2 minutes, 20 Gb memory used\ Report interrupted after 20 minutes, 22 Gb used\ A 72 Mb xmi file validates in 1 minute, 11 GB memory used\ Report interrupted after 14 minutes, 22 GB memory used\ A 6 Mb xmi file validated in 5 seconds, 8 Mb memory used\ 584 errors report generated in 1 minute, 22 Gb memory used

Report generation in Eclipse 2020-09 only works for small models. If it works it takes a tremendous amount of time and memory.

eclipse-ocl-bot commented 3 days ago

By Ed Willink on Oct 20, 2020 12:39

I can only guess at quite what command you are executing ...

You don't identify what Java you are using.

I do however know that there is no OCL release for 2020-09 since the builds fail due to gratuitous removal of platform support for Java 8 that is the baseline for development.

Please provide a clear repro. Preferably as a JUnit test.

eclipse-ocl-bot commented 3 days ago

By Ed Willink on Nov 23, 2020 12:50

No repro ... no fix.

eclipse-ocl-bot commented 3 days ago

By Lars-Ola Osterlund on Dec 15, 2020 08:43

Created attachment 285042 Copy of Eclipse IDE installation details in Configuration tab

To trigger the issue in Eclipse 2020-09 do this, create an empty EMF project, import the Ecore file with OCL I have developed, import a model in XMI format (one of the larger is 130 Mb), open the model in the SampleReflectiveEcoreModelEditor, and in the context menu select "Validate", so just out of the box use.

I understand I will have to stay with Eclipse 2019-09 as an OCL version compatible with 2020-09 doesn't exist. Will there be an effort to upgrade the OCL packages to Eclipse 2020-09?

Thanks / Lars-Ola

:notepad_spiral: InstallDetails.docx

eclipse-ocl-bot commented 3 days ago

By Ed Willink on Dec 15, 2020 08:52

In principle all versions of OCL since Oxygen are backward compatible and are tested weekly on all platforms. The only exception is that there was no 2020-09 release of OCL since the platform's mandatory migration to Java 11 broke the tests of the builds.

There is a 2020-12 release of OCL that should be useable wherever. There might be an early N-build that fixes this bug now that there is a repro.

eclipse-ocl-bot commented 3 days ago

By Ed Willink on Dec 15, 2020 09:20

(In reply to Lars-Ola Osterlund from comment #3)

Created attachment 285042 [details] Copy of Eclipse IDE installation details in Configuration tab

If the probllem is really obscure and hard to reproduce these details may be useful but ...

import the Ecore file with OCL I have developed, import a model in XMI format (one of the larger is 130 Mb), open the model in the SampleReflectiveEcoreModelEditor, and in the context menu select "Validate", so just out of the box use.

... without this model I would only be guessing at your problem.

I suspect there is a straightforward problem with a quadratic loop interacting badly with the garbage collector which should be investigateable on a 1 MB model, so if you can attach a smaller model that would be great. Even better if you have a model generator that can be parameterized to support trend analysis wrt model size; ideally linear.

If posting a 130MB model is a problem, please post a dropbox link.