Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ajdt-dev] Problems/Markers clear/update issues? + incremental (drop back to full) takes 2x as long as full

So, I think you are talking about two things.  The second thing you are talking about is the poor incremental build analysis for when projects are on the in path.  Would you be able to raise a bug for that and describe your specific scenario as you did below?

The second issue is consistency of the markers.  We should try to get our terminology the same so that we know that we are talking about the same issues.  When you say "problems view", do you really mean "markers view"?  Or are you talking about the weave info messages as they come through the AJDT Event Trace view?

But, fundamentally, the markers in the markers view, the gutter markers in the editor, and the items in the xref view are all populated from the same AspectJ project model.  There shouldn't be any differences between them. 

If you do see inconsistency between gutter markers and the marker/problems view, then this implies that there is an issue with how we display the project model in the different views.

If gutter markers and marker./problems view are the same, but do not show all of the references all of the time, then that is an issue with how the project model is created and (partially) refreshed.

In your logs below, I see that only full builds are occurring (even though an auto build was requested).  This should mean that markers are completely deleted and completely recreated.  If you are not seeing the complete markers after a full build, then it would seem that the underlying AJ project model is not being fully populated.

One thing I can do is provide more information on the Event trace view about exactly how many markers were created.  I'll try to get a build of this out there and maybe you can try it out.

2009/3/27 Neale Upstone <neale.upstone@xxxxxxxxxx>

AJDT version: 1.6.5.20090326122319 for Eclipse 3.4
AspectJ Compiler version: DEVELOPMENT

I have a feeling I've seen some discussion on this somewhere.
 
I'm seeing some inconsistent behaviour around what does and doesn't appear in the Problems view.  I sometimes get less than at others, but not in the way that I'd expect.
 
As you'll know, I'm weaving into 3rd party jars and JDT projects, so have -showWeaveInfo enabled.
 
What I expect is that I'll see the full list of my joinpoints in the problems view consistently after a clean build.
 
I'd be unsurprised to see them drastically reduced, to just what got re-woven, on an incremental build, as these are not full status messages.
 
However, this is not the behaviour that I am seeing.

After a clean build (Kind = FULLBUILD), there are no info markers, and the builds that happen are:
 
11:44:19 Build kind = FULLBUILD
11:44:19 Project=base-facade, kind of build requested=Full AspectJ compilation

11:45:10 Timer event: 51651ms: Total time spent in AJDE

11:45:11 Timer event: 51871ms: Total time spent in AJBuilder.build()
11:45:11 Timer event: 0ms: Delete markers: base-facade (Finished deleting markers for base-facade)
11:45:11 Timer event: 16ms: Create markers: base-facade (Finished creating markers for base-facade)
11:45:11 Timer event: 16ms: Delete markers: ccl-base(Finished deleting markers for ccl-base)
11:45:11 Timer event: 437ms: Create markers: ccl-base(Finished creating markers for ccl-base)

11:45:11 Build kind = AUTOBUILD

11:45:11 Project=ccl-base, kind of build requested=Incremental AspectJ compilation
11:45:11 build: Examined delta - no source file or classpath changes for project ccl-base

11:45:11 Build kind = AUTOBUILD
11:45:12 Project=base-facade, kind of build requested=Incremental AspectJ compilation
11:45:12 build: Examined delta - no source file or classpath changes for project base-facade
11:45:12 Timer event: 63ms: Total time spent in AJBuilder.build()

If I then make a whitespace change, I get:

11:45:31 Build kind = AUTOBUILD
11:45:31 Project=base-facade, kind of build requested=Incremental AspectJ compilation
11:45:31 File: C:\Dev\cat-all-eclipse-ide\base-facade\all\src\main\aspectj\com\camcog\cat\db\HandleITextException.aj has changed.
11:45:31 build: Examined delta - 1 changed, 0 added, and 0 deleted source files in required project base-facade
...
11:45:31 Found state instance managing output location : C:\Dev\cat-all-eclipse-ide\ccl-base\bin
11:45:31 No reported changes in that state
11:45:31 Preparing for build: planning to be an incremental build
11:45:31 Examining whether any other files now need compilation based on just compiling: '{C:\Dev\cat-all-eclipse-ide\base-facade\all\src\main\aspectj\com\camcog\cat\db\HandleITextException.aj}'
...
11:45:31 Starting incremental compilation loop 1 of possibly 5
11:45:32 Timer event: 359ms: Time to first compiled message
11:45:32 Dropping back to full build
11:45:32 Preparing for build: not going to be incremental because no successful previous full build    <------- #####
11:45:35 Timer event: 3640ms: Time to first woven message
11:47:34 AspectJ reports build successful, build was: FULL
11:47:34 Timer event: 122848ms: Total time spent in AJDE  (OUCH!!)

11:47:35 Timer event: 124285ms: Total time spent in AJBuilder.build()
11:47:37 Timer event: 31ms: Delete markers: base-facade (Finished deleting markers for base-facade)
11:47:37 Timer event: 47ms: Create markers: base-facade (Finished creating markers for base-facade)

If I make another whitespace change, I still see info markers, and the build still drops back to a full build (this time taking 88secs) for the same reason.

 

Relevant classpath for base-facade is:

<classpathentry kind="src"
path="all/src/main/aspectj"
/>
<classpathentry kind="src"
path="all/src/main/java"/>
<classpathentry kind="src" path="all/src/test/java"/>
<classpathentry kind="src" path="all/src/main/resources"/>

<classpathentry kind="src" path="/ccl-base">
 
<attributes>
    <attribute name="org.eclipse.ajdt.inpath" value="org.eclipse.ajdt.inpath"/>
  </attributes>
</classpathentry>

<classpathentry kind="lib" path="/ccl-base/all/lib/ide/itext.jar">
  <
attributes
>
    <
attribute name="org.eclipse.ajdt.inpath"
value="org.eclipse.ajdt.inpath"/>
  </
attributes
>
</classpathentry>

And in base:

<classpathentry kind="src"
path="all/src/main/java"
/>
<classpathentry kind="lib" path="all/lib/ide/itext.jar"/>
<classpathentry kind="output" path="bin"/>
 
 
 
**********************************************************************
IMPORTANT NOTICE.
Confidentiality:  This e-mail and its attachments are intended for the above named only and may be confidential.  If they have come to you in error you must take no action based on them, nor must you copy or show them to anyone; please reply to this e-mail and highlight the error.
Security Warning:  Please note that this e-mail has been created in the knowledge that Internet e-mail is not a 100% secure communications medium.
We advise that you understand and observe this lack of security when e-mailing us.
Viruses:  Although we have taken steps to ensure that this e-mail and attachments are free from any virus, we advise that in keeping with good computing practice the recipient should ensure they are actually virus free.
Monitoring and Scanning:  Cambridge Cognition has monitoring and scanning systems in place in relation to emails sent and received to: monitor / record business communications; prevent and detect crime; investigate the use of the Company's internal and external email system; and provide evidence of compliance with business practices.

Cambridge Cognition Limited
Company Registration Number 4338746
Registered address:
Tunbridge Court
Tunbridge Lane
Bottisham
Cambridge
CB25 9TU
UK
**********************************************************************


_______________________________________________
ajdt-dev mailing list
ajdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ajdt-dev



Back to the top