59 comments
Official comment

2017.2 will provide a way to pause indexing:

I'm closing this thread, it's huge and not manageable.

Please feel free to create separate threads for your issues (like lockups when choosing remote host, re-indexing on installing a plugin, etc.)

There is no way to cancel/disable indexing - it is a core feature, all WebStorm functionality (syntax/error highlighting, code completion, code inspections, navigation, refactoring, code coverage, search, etc.) is based on it.
Please try invalidating caches (File/Invalidate caches, Restart) - does the problem persist?

Also, do you have any build tasks running in background? Do they watch your files (i.e. are they triggered on file changing)? I'd suggest excluding all dynamically generated folders from the project (Mark directory as/Excluded) - this should make WebStorm much faster. Note also that scanning WebStorm folders for viruses slows down indexing tremendously, that's why excluding them from from on-access scan is required.

12

I've been using webstorm for node.js dev for a few years and this issue has been driving me to insanity for just as long - searching for ways to resolve this takes up a significant portion of my google search history - to no avail!

15

Sorry, what issue? Indexing on project opening/Git branches switching/etc. is normal, and there is no way to avoid it. But, if index is being constantly rebuilt, it's a bug that has to be fixed

-13

Worse part of this, is that after every release, I just see things getting worse. 

Today I've updated to latest 2016.3 and it took more than 2 hours to get all indexed for a single project.

  • It would be REALLY nice if I could enable / select folders that I don't want indexed (eg node_modules). 
9

You can exclude folders from indexing by marking them excluded (Mark directory as/Excluded)

-3

"Indexing on project opening/Git branches switching/etc. is normal, and there is no way to avoid it." <- this is the issue i experience

I work with microservices - its not possible to open them all in one instance of webstorm because each has a node_modules dir, and webstorm runs out of memory (on a 16GB mbp) trying - so instead i open each in a separate instance of webstorm - this means i'm constantly opening and closing different projects... so i'm always waiting for the indexing

"You can exclude folders from indexing by marking them excluded (Mark directory as/Excluded)"

I've seen this said many times - it doesn't seem to affect the indexing tho, only the inspections - unless something has changed recently? I've also tried using scopes - but it has the same issue. If it did work, ideally i'd want to open a group of microservices in one webstorm instance - but to do that, i'd need it to open successfully once so that i could configure the directories as excluded, but it runs out of memory and crashes before there is any chance to do that.

It would be nice if the node_modules directory was ignored in all cases - you should have to specifically configure it for any kind of indexing/inspections

5

>I've seen this said many times - it doesn't seem to affect the indexing tho, only the inspections - unless something has changed recently?

 

It DOES affect indexing - excluded folders are never indexed - unless they are set up as JavaScript libraries. So, if you like to exclude a library folder, make sure to remove it from libraries first.

Note also that node_modules are currently auto-excluded, but only partially - all direct dependencies listed in the root package.json are added to JavaScript libraries and still indexed for completion

 

>I've also tried using scopes - but it has the same issue.

 

No, nothing of the kind. Unlike excluding, creating a scope doesn't affect indexing in any way

>It would be nice if the node_modules directory was ignored in all cases

 

you can delete package.json to be able to exclude it completely, or add 'node_modules' to 'Ignore files and folders list (Settings | Editor | File Types). Note: once you do it, you can't expect to see any completion/types resolving/navigation/search to work for stuff defined there. Ignored folders are excluded from any kind of processing

-4

I see that I'm not the only person with this problem, probably there are many others.

As you can see, there is a problem, the indexing is really slow. And this is not getting any better as projects are just growing, modules are being added, complexity will increase.
If there was no problem, me and many others would not bother writing anything here and spending hours of our time on it, so just answering people comments with more comments are not going to get us much further.

@Elena I would like to suggest, that we transform this discussion into something constructive for the community? How about making a blog post or something with steps and screen shots on how to optimise the performance of indexing for microservices projects, in particular projects with (NodeJS) node_modules or (Golang) /vendor folders (Or even projects having both ? Thats my case.) and how can we properly configure webstorm to avoid waiting >2h to get index completed ? That will be awesome.

Cheers.

12

Hmm... And what should be written in this blog post? The only way to not index certain files is excluding them from indexing. And you have 3 ways to do this:

- mark directory as Excluided

- add it to 'Ignore files and folders' list

- move it out of your project

The less files you have in project, the faster is indexing - that's obvious, I think.

But, even for huge projects, indexing shouldn't take hours - this is not something that can be treated as a normal behavior. Things that might affect the speed:

- files locates on network drives

- project files and/or caches folder scanned for viruses

- there are deep/recursive symbolic links in project path

- there are tools that are watching and constantly updating project directories/caches => such updating will cause constant index re-building

 

Sorry, I know absolutely nothing about microservices projects, so I can hardly advise on proper configuration

0

My biggest problem with indexing is that it seems to happen randomly.  Sometimes I have a bunch of WebStorm projects open, and for some reason, suddenly all of them decide to index.

 

Would there be a way to add an option to WebStorm to "only index on command" and then add a command to index? And furthermore, only index the active editor window, rather than all open instances of WebStorm?  Is that something I can put a feature request in for?

6

 - deleted - .... issue I was having with files in excluded directories showing in open resources was solved by re-importing project from scratch

