FailedChanges

Summary

  1. Bug 545491 - Improved performance of ReferenceCollection (details)
  2. Bug 546362 - Deploy ecj compiler from S-4.12M1-201904110625 and use it (details)
  3. Bug 546677 - Add @apiNote, @implSpec and @implNote to TagElement (details)
  4. Bug 545983 - [12] EJC allows switch expression to be concluded without (details)
  5. Bug 545716 - [12] expression switch doesn't consider that having all (details)
  6. reverting the api filter part of bug 545983 for the issue reported in (details)
  7. Bug 546352 - [9] New comprehensive UI for Modularity Details (details)
  8. Bug 546649 - [9][model] API to get exports and opens from an (details)
  9. Bug 546653 - [9] More details in module-related classpath attributes: (details)
Commit 6ff1559691d1c91add2193065d3fa563171f3ed7 by loskutov
Bug 545491 - Improved performance of ReferenceCollection
The implementation of reference collection suffered from a couple of
quadratic lookup operations in its logic to determine, whether the
collection includes certain names.
Instead of doing a simple nested loop scanning of the given arrays, we
apply an algorithm based on the reduced runtime complexity of binary
searches.
The reference collections are long living objects that are far more
often queried than modified. Now we use a simple comparator to sort the
arrays by length and content. When the collection is asked whether it
contains another list of names, these names have to be interned. In
addition to the interning, we also sort the argument arrays. Now we do
have a total of three pairs of arrays, each of the paired arrays is
sorted by the same criteria. That allows to walk both arrays pairways so
even if the worst case, we do no longer need O(n*m) with n=first.length
and m = second.length, but only O(2*(n+m)) comparisons. For longer
arrays, we even use binary search logic to skip more than one array
index when we advance the iteration.
In our scenario, this reduced the accumulated time for invocations of
include from 90s to less than one second.
Change-Id: Ib35b4250ab34fbab55723ebe1f9ad345afca86dd Signed-off-by:
Sebastian Zarnekow <sebastian.zarnekow@gmail.com> Signed-off-by: Andrey
Loskutov <loskutov@gmx.de>
The file was modifiedorg.eclipse.jdt.core.tests.builder/src/org/eclipse/jdt/core/tests/builder/ReferenceCollectionTest.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/ReferenceCollection.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/State.java
The file was modifiedorg.eclipse.jdt.core.tests.builder/src/org/eclipse/jdt/core/tests/builder/BuilderTests.java
The file was addedorg.eclipse.jdt.core.tests.builder/src/org/eclipse/jdt/core/tests/builder/StateTest.java
Commit 3228532d89c171c6c8189dd17f07cf77e334d9d4 by register.eclipse
Bug 546362 - Deploy ecj compiler from S-4.12M1-201904110625 and use it
for 4.12 M3 build
Change-Id: I3ba29b351c598950735296de8efc9be9d20cccb3
The file was modifiedorg.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/InnerEmulationTest_1_5.java
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
Commit 6ff5a8082eda85190509b9f52c1c48456e25606b by Vikas.Chandra
Bug 546677 - Add @apiNote, @implSpec and @implNote to TagElement
Change-Id: Ia436e65b5c53e676a1a756d06e8683d780591107 Signed-off-by:
Vikas Chandra <Vikas.Chandra@in.ibm.com>
The file was modifiedorg.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/TagElement.java
Commit a8d59be0a1fe090c489c1eb9fda14a27bfb7fb74 by manpalat
Bug 545983 - [12] EJC allows switch expression to be concluded without
returning a value
Change-Id: Ief731591c3c460e09df23c7110c8bdb62dc1d69a
The file was modifiedorg.eclipse.jdt.core/.settings/.api_filters
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/SwitchExpression.java
The file was modifiedorg.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/SwitchExpressionTest.java
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/problem/messages.properties
The file was modifiedorg.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/CompilerInvocationTests.java
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/core/compiler/IProblem.java
Commit 8d7a3b6518962ae563556185a4be8fc8517bf0f4 by manpalat
Bug 545716 - [12] expression switch doesn't consider that having all
cases of an enum is enough to be exhaustive - minor commit for method
name as per bug 545716 comment 9
Change-Id: I20216be5cc924dcae6e6f3d6ed1c59f5602d8c8d
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/SwitchExpression.java
The file was modifiedorg.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/SwitchStatement.java
Commit 88b5b03c829c2a6d784db7adef0f9f18aca2116c by manpalat
reverting the api filter part of bug 545983 for the issue reported in
bug 546762
The file was modifiedorg.eclipse.jdt.core/.settings/.api_filters
Commit a5bb33f31600c5673590e85111231334faef5bd6 by stephan.herrmann
Bug 546352 - [9] New comprehensive UI for Modularity Details
- make ModularClassFileMatchLocator more robust
Change-Id: Ie9e59b0b225282d3dc2c1fac4d6c18d7292362bc Signed-off-by:
Stephan Herrmann <stephan.herrmann@berlin.de>
The file was modifiedorg.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/ModularClassFileMatchLocator.java
Commit 8620194f7c282d7f1dade77d452642d855fb1132 by stephan.herrmann
Bug 546649 - [9][model] API to get exports and opens from an
IModuleDescription
Change-Id: I09fcaa4cc94e96ef6d54cff3717f6fc69c4d82e7 Signed-off-by:
Stephan Herrmann <stephan.herrmann@berlin.de>
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/AbstractModule.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/core/IModuleDescription.java
Commit 134ff1f738789c12523e5e04627bcf666c2a08a4 by stephan.herrmann
Bug 546653 - [9] More details in module-related classpath attributes:
add add-opens, enhance patch-module
Change-Id: I7585b97f7b73ce7948bccb6dd7798fc0b3d9682e Signed-off-by:
Stephan Herrmann <stephan.herrmann@berlin.de>
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/NameEnvironment.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/core/IJavaProject.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/ModuleEntryProcessor.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/core/IClasspathAttribute.java
The file was modifiedorg.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ModuleBuilderTests.java
The file was modifiedorg.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/JavaProject.java