Report timings in ContentDescriptionPerformanceTest - #2929
Merged
vogella merged 2 commits intoSep 15, 2026
Merged
Conversation
The test measured one cold and one warm pass over 5000 files through org.eclipse.test.performance. Without the performance database that framework reports to, commitMeasurements and assertPerformance are no-ops, so the test printed nothing and could not fail. The test now times each pass itself and prints min, median, 90th percentile and maximum via the new PerformanceTestUtil in org.eclipse.core.tests.harness. The cold pass flushes the content description cache before every round, two cases time the project matcher's name look-up directly, and two cases enable project specific content type settings. While running, the test registers 300 user defined xml content types so that a look-up visits as many candidates as in an IDE with many plug-ins. Assisted-by: multiple AI agents and layers of automated tooling 🤖 Claude-Session: https://claude.ai/code/session_01CaULtGuvCNxegRkFAfcYgT
Contributor
|
This pull request changes some projects for the first time in this development cycle. An additional commit containing all the necessary changes was pushed to the top of this PR's branch. To obtain these changes (for example if you want to push more changes) either fetch from your fork or apply the git patch. Git patchFurther information are available in Common Build Issues - Missing version increments. |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ContentDescriptionPerformanceTest reported through org.eclipse.test.performance, whose performance database has not been configured for years, so commitMeasurements and assertPerformance were no-ops and the test printed nothing and could not fail. The test now times its work itself and prints min, median, 90th percentile and maximum via a new PerformanceTestUtil in org.eclipse.core.tests.harness, the same approach already used in eclipse.platform.ui.
Besides the cold and warm description passes over 5000 files, the cold pass now flushes the description cache before every round, two cases time the project matcher's name look-up directly, and two cases enable project specific content type settings. While running, the test registers 300 user defined xml content types so a look-up visits as many candidates as in an IDE with many plug-ins, which is what makes changes in the content type catalog measurable. Run locally with the bundles under test in the reactor, all five cases pass and print their timings.