Parsing all files of my custom language on startup?

I have custom language plugin. It looks like on startup, IDEA is going through
every file which is of my custom file type, in the entire project, and parsing
it. I don't think I'm doing something to cause this. It takes about 10 minutes
because we have lots of files of this type. I want to stop it. How do I stop it?

7 comments

Parsing is invoked through psi.impl.idCache.IdCacheUtil -> Psimanager.getFile

Keith Lea wrote:

I have custom language plugin. It looks like on startup, IDEA is going
through every file which is of my custom file type, in the entire
project, and parsing it. I don't think I'm doing something to cause
this. It takes about 10 minutes because we have lots of files of this
type. I want to stop it. How do I stop it?

0

Hello Keith,

That's quite strange. Indeed, the method will be called in order to build
search caches (word index). On the other hand indeep parsing should not be
called and only element for whole file should be created.

-


Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

Parsing is invoked through psi.impl.idCache.IdCacheUtil ->
Psimanager.getFile

Keith Lea wrote:

>> I have custom language plugin. It looks like on startup, IDEA is
>> going through every file which is of my custom file type, in the
>> entire project, and parsing it. I don't think I'm doing something to
>> cause this. It takes about 10 minutes because we have lots of files
>> of this type. I want to stop it. How do I stop it?
>>


0

Should I provide some more debug information?

On 2005-11-17 18:11:13 -0500, Maxim Shafirov (JetBrains)
<max@jetbrains.com> said:

Hello Keith,

That's quite strange. Indeed, the method will be called in order to
build search caches (word index). On the other hand indeep parsing
should not be called and only element for whole file should be created.

------------------
Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

>> Parsing is invoked through psi.impl.idCache.IdCacheUtil ->
>> Psimanager.getFile
>>
>> Keith Lea wrote:
>>
>>> I have custom language plugin. It looks like on startup, IDEA is
>>> going through every file which is of my custom file type, in the
>>> entire project, and parsing it. I don't think I'm doing something to
>>> cause this. It takes about 10 minutes because we have lots of files
>>> of this type. I want to stop it. How do I stop it?


0

Hello Keith,

Well, we can probably start from plain stacktrace to the point real parsing
happens in your code.

-


Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

Should I provide some more debug information?

On 2005-11-17 18:11:13 -0500, Maxim Shafirov (JetBrains)
<max@jetbrains.com> said:

>> Hello Keith,
>>
>> That's quite strange. Indeed, the method will be called in order to
>> build search caches (word index). On the other hand indeep parsing
>> should not be called and only element for whole file should be
>> created.
>>
>> -


>> Maxim Shafirov
>> JetBrains, Inc
>> http://www.jetbrains.com
>> "Develop with pleasure!"
>>> Parsing is invoked through psi.impl.idCache.IdCacheUtil ->
>>> Psimanager.getFile
>>>
>>> Keith Lea wrote:
>>>
>>>> I have custom language plugin. It looks like on startup, IDEA is
>>>> going through every file which is of my custom file type, in the
>>>> entire project, and parsing it. I don't think I'm doing something
>>>> to cause this. It takes about 10 minutes because we have lots of
>>>> files of this type. I want to stop it. How do I stop it?
>>>>


0

Here you go. It only happens sometimes, it seems. I wonder what you
think about this. Maybe I'm doing something wrong.


