Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accessing 'IgnoreFilesIndex' during processing 'filetypes'. #473

Closed
3 tasks done
mayfma9 opened this issue Sep 6, 2017 · 3 comments
Closed
3 tasks done

Accessing 'IgnoreFilesIndex' during processing 'filetypes'. #473

mayfma9 opened this issue Sep 6, 2017 · 3 comments

Comments

@mayfma9
Copy link

mayfma9 commented Sep 6, 2017

Prerequisites

  • Plugin is in the latest version
  • Issue was not reported yet
  • Stack trace (if provided) contains mobi.hsz.idea.gitignore package name

Description

Restarted Android Studio before an update. Android Studio reopened the project I was working on and suddenly almost every codeline had an error that begins with "Cannot resolve... ". The Event Log shown the following:

02:31 PM	Gradle sync started

02:31 PM	Plugin Error: .ignore threw an uncaught EmptyThrowable. Disable Plugin

02:31 PM	EmptyThrowable: Accessing 'IgnoreFilesIndex' during processing 'filetypes'. Nested different indices processing may cause deadlock

02:31 PM	Gradle sync completed

Additional Information

Projects compile and run on debug mode normally. However, as almost everything is red, it's confusing to the point of annoyance.

Stack Trace

Accessing 'IgnoreFilesIndex' during processing 'filetypes'. Nested different indices processing may cause deadlock
com.intellij.openapi.diagnostic.Logger$EmptyThrowable
	at com.intellij.openapi.diagnostic.Logger.error(Logger.java:129)
	at com.intellij.util.indexing.IndexAccessValidator.checkAccessingIndexDuringOtherIndexProcessing(IndexAccessValidator.java:37)
	at com.intellij.util.indexing.FileBasedIndexImpl.processExceptions(FileBasedIndexImpl.java:829)
	at com.intellij.util.indexing.FileBasedIndexImpl.processValuesImpl(FileBasedIndexImpl.java:905)
	at com.intellij.util.indexing.FileBasedIndexImpl.getValues(FileBasedIndexImpl.java:771)
	at mobi.hsz.idea.gitignore.indexing.IgnoreFilesIndex.getEntries(IgnoreFilesIndex.java:233)
	at mobi.hsz.idea.gitignore.indexing.IgnoreFilesIndex.getFiles(IgnoreFilesIndex.java:249)
	at mobi.hsz.idea.gitignore.lang.kind.GitLanguage.getOuterFiles(GitLanguage.java:107)
	at mobi.hsz.idea.gitignore.indexing.ExternalIndexableSetContributor.getAdditionalFiles(ExternalIndexableSetContributor.java:77)
	at mobi.hsz.idea.gitignore.indexing.ExternalIndexableSetContributor.getAdditionalProjectRootsToIndex(ExternalIndexableSetContributor.java:102)
	at com.intellij.util.indexing.IndexableSetContributor.getProjectRootsToIndex(IndexableSetContributor.java:38)
	at com.intellij.util.indexing.FileBasedIndexImpl.collectScanRootRunnables(FileBasedIndexImpl.java:2258)
	at com.intellij.util.indexing.FileBasedIndexImpl.iterateIndexableFiles(FileBasedIndexImpl.java:2222)
	at com.intellij.util.indexing.FileBasedIndexImpl.projectIndexableFiles(FileBasedIndexImpl.java:1012)
	at com.intellij.util.indexing.FileBasedIndexImpl.lambda$processValuesImpl$2(FileBasedIndexImpl.java:883)
	at com.intellij.util.indexing.FileBasedIndexImpl.processExceptions(FileBasedIndexImpl.java:834)
	at com.intellij.util.indexing.FileBasedIndexImpl.processValuesImpl(FileBasedIndexImpl.java:905)
	at com.intellij.util.indexing.FileBasedIndexImpl.processValues(FileBasedIndexImpl.java:811)
	at com.intellij.util.indexing.FileBasedIndexImpl.processValues(FileBasedIndexImpl.java:801)
	at com.intellij.psi.search.FileTypeIndex.containsFileOfType(FileTypeIndex.java:133)
	at org.jetbrains.kotlin.idea.configuration.ConfigureKotlinInProjectUtilsKt$getModulesWithKotlinFiles$1.invoke(ConfigureKotlinInProjectUtils.kt:116)
	at org.jetbrains.kotlin.idea.configuration.ConfigureKotlinInProjectUtilsKt$getModulesWithKotlinFiles$1.invoke(ConfigureKotlinInProjectUtils.kt)
	at org.jetbrains.kotlin.idea.util.application.ApplicationUtilsKt$sam$Computable$ef13024b.compute(ApplicationUtils.kt)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:863)
	at org.jetbrains.kotlin.idea.util.application.ApplicationUtilsKt.runReadAction(ApplicationUtils.kt:24)
	at org.jetbrains.kotlin.idea.configuration.ConfigureKotlinInProjectUtilsKt.getModulesWithKotlinFiles(ConfigureKotlinInProjectUtils.kt:116)
	at org.jetbrains.kotlin.idea.configuration.ui.KotlinConfigurationCheckerComponent$projectOpened$1$1.run(KotlinConfigurationCheckerComponent.kt:71)
	at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:307)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

Steps to Reproduce

  1. First Step Update .ignore plugin on Android Studio to the latest version
  2. Second Step Restart Android Studio
  3. Third Step Open any project.

