- edited description
Infinite loop of "Resolve Configuration Issues" notifications
I saw in the release notes that some things had changed with how modules worked in the underlying Intellij platform, so I decided to re-create my project from scratch. This is on a monorepo with 38 SFDX projects, each of which contains a single package. When I run the “New project from sources” workflow, all of the top level folders are detected as IC2 modules.
To avoid repetitive UI clicks, I have a script that fixes up the .iml
files in each module to include the Illuminated Cloud FacetManager element. After running the script everything was fine. I then closed the reopened the project, and I’m getting an endless loop of notifications that say:
Resolve Configuration Issues
Set the SDK for ‘mmscratch09’.
The mmscratch09
reference is the alias of the scratch org that all of my modules have set as their connection. I’m not sure how to fix this.
Here’s a representative .iml
file from one of the modules:
<?xml version="1.0" encoding="UTF-8"?>
<module type="GENERAL_MODULE" version="4">
<component name="FacetManager">
<facet type="IlluminatedCloud" name="Illuminated Cloud">
<configuration>
<option name="connectionName" value="mmscratch09" />
<option name="connectionType" value="SFDX" />
<option name="moduleContents">
<ModuleContents>
<option name="contentSelectionType" value="SELECTED" />
</ModuleContents>
</option>
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/config" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/force-app" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/.sfdx" />
<excludeFolder url="file://$MODULE_DIR$/.sf" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
When the non-stop messages start popping, it essentially locks the UI because each new message that pops up seems to be grabbing focus, so it’s hard to even use the app menu at the top of the screen (I’m on a Mac). I’ve attached a thread dump.
Comments (13)
-
reporter -
reporter I figured out the problem. I had two SDKs using the same scratch org (one for
sfdc-org
, which is my usual project name, and one forsfdc2-org
which I had used for a test:
I had selected the
sfdc2-org
SDK as the Project SDK in thesfdc-org
project, which for some reason was causing the infinite notifications. When I changed to thesfdc-org
SDK and then closed and reopened the project, everything was back to normal.I’ll lower the priority, but it’s clearly still a bug that this would happen.
-
reporter - marked as minor
-
repo owner Mark, I’m not sure that I follow the actual issue. I have many SDKs that use the same org and haven’t seen anything like that. Can you describe the precise scenario that would lead to this? Apologies if my brain has just reached end-of-day mode…might need to try to digest what you’ve written here again tomorrow morning.
-
reporter Hi Scott, all of this is with respect to the same salesforce org, but two different IC2 projects created for that org. My “normal” project is called
sfdc-org
. I created a new project calledsfdc2-org
to test out the process of starting from scratch with IC2 in case the change to module types mentioned recently in release notes would change anything (making our documentation out of date).After I had validated everything in
sfdc2-org
, I deleted the.idea
folder and all.iml
files in my regularsfdc-org
folder, and re-created the project via theNew project from existing sources
flow. Then, I selected the SDK that had been created in thesfdc2-org
project as the project level SDK so that “inheritedJdk” would work for the modules. I then fixed up the rest via a script (sets the default username for each project/package, adds the FacetManager component element if missing). Then I closed and reopened the project, and started seeing all of the errors.When I switched the SDK to the one created in the
sfdc-org
project, the errors stopped. So something about trying to use an SDK created from another IC2 project (but visible in the current project) wasn’t working.So I think there are two issues here:
- Why were there errors when trying to use an SDK created by another project (but for the same org/codebase) in the current project?
- When the error condition happened, what caused it to continually report the errors in an infinite loop rather than reporting them once and stopping?
-
repo owner - changed status to open
-
repo owner Mark, I’d have to investigate the full reason, but IC2’s SDKs are inherently coded as
<projectName>-<connectionName>
, so it’s possible that using an SDK from another project is resulting in some downstream issue(s). In general it’s best to use the project-specific SDK for a given project. -
repo owner This actually happened to me today in one of my multi-module test projects. It’s weird in that IC2 sets the module’s SDK, then the next time it checks whether an SDK is set, it gets back
null
. I’m fixing it now…or at least putting a workaround in place by consulting a different path for whether it’s been set. Just thought you’d like to know… -
Has this issue been resolved or is there a workaround? I’m experiencing it in one of my projects. Just started happening today.
-
repo owner Trent, I haven’t heard about it or experienced it myself in a long while, but that doesn’t mean it’s 100% eliminated. Can you please make sure that you’re on the absolute latest builds of both the JetBrains IDE and IC2 and, if the issue is still present, please enable debug logging for module validation, reproduce the behavior, and either attach or email the resulting
idea.log
file for review? -
repo owner - changed component to Module Configuration
-
Scott, I’m a bit slow in my reply. I was able to work around the issue by just creating a new project. If it comes up again, I will let you know. Thank you for your quick reply.
-
repo owner - changed status to resolved
Issue tracker grooming. If this happens again, please reopen with new diagnostic information.
- Log in to comment