java.lang.Exception: Stack trace
at java.lang.Thread.dumpStack(Thread.java:1158)
at
ru.yole.pythonid.AbstractPythonLanguage.getFileCreator(AbstractPythonLanguage.java:82)
at
ru.yole.pythonid.PythonParserDefinition.createFile(PythonParserDefinition.java:59)
at
com.intellij.psi.impl.file.impl.FileManagerImpl.a(FileManagerImpl.java:122)
at
com.intellij.psi.impl.file.impl.FileManagerImpl.findFile(FileManagerImpl.java:16)
at com.intellij.psi.impl.PsiManagerImpl.findFile(PsiManagerImpl.java:81)
at com.intellij.psi.impl.PsiManagerImpl.getFile(PsiManagerImpl.java:344)
at
com.intellij.psi.impl.cache.impl.idCache.IdTableBuilding.getBuildingRunnable(IdTableBuilding.java:36)
at
com.intellij.psi.impl.cache.impl.idCache.IdCacheUtil.updateInfoForFile(IdCacheUtil.java:8)
at
com.intellij.psi.impl.cache.impl.idCache.MapBuilder.processFile(MapBuilder.java:18)
at
com.intellij.psi.impl.cache.impl.idCache.ImmutableIdCacheImpl$MyInitializer$MyRebuildingCacheUpdater.processFile(ImmutableIdCacheImpl.java:53)
at
com.intellij.psi.impl.cache.impl.idCache.ImmutableIdCacheImpl$MyInitializer.processFile(ImmutableIdCacheImpl.java:16)
at
com.intellij.psi.impl.cache.impl.CacheManagerImpl$4.processFile(CacheManagerImpl.java:8)
at
com.intellij.ide.startup.FileSystemSynchronizer.a(FileSystemSynchronizer.java:29)
at
com.intellij.ide.startup.FileSystemSynchronizer.execute(FileSystemSynchronizer.java:23)
at
com.intellij.ide.startup.impl.StartupManagerImpl$1.run(StartupManagerImpl.java:8)
at
com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:153)
at
com.intellij.ide.startup.impl.StartupManagerImpl.runStartupActivities(StartupManagerImpl.java:34)
at
com.intellij.openapi.project.impl.ProjectManagerImpl$4.run(ProjectManagerImpl.java)
at
com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:6)
at
com.intellij.openapi.application.impl.ApplicationImpl$1MyThread.run(ApplicationImpl.java:13)


Maxim Shafirov (JetBrains) wrote:

Hello Keith,

Well, we can probably start from plain stacktrace to the point real
parsing happens in your code.

------------------
Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

>> Should I provide some more debug information?
>>
>> On 2005-11-17 18:11:13 -0500, Maxim Shafirov (JetBrains)
>> <max@jetbrains.com> said:
>>
>>> Hello Keith,
>>>
>>> That's quite strange. Indeed, the method will be called in order to
>>> build search caches (word index). On the other hand indeep parsing
>>> should not be called and only element for whole file should be
>>> created.
>>>
>>> -


>>> Maxim Shafirov
>>> JetBrains, Inc
>>> http://www.jetbrains.com
>>> "Develop with pleasure!"
>>>
>>>> Parsing is invoked through psi.impl.idCache.IdCacheUtil ->
>>>> Psimanager.getFile
>>>>
>>>> Keith Lea wrote:
>>>>
>>>>> I have custom language plugin. It looks like on startup, IDEA is
>>>>> going through every file which is of my custom file type, in the
>>>>> entire project, and parsing it. I don't think I'm doing something
>>>>> to cause this. It takes about 10 minutes because we have lots of
>>>>> files of this type. I want to stop it. How do I stop it?
>>>>>


0

Here's I think a more appropriate trace which shows actual parsing.