Expected behavior: No errors.

Actual behavior: Exception Error on .ignore plugin.

Reproduces how often: At the start or at the opening of another project. Compiling a project doesn't trigger it.

Versions

Plugin:

 .ignore v2.2.0 (2017-09-04)

IDE:

Android Studio 2.3.3
Build #AI-162.4069837, built on June 6, 2017
JRE: 1.8.0_112-release-b06 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

OS:

Windows 10 Pro 
type x64
version 1703
comp. 15063.540
@nicity
Copy link

nicity commented Sep 13, 2017

This issue causes deadlock in IntelliJ IDEA side: https://youtrack.jetbrains.com/issue/IDEA-178534
https://youtrack.jetbrains.com/issue/IDEA-178973
https://youtrack.jetbrains.com/issue/IDEA-178968

Also next IDE EAP builds will deny loading of current .gitignore plugin versions https://youtrack.jetbrains.com/issue/IDEA-178534#comment=27-2418137

"JobScheduler FJ pool 0/4" prio=0 tid=0x0 nid=0x0 waiting on condition
     java.lang.Thread.State: WAITING
 on java.util.concurrent.Phaser$QNode@5ed48f71
	at sun.misc.Unsafe.park(Native Method)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.Phaser$QNode.block(Phaser.java:1140)
	at java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3313)
	at java.util.concurrent.Phaser.internalAwaitAdvance(Phaser.java:1067)
	at java.util.concurrent.Phaser.awaitAdvance(Phaser.java:730)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.a(FileBasedIndexImpl.java:1964)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector$$Lambda$830/2040636221.run(Unknown Source)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:934)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.ensureUpToDate(FileBasedIndexImpl.java:1926)
	at com.intellij.util.indexing.FileBasedIndexImpl.ensureUpToDate(FileBasedIndexImpl.java:670)
	at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:850)
	at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:936)
	at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:907)
	at com.intellij.util.indexing.FileBasedIndexImpl.getValues(FileBasedIndexImpl.java:758)
	at mobi.hsz.idea.gitignore.indexing.IgnoreFilesIndex.getEntries(IgnoreFilesIndex.java:233)
	at mobi.hsz.idea.gitignore.indexing.IgnoreFilesIndex.getFiles(IgnoreFilesIndex.java:249)
	at mobi.hsz.idea.gitignore.lang.kind.GitLanguage.getOuterFiles(GitLanguage.java:107)
	at mobi.hsz.idea.gitignore.indexing.ExternalIndexableSetContributor.getAdditionalFiles(ExternalIndexableSetContributor.java:77)
	at mobi.hsz.idea.gitignore.IgnoreFileBasedIndexProjectHandler.isInSet(IgnoreFileBasedIndexProjectHandler.java:107)
	at com.intellij.util.indexing.FileBasedIndexImpl.e(FileBasedIndexImpl.java:1699)
	at com.intellij.util.indexing.FileBasedIndexImpl.access$2000(FileBasedIndexImpl.java:118)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.scheduleForUpdate(FileBasedIndexImpl.java:1854)
	at com.intellij.util.indexing.FileBasedIndexImpl.b(FileBasedIndexImpl.java:1738)
	at com.intellij.util.indexing.FileBasedIndexImpl.access$2400(FileBasedIndexImpl.java:118)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.b(FileBasedIndexImpl.java:1949)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector$$Lambda$1585/888144981.run(Unknown Source)
	at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:548)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:493)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:94)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:198)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.a(FileBasedIndexImpl.java:1946)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector$$Lambda$831/348122125.process(Unknown Source)
	at com.intellij.util.indexing.VfsEventsMerger.processChanges(VfsEventsMerger.java:67)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.a(FileBasedIndexImpl.java:1943)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector$$Lambda$830/2040636221.run(Unknown Source)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:934)
	at com.intellij.util.indexing.FileBasedIndexImpl$ChangedFilesCollector.ensureUpToDate(FileBasedIndexImpl.java:1926)
	at com.intellij.util.indexing.FileBasedIndexImpl.ensureUpToDate(FileBasedIndexImpl.java:670)
	at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:850)
	at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:936)
	at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:886)
	at com.intellij.util.indexing.FileBasedIndexImpl.processValues(FileBasedIndexImpl.java:791)
	at com.intellij.util.indexing.FileBasedIndexImpl.processValues(FileBasedIndexImpl.java:780)
	at com.intellij.psi.impl.cache.impl.IndexTodoCacheManagerImpl.fetchCount(IndexTodoCacheManagerImpl.java:103)
	at com.intellij.psi.impl.cache.impl.IndexTodoCacheManagerImpl.lambda$getTodoCount$1(IndexTodoCacheManagerImpl.java:89)
	at com.intellij.psi.impl.cache.impl.IndexTodoCacheManagerImpl$$Lambda$1836/206520198.applyAsInt(Unknown Source)

@hsz
Copy link
Member

hsz commented Sep 14, 2017

Can you please check if it's fixed with v2.2.1-RC2?

@Gerrit-K
Copy link

Sorry if this is the wrong place to ask, but is this issue related to this community post? I recently updated to 2017.2.4 and .ignore v.2.2.1 and my index keeps breaking every now and then. Indexing takes longer than usual and suddenly some files/classes are missing.

@hsz hsz closed this as completed Sep 21, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants