[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [incquery-dev] xcore & eiq status
|
Hi,
thanks for the trace. For future reference, I have attached it to the bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=428015.
I checked the trace itself, and my findings are twofolds:
- The NPE thrown in the type provider is clearly erroneous. I have pushed a (quick) fix to the master.
- After the NPEs the builder seems to legitimately called multiple times:
1. The change in the metamodel triggered a rebuild of the domain, edit, editor projects (Java)
2. The change in the metamodel invalidated the eiq file.
3. The eiq file change did not cause a rebuild for the Xcore.
In other words, either this exception siderailed the builder (in that case it is fixed), or if I understood the trace correctly, I don't really see a way to largely reduce the number of required builds because of the circular dependencies between the xcoreiq and the eiq files.
Cheers,
Zoli
-- Zoltán Ujhelyi
https://www.inf.mit.bme.hu/en/members/ujhelyiz
Fault Tolerant Systems Research Group
Budapest University of Technology and Economics
On 2014.04.07., at 12:57, Tamás Szabó <tamas.szabo@xxxxxxxxx> wrote:
> Ok. Regarding point (3), find attached the output of the tracing for the problematic editing scenario.
>
> 2014.04.07. 11:48 keltezéssel, Ujhelyi Zoltán írta:
>> Thanks for checking it. About Eds comment, I repeat myself: "We have said to work amongst the first part; I have tried to look at how EMF does its things, but did not have the time to finish it yet."
>>
>> Zoli
>> On 2014.04.07., at 11:46, Tamás Szabó <tamas.szabo@xxxxxxxxx> wrote:
>>
>>> Regarding plugin.xml content generation:
>>> I found out (again) that the problem is with the way we modify the contents of the plugin.xml.
>>> The Ecore annotation will not have effect, because the original generated_package extension point lacks the @generated annotation once the IncQuery builder has worked on it.
>>> Ed pointed out the following method: org.eclipse.emf.codegen.ecore.generator.AbstractGeneratorAdapter.mergePluginXML(String, String, String). Something similar should be used so that the annotation is kept intact.
>>>
>>> 2014.04.06. 9:49 keltezéssel, Ujhelyi Zoltán írta:
>>>> Hi,
>>>>
>>>> Bug 419704 is not solved yet. It will require either throwing out the entire PDE-based plugin.xml loading, or accessing PDE internal stuff to work. We have said to work amongst the first part; I have tried to look at how EMF does its things, but did not have the time to finish it yet.
>>>>
>>>> About (3): I would really like to have some data available of this problematic case.
>>>>
>>>> Tamás: could you please turn on the tracing support of the platform in your run configuration for builders and execute the problematic case? The result would help a lot for determining why are we so slow.
>>>>
>>>> I am attaching a screenshot with my corresponding settings (what is not visible, is not checked on the tracing page). If everything works, the log should contain some information like follows:
>>>>
>>>> Sun Apr 06 09:44:33 CEST 2014 - [Worker-3] Invoking (INCREMENTAL_BUILD) on builder: XtextBuilder(headlessQueries.incquery; [])
>>>> Sun Apr 06 09:44:33 CEST 2014 - [Worker-3] Computing delta for project: headlessQueries.incquery
>>>> Sun Apr 06 09:44:33 CEST 2014 - [Worker-3] Finished computing delta, time: 1ms
>>>> Sun Apr 06 09:44:33 CEST 2014 - [Worker-3] /headlessQueries.incquery[*]: {}
>>>> Sun Apr 06 09:44:33 CEST 2014 - [Worker-3] Builder finished: XtextBuilder(headlessQueries.incquery; []) time: 2ms
>>>>
>>>> Cheers,
>>>> Zoli
>>>> -- Zoltán Ujhelyi
>>>> https://www.inf.mit.bme.hu/en/members/ujhelyiz
>>>>
>>>> Fault Tolerant Systems Research Group
>>>> Budapest University of Technology and Economics
>>>> <Mail Attachment.png>
>>>> On 2014.04.05., at 17:53, Istvan Rath <rath@xxxxxxxxxx> wrote:
>>>>
>>>>> Thanks for investigating this.
>>>>>
>>>>> Zoli, did we do anything about the (problematic) plugin.xml generation? The last comment on https://bugs.eclipse.org/bugs/show_bug.cgi?id=419704 is from october last year. This might explain (2).
>>>>>
>>>>> We also have a bugzilla (https://bugs.eclipse.org/bugs/show_bug.cgi?id=428015) that might be related to (3). Tamas, can you run a profiler to check what is taking a long time in this case?
>>>>>
>>>>>
>>>>>
>>>>> On 05 Apr 2014, at 11:32, Tamás Szabó <tamas.szabo@xxxxxxxxx> wrote:
>>>>>
>>>>>> Hi
>>>>>>
>>>>>> A quick overview about the status of the xcore stuff:
>>>>>> (1) The @Ecore annotation doesn't seem to have any effect. If you specify a custom URI, it will not be written to the plugin.xml.
>>>>>> It is also interesting, that the runtime Xtext index contains the EPackage with the new custom URI. The original import in the
>>>>>> eiq files with the package URI "library" will not be valid anymore, you can (and should) use the new one, even if the plugin.xml contains the wrong entry.
>>>>>> This needs to be investigated with the help of Ed.
>>>>>> (2) I am not sure about the plugin.xml rewriting problems, I cant reproduce it deterministically. I tried to erase all the contents of the plugin.xml and invoke the builder again, and the contents have been written properly. Nevertheless, a full clean usually will result in the absence of the gen_package extension point definition and the query specification extension points. The derived feature extension points are always generated.
>>>>>> (3) Performance can be really poor in the xcore & EIQ scenario. Simply adding a new pattern will result in a long building time.
>>>>>> (4) When we reach the point that everything is generated properly into the plugin.xml, then the generated use case works just fine!
>>>>>>
>>>>>> I will address (1), but I am going to need help with (2).
>>>>>>
>>>>>> Cheers,
>>>>>> Tomi
>>>>>> _______________________________________________
>>>>>> incquery-dev mailing list
>>>>>> incquery-dev@xxxxxxxxxxx
>>>>>> https://dev.eclipse.org/mailman/listinfo/incquery-dev
>>>>> Istvan Rath, PhD
>>>>> Research Fellow
>>>>> Fault Tolerant Systems Research Group
>>>>> Budapest University of Technology and Economics
>>>>> rath@xxxxxxxxxx
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> incquery-dev mailing list
>>>>> incquery-dev@xxxxxxxxxxx
>>>>> https://dev.eclipse.org/mailman/listinfo/incquery-dev
>>>>
>>>>
>>>> _______________________________________________
>>>> incquery-dev mailing list
>>>>
>>>> incquery-dev@xxxxxxxxxxx
>>>> https://dev.eclipse.org/mailman/listinfo/incquery-dev
>>> --
>>> Tamás Szabó
>>> Software Engineer
>>>
>>> Tel.: +49 711 342 191 0
>>> Fax.: +49 711 342 191 29
>>> Mobil: +49 171 565 416 9
>>> Web:
>>> www.itemis.de
>>>
>>> Mail:
>>> tamas.szabo@xxxxxxxxx
>>>
>>> Skype: szabta89
>>>
>>> itemis AG
>>> Niederlassung Süd
>>> Meitnerstr. 10
>>> 70563 Stuttgart
>>>
>>> Rechtlicher Hinweis:
>>> Registergericht: Amtsgericht Dortmund HRB 20621 | Sitz der Gesellschaft:
>>> Lünen
>>> Vorstand: Jens Wagener (Vorsitzender) | Wolfgang Neuhaus | Dr. Georg
>>> Pietrek | Jens Trompeter | Sebastian Neus
>>> Aufsichtsrat: Prof. Dr. Burkhard Igel (Vorsitzender) | Stephan Grollmann
>>> | Michael Neuhaus
>>>
>>> _______________________________________________
>>> incquery-dev mailing list
>>> incquery-dev@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/incquery-dev
>> _______________________________________________
>> incquery-dev mailing list
>> incquery-dev@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/incquery-dev
>
> --
> Tamás Szabó
> Software Engineer
>
> Tel.: +49 711 342 191 0
> Fax.: +49 711 342 191 29
> Mobil: +49 171 565 416 9
> Web: www.itemis.de
> Mail: tamas.szabo@xxxxxxxxx
> Skype: szabta89
>
> itemis AG
> Niederlassung Süd
> Meitnerstr. 10
> 70563 Stuttgart
>
> Rechtlicher Hinweis:
> Registergericht: Amtsgericht Dortmund HRB 20621 | Sitz der Gesellschaft:
> Lünen
> Vorstand: Jens Wagener (Vorsitzender) | Wolfgang Neuhaus | Dr. Georg
> Pietrek | Jens Trompeter | Sebastian Neus
> Aufsichtsrat: Prof. Dr. Burkhard Igel (Vorsitzender) | Stephan Grollmann
> | Michael Neuhaus
>
> <tracing_iq.txt>_______________________________________________
> incquery-dev mailing list
> incquery-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/incquery-dev