You want to run a task from your build tool that has nothing to do with indexing before indexing finishes? No can do!
You installed an npm package and it seems to depend on all the things? Let's start indexing on node_modules and give you no chance to even uninstall the **er. You used the CLI to work around our tooling? Hey let's start indexing immediately after this one finishes so it's a great idea for a coffee break, just never pull directly after coming back so you may actually do some work until we bog down all the cpu cores.
Don't get me wrong, I love all the JB IDEs, but indexing has been a deal-breaker for many.
> so you may actually do some work until we bog down all the cpu cores.
I wish it bogged down all cores.. I work on relatively small Java projects (maybe 10 KLOC, 20 or so items in the pom.xml (although these obviously have transitive dependencies)). IntelliJ 2018 would re-index everything in a few minutes using all 20 vcores. I specifically spent about $8k on an iMac Pro back in the day to make this faster.
IntelliJ 2022, on the other hand, uses only 4 cores, and takes about 10 minutes. That's a stupid default (if I buy a powerful computer I want to use it..).
There is a setting to override it, but in my case it just doesn't work. CPU goes to approx 400% and just stays there. I filed a bug report, no movement.
While not quite 10 minutes, I'm on a 12 core i7 Dell XPS, I have to switch between half a dozen or so Go projects in a day sometimes and it really can take a couple of minutes each; long enough to be annoying, not long enough to grab a coffee.
Edit: I should say 12-thread, not 12-core, just to be clear on the performance level we're expecting here. It's a 6c/12t i7.
Maybe. I used to be on MacBook Pros back in the days when I was working on Java and indexing was the bane of my existence.
I usually worked with 3-10 big Java projects in parallel (e.g. HBase, Hadoop, Hive, NiFi, Kafka) and indexing could (not exaggerating) take up to 4 hours in total. NiFi is one of the worst offenders. And switching branches means it starts all over again.
I haven't worked with Java in ~2 years so I'm not sure how bad it is now. I might start a NiFi index job just for fun...
I use Rust in IntelliJ, and the indexing is usually fine once the IDE is up.
But for some reason, whenever I reopen a project, it needs to reindex it. Even when I open the same project every day, not having changed anything in between. I understand from a friend it doesn't do that with Java projects.
Indexing performance has drastically improved for me in the last 1-2 years, to the point where it's become a non-issue. New projects index very quickly, and adding new libraries also indexes quickly. It's an order of magnitude better than a few years ago.
That's both on my 16-inch M1 Max and my M2 Air with Go in Goland.
I've been waiting for indexing improvemence for over 10 years, not holding my breath.