1

Switched from IntelliJ 2016.2 to 2016.3 and got the same massive indexing. Actually, it never stops.

Now the problem is solved... Just by unchecking "Build automatically" in Settings:)

1

Upgraded to 2016.3 and indexing is relentless. Starts suddenly, lasts for minutes and only pauses when a dialog is open. The problem is that the IDE didn't do it before 2016.3. If this change is intentional, its annoying as it it eats up a powerful CPU and my development environment stutters. If it is not intentional then it's a bug.

2

I hate this 'update indices' too, it is very annoying.... does the support have an answer?

1

Please see https://intellij-support.jetbrains.com/hc/en-us/community/posts/207671405/comments/204852150

If indexing never completes, or re-starts constantly, this is a bug that has to be submitted to support

-5

I am not talking about "indexing never complete" (which could be another issue), I want to stop indexing, or stop indexing while I am working

0

Sorry, I don't understand what you are talking about. Do you mean that WebStorm keeps re-indexing your project while you edit it? Or, you just like to have full control over indexing - disable it completely, cancel., etc.? In the first case, it's a bug that has to be reported to support. In the latter case - well, it is unlikely that this feature will ever be provided

0

So, to summarize, it's like this: anyone who want to stop indexing, I doubt if it will ever be possible, either you take it or leave it... because JetBrains won't care or listen...what I can say is that it's not something I admire, get rid of it if you can, there are many other competitive products out there..

4

It is btw sometimes hard to know what directories are useful to exclude for indexing. I have hunderds of directories, and it does not show what it is currently indexing.

Indexing does have to happen very often, rendering my IDE and actually the complete computer useless for an irritating long time. Sometimes several times a day: every time something (sometimes very minor) changes in the project's versions or dependencies, or if intellij itself has an update.

Besides that, also if it is not indexing Intellij often consumes 100% cpu, and I'm force to kill it of at least once a day, after which I have to restart it (btw with a good chance that it want to reindex somewhat again).

4

I work with microservices too, I install a plugin and bang indexes all open microservices... 5 minutes stuck at 100% cpu

really annoying, please fix this or add a delayed indexing or "postpone indexing" button, or whatever.

 

1

I agree. I've been using IntelliJ for years now, and it's *always* had this frustrating problem where it will just freeze up while you're editing and start indexing for 10 seconds. Here's an idea: DON'T START INDEXING WHEN SOMEONE'S ACTIVELY USING INTELLIJ/WEBSTORM/ETC. Is that so hard? Better yet is if it would stop indexing if you came back to the window so you didn't have to think about it.

And why is indexing taking so long anyway? What's it doing? I haven't changed almost anything, so what could it possibly be indexing? 


2

>Here's an idea: DON'T START INDEXING WHEN SOMEONE'S ACTIVELY USING INTELLIJ/WEBSTORM/ETC.

 

Indexing shouldn't normally start while editing the code. It usually happens on project opening, on switching VCS branches and on various massive file updates made externally (for example, if files in your project directory are constantly re-generated as a result of build process, etc.). If you see that indexing starts while you are just editing your code in IDEA/WebStorm, it's likely a bug that should be reported to support

-5

For me the same I leave all projects open untill they are finished however... copying new files that indexing again!!! It cost me a lot of time so also money :(

1

I don't like it when it's indexing my complete system (Arch Linux) is not responding too well, because Storm is eating up all resources (CPU). Can the indexing be set less "agressive" in some kind of setting I don't know of?

0

WebStorm utilizes all CPU cores when performing resource-consuming tasks like indexing.

It's not currently possible to change this; please vote for https://youtrack.jetbrains.com/issue/IDEABKL-3806

0

Whenever I change the schema of a database table, it seems like it then reindexes the entire database. After that, it will proceed to re-index the whole project. If I have several projects open, which is usually the case, then every project will re-index at the same time because they share. This causes considerable unresponsiveness in the IDE.

I think there should be an option to not re-index the project after database schema changes. There should be another option to not re-index projects while they are not the current editor window. The whole process becomes much slower since it insists on re-indexing everything at the same time.

0

I agree on this! 

Been using IntelliJ for many years, and indexing is more and more often getting in the way.. Especially when working with Go, it indexes the $GOPATH, and that is usually BIG.

Also, even though I have no Python facet in the current project, "Updating Python Paths" takes forever. And IntelliJ is normally stuck on 100% for quite some time. After it is done, IntelliJ is still hugging one core.  Force Quit -> full reindex using almost all possible cpu (and half a battery).

I really like the golang support in Intellij, but the indexing kills that experience. 

I can see that this is not necessarily the fault of JetBrains, but it seems the plugin ecosystem together bigger source structures (goalng, npm, ...) is making the IntelliJ experience worse.

 

1

This indexing thing is a freaking nightmare. Searched for so many fixes, I'm tired, going to try Sublime

4

 i just purchased a license renewed then the latest update came and it wont stop indexing, this makes the ide completely useless, i even followed the guide about switching from the bundled jvm to the native one for my os, turned off non native plugins, it sped it up a little but otherwise useless for me. uses 100% of all cores and 3gb ram. can you add a feature where i can choose what i want to index or turn some indexing off? otherwise i have to switch to sublime, i cant have my employment jeopardized due to this.

7

Post is closed for comments.