java.lang.Exception: Stack trace
at java.lang.Thread.dumpStack(Thread.java:1158)
at ru.yole.pythonid.parsing.PyParser.parse(PyParser.java:24)
at com.intellij.extapi.psi.PsiFileBase.a(PsiFileBase.java:1)
at com.intellij.extapi.psi.PsiFileBase.(PsiFileBase.java) at ru.yole.pythonid.psi.PyFile.]]>(PyFile.java:36)
at
ru.yole.pythonid.AbstractPythonLanguage$1.createFile(AbstractPythonLanguage.java:88)
at
ru.yole.pythonid.PythonParserDefinition.createFile(PythonParserDefinition.java:63)
at
com.intellij.psi.impl.PsiElementFactoryImpl.createFileFromText(PsiElementFactoryImpl.java:181)
at
com.intellij.psi.impl.PsiElementFactoryImpl.createDummyFileFromText(PsiElementFactoryImpl.java:226)
at
com.intellij.psi.impl.cache.impl.CacheUtil.createFileCopy(CacheUtil.java:30)
at com.intellij.psi.impl.PsiManagerImpl.getFile(PsiManagerImpl.java:97)
at
com.intellij.psi.impl.cache.impl.idCache.IdTableBuilding.getBuildingRunnable(IdTableBuilding.java:36)
at
com.intellij.psi.impl.cache.impl.idCache.IdCacheUtil.updateInfoForFile(IdCacheUtil.java:8)
at
com.intellij.psi.impl.cache.impl.idCache.MapBuilder.processFile(MapBuilder.java:18)
at
com.intellij.psi.impl.cache.impl.idCache.ImmutableIdCacheImpl$MyInitializer$MyRebuildingCacheUpdater.processFile(ImmutableIdCacheImpl.java:53)
at
com.intellij.psi.impl.cache.impl.idCache.ImmutableIdCacheImpl$MyInitializer.processFile(ImmutableIdCacheImpl.java:16)
at
com.intellij.psi.impl.cache.impl.CacheManagerImpl$4.processFile(CacheManagerImpl.java:8)
at
com.intellij.ide.startup.FileSystemSynchronizer.a(FileSystemSynchronizer.java:29)
at
com.intellij.ide.startup.FileSystemSynchronizer.execute(FileSystemSynchronizer.java:23)
at
com.intellij.ide.startup.impl.StartupManagerImpl$1.run(StartupManagerImpl.java:8)
at
com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:153)
at
com.intellij.ide.startup.impl.StartupManagerImpl.runStartupActivities(StartupManagerImpl.java:34)
at
com.intellij.openapi.project.impl.ProjectManagerImpl$4.run(ProjectManagerImpl.java)
at
com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:6)
at
com.intellij.openapi.application.impl.ApplicationImpl$1MyThread.run(ApplicationImpl.java:13)


Maxim Shafirov (JetBrains) wrote:

Hello Keith,

Well, we can probably start from plain stacktrace to the point real
parsing happens in your code.

------------------
Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

>> Should I provide some more debug information?
>>
>> On 2005-11-17 18:11:13 -0500, Maxim Shafirov (JetBrains)
>> <max@jetbrains.com> said:
>>
>>> Hello Keith,
>>>
>>> That's quite strange. Indeed, the method will be called in order to
>>> build search caches (word index). On the other hand indeep parsing
>>> should not be called and only element for whole file should be
>>> created.
>>>
>>> -


>>> Maxim Shafirov
>>> JetBrains, Inc
>>> http://www.jetbrains.com
>>> "Develop with pleasure!"
>>>
>>>> Parsing is invoked through psi.impl.idCache.IdCacheUtil ->
>>>> Psimanager.getFile
>>>>
>>>> Keith Lea wrote:
>>>>
>>>>> I have custom language plugin. It looks like on startup, IDEA is
>>>>> going through every file which is of my custom file type, in the
>>>>> entire project, and parsing it. I don't think I'm doing something
>>>>> to cause this. It takes about 10 minutes because we have lots of
>>>>> files of this type. I want to stop it. How do I stop it?
>>>>>


0

These are from build 3542.

Keith Lea wrote:

Here's I think a more appropriate trace which shows actual parsing.

java.lang.Exception: Stack trace
at java.lang.Thread.dumpStack(Thread.java:1158)
at ru.yole.pythonid.parsing.PyParser.parse(PyParser.java:24)
at com.intellij.extapi.psi.PsiFileBase.a(PsiFileBase.java:1)
at com.intellij.extapi.psi.PsiFileBase.<init>(PsiFileBase.java)
at ru.yole.pythonid.psi.PyFile.<init>(PyFile.java:36)
at
ru.yole.pythonid.AbstractPythonLanguage$1.createFile(AbstractPythonLanguage.java:88)

