Bug 538519 - Comparing of 2 models takes around 8 hours to complete in IDA
Summary: Comparing of 2 models takes around 8 hours to complete in IDA
Status: RESOLVED NOT_ECLIPSE
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Compare (show other bugs)
Version: 4.6   Edit
Hardware: PC Windows 7
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Platform-Compare-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2018-09-03 03:14 EDT by Anupkumar Seth CLA
Modified: 2018-10-03 09:18 EDT (History)
5 users (show)

See Also:


Attachments
Compare option (45.45 KB, image/jpeg)
2018-09-17 02:03 EDT, Anupkumar Seth CLA
no flags Details
Editor screenshot (154.03 KB, image/jpeg)
2018-09-21 04:04 EDT, Anupkumar Seth CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anupkumar Seth CLA 2018-09-03 03:14:05 EDT
When we compare 2 models in IBM Infosphere Data Architect using the org.eclipse.compare plugin, version 3.7.1.v20170103-1805 the comparison takes around 8 hours to complete if each model is of 35 MB in size and during this operation the product hangs and we are not able to do anything further till comparison completes.

We we used models in smaller size the comparison happens quickly, we only have issue when models are larger in size.
Comment 1 Anupkumar Seth CLA 2018-09-12 06:14:16 EDT
Changed the product and component as the issue is with org.eclipse.compare plugin, version 3.7.1.v20170103-1805
Comment 2 Dani Megert CLA 2018-09-13 10:05:16 EDT
> using the org.eclipse.compare plugin

Are you 100% sure it is a simple text comparison and not something provided by Model tools?

If so, please attach the two files so that we can investigate.
Comment 3 Anupkumar Seth CLA 2018-09-14 04:31:34 EDT
We compare two models in our product. Which internally uses org.eclipse.compare to compare those.

We use the below code to compare models

CompareUI.openCompareEditorOnPage(compareInput, page);

where CompareUI belongs to org.eclipse.compare.CompareUI and we call the method openCompareEditorOnPage which takes 2 input types org.eclipse.compare.CompareEditorInput and org.eclipse.ui.IWorkbenchPage. 


Let me know if you need any more information.

Thanks,
Anup
Comment 4 Brian Payton CLA 2018-09-14 15:16:21 EDT
Why is this bug assigned to dtp.connectivity?  It doesn't appear to be a DTP issue, since you are using org.eclipse.compare.  This should be re-assigned to whatever project owns org.eclipse.compare.
Comment 5 Dani Megert CLA 2018-09-15 11:39:17 EDT
(In reply to Anupkumar Seth from comment #3)
> We compare two models in our product. Which internally uses
> org.eclipse.compare to compare those.
> 
> We use the below code to compare models
> 
> CompareUI.openCompareEditorOnPage(compareInput, page);
> 
> where CompareUI belongs to org.eclipse.compare.CompareUI and we call the
> method openCompareEditorOnPage which takes 2 input types
> org.eclipse.compare.CompareEditorInput and org.eclipse.ui.IWorkbenchPage. 
> 
> 
> Let me know if you need any more information.


This doesn't say anything which compare is used. In the compare editor you should see on the top left which compare algorithm is used. Also, please attach stack traces.
Comment 6 Anupkumar Seth CLA 2018-09-17 02:01:28 EDT
Hi,

Problem occurs when we compare big models of size around 40 MB each.

Steps to reproduce:

1)Select 2 models and right click on it and select "compare with"-> "each other" option

2) After that we will get a window to select left and right model and we can press ok to start comparison.

3) Now it takes around 8 hours for comparison to complete.

We do not get any exception during this compare. The compare completes, but it takes around 8 hours to compare, during this process the product is non responsive. So the main issue is performance related.

I will try to attach one screen shot of the compare option that we use.
Comment 7 Anupkumar Seth CLA 2018-09-17 02:03:18 EDT
Created attachment 275840 [details]
Compare option

Attaching screen shot of the compare option.
Comment 8 Andrey Loskutov CLA 2018-09-17 02:06:39 EDT
(In reply to Anupkumar Seth from comment #7)
> Created attachment 275840 [details]
> Compare option
> 
> Attaching screen shot of the compare option.

Please attach jstack thread dumps, not screens shots!
Comment 9 Kalyan Prasad Tatavarthi CLA 2018-09-17 02:40:09 EDT
In org.eclipse.compare compareCompareUI.openCompareEditorOnPage function calls the editor.setInput function and then opens the Editor, the comparison is not done by the org.eclipse.compare plugin but delegated to the Editor that is being used. Please find out the editor used for the comparison. Further investigation needs to be made in the Editor code. So this is not a Platform Compare Bug.
Comment 10 Dani Megert CLA 2018-09-17 04:30:12 EDT
(In reply to Anupkumar Seth from comment #7)
> Created attachment 275840 [details]
> Compare option
> 
> Attaching screen shot of the compare option.

Please attach a screen shot of the compare editor itself.
Comment 11 Anupkumar Seth CLA 2018-09-20 02:43:04 EDT
(In reply to Kalyan Prasad Tatavarthi from comment #9)
> In org.eclipse.compare compareCompareUI.openCompareEditorOnPage function
> calls the editor.setInput function and then opens the Editor, the comparison
> is not done by the org.eclipse.compare plugin but delegated to the Editor
> that is being used. Please find out the editor used for the comparison.
> Further investigation needs to be made in the Editor code. So this is not a
> Platform Compare Bug.

Hi Kalyan,

I have investigated and found that it is using org.eclipse.compare.CompareEditor, so it is using eclipse compare editor.

I want to know particularly where it is taking 8 hours to complete the comparison and we do not get any errors also in the background.

Thanks,
Anup
Comment 12 Andrey Loskutov CLA 2018-09-20 03:00:37 EDT
(In reply to Anupkumar Seth from comment #11)
> I want to know particularly where it is taking 8 hours to complete the
> comparison and we do not get any errors also in the background.

My last try on this bug:

PLEASE ATTACH JSTACK THREAD DUMPS.

Create few (3-4) jstack thread dumps taken in one minute interval during the comparison. They will answer your question.
Comment 13 Dani Megert CLA 2018-09-20 03:31:34 EDT
(In reply to Dani Megert from comment #10)
> (In reply to Anupkumar Seth from comment #7)
> > Created attachment 275840 [details]
> > Compare option
> > 
> > Attaching screen shot of the compare option.
> 
> Please attach a screen shot of the compare editor itself.

Also my last attempt. If this does not get provided, we will close this as INVALID.
Comment 14 Dani Megert CLA 2018-09-20 03:46:50 EDT
Didn't want to close yet.
Comment 15 Anupkumar Seth CLA 2018-09-21 03:59:33 EDT
(In reply to Andrey Loskutov from comment #12)
> (In reply to Anupkumar Seth from comment #11)
> > I want to know particularly where it is taking 8 hours to complete the
> > comparison and we do not get any errors also in the background.
> 
> My last try on this bug:
> 
> PLEASE ATTACH JSTACK THREAD DUMPS.
> 
> Create few (3-4) jstack thread dumps taken in one minute interval during the
> comparison. They will answer your question.

Hi Andrey,

I will try to get JSTACK THREAD DUMPS.
Comment 16 Anupkumar Seth CLA 2018-09-21 04:01:40 EDT
(In reply to Dani Megert from comment #13)
> (In reply to Dani Megert from comment #10)
> > (In reply to Anupkumar Seth from comment #7)
> > > Created attachment 275840 [details]
> > > Compare option
> > > 
> > > Attaching screen shot of the compare option.
> > 
> > Please attach a screen shot of the compare editor itself.
> 
> Also my last attempt. If this does not get provided, we will close this as
> INVALID.

Hi Dani,

Attaching the screen shot of the editor, let me know if this is what you were looking for.
Comment 17 Anupkumar Seth CLA 2018-09-21 04:04:05 EDT
Created attachment 275919 [details]
Editor screenshot
Comment 18 Dani Megert CLA 2018-10-03 09:18:57 EDT
The underlying Comparator for model compare-merge is com.ibm.xtools.comparemerge.emf.emf_content_merge_viewer. This is not provided by Eclipse.