preface

Every time A new version of IDEA is released, I stop what I’m doing, look at ReleaseNote one by one, pick out the issues I’m interested in, and go to YouTrack, Jetbrains’ Issue tracking system, to find something interesting.

IDEA-268100

This time 2021.1.2 will be released on June 1, 2021. The first fixed problem is: Idea-268100 IntelliJ Maven High Memory Usage when opening POP. XML in multi-module projects.

Through checking the Issue, I found that someone submitted a Bug report on this problem as early as May 3rd.

Here it is:

  • IntelliJ Maven High Memory usage when opening pom.xml in multi-module projects
  • Intellij 2021.1 reports out of memory due to usage of byte buddy library. Can’t use intellij!

The problem to repair

I am curious about how the official staff of IDEA dealt with this problem. Under the Issue, the official staff shared the cause of the problem.

It’s too precious. The problem seems to be gnu. Trove.THashSet. They switched the library to Java’s own library.

gnu.trove

What is gnu. Trove? Query to the website address is as follows: bitbucket.org/trove4j/tro…

GNU Trove: A high-performance collection library for Java.

The explicit goal of the library is to produce a high-performance java.util.Collection implementation, which is laudable. However, any improvement in performance comes with costs and costs, often requiring continuous and significant r&d and investment.

As you can see, it’s June 2021, and the last commit date for this library is November 2018,Trove4j/Trove is cold to the core.

Reflection and summary

The idea of talking about results without talking about costs is not sustainable. Come to think of it, no matter how ambitious it was, it was destined to fade into history when it became unsustainable.

It’s not the best, nor does it perform the best, but it stands the test so far.

It is not necessarily advisable to talk about performance without talking about stability and sustainability.