at
ru.yole.pythonid.PythonParserDefinition.createFile(PythonParserDefinition.java:63)

at
com.intellij.psi.impl.PsiElementFactoryImpl.createFileFromText(PsiElementFactoryImpl.java:181)

at
com.intellij.psi.impl.PsiElementFactoryImpl.createDummyFileFromText(PsiElementFactoryImpl.java:226)

at
com.intellij.psi.impl.cache.impl.CacheUtil.createFileCopy(CacheUtil.java:30)

at com.intellij.psi.impl.PsiManagerImpl.getFile(PsiManagerImpl.java:97)
at
com.intellij.psi.impl.cache.impl.idCache.IdTableBuilding.getBuildingRunnable(IdTableBuilding.java:36)

at
com.intellij.psi.impl.cache.impl.idCache.IdCacheUtil.updateInfoForFile(IdCacheUtil.java:8)

at
com.intellij.psi.impl.cache.impl.idCache.MapBuilder.processFile(MapBuilder.java:18)

at
com.intellij.psi.impl.cache.impl.idCache.ImmutableIdCacheImpl$MyInitializer$MyRebuildingCacheUpdater.processFile(ImmutableIdCacheImpl.java:53)

at
com.intellij.psi.impl.cache.impl.idCache.ImmutableIdCacheImpl$MyInitializer.processFile(ImmutableIdCacheImpl.java:16)

at
com.intellij.psi.impl.cache.impl.CacheManagerImpl$4.processFile(CacheManagerImpl.java:8)

at
com.intellij.ide.startup.FileSystemSynchronizer.a(FileSystemSynchronizer.java:29)

at
com.intellij.ide.startup.FileSystemSynchronizer.execute(FileSystemSynchronizer.java:23)

at
com.intellij.ide.startup.impl.StartupManagerImpl$1.run(StartupManagerImpl.java:8)

at
com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:153)

at
com.intellij.ide.startup.impl.StartupManagerImpl.runStartupActivities(StartupManagerImpl.java:34)

at
com.intellij.openapi.project.impl.ProjectManagerImpl$4.run(ProjectManagerImpl.java)

at
com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:6)

at
com.intellij.openapi.application.impl.ApplicationImpl$1MyThread.run(ApplicationImpl.java:13)



Maxim Shafirov (JetBrains) wrote:

>> Hello Keith,
>>
>> Well, we can probably start from plain stacktrace to the point real
>> parsing happens in your code.
>>
>> -


>> Maxim Shafirov
>> JetBrains, Inc
>> http://www.jetbrains.com
>> "Develop with pleasure!"
>>
>>> Should I provide some more debug information?
>>>
>>> On 2005-11-17 18:11:13 -0500, Maxim Shafirov (JetBrains)
>>> <max@jetbrains.com> said:
>>>
>>>> Hello Keith,
>>>>
>>>> That's quite strange. Indeed, the method will be called in order to
>>>> build search caches (word index). On the other hand indeep parsing
>>>> should not be called and only element for whole file should be
>>>> created.
>>>>
>>>> -


>>>> Maxim Shafirov
>>>> JetBrains, Inc
>>>> http://www.jetbrains.com
>>>> "Develop with pleasure!"
>>>>
>>>>> Parsing is invoked through psi.impl.idCache.IdCacheUtil ->
>>>>> Psimanager.getFile
>>>>>
>>>>> Keith Lea wrote:
>>>>>
>>>>>> I have custom language plugin. It looks like on startup, IDEA is
>>>>>> going through every file which is of my custom file type, in the
>>>>>> entire project, and parsing it. I don't think I'm doing something
>>>>>> to cause this. It takes about 10 minutes because we have lots of
>>>>>> files of this type. I want to stop it. How do I stop it?
>>>>>>
>>
>>

0

Please sign in to leave a comment.