Bug #4139
closedError when deleting a newly created Directive ("Exception when trying to update a change request:: Error when deleting policy instanc with ID DirectiveId(...)")
Description
On a brand new install of 2.8.0, I went into the web interface, and modified the config of the change message (that is the message that is displayed to users). I don't know if this is relevant, but I thought it worth mentioning. I did not enable Change Requests, or change any other configs.
Then, I created a Directive (from Technique "zypperPackageManagerSettings" version 1.0, in case that matters), this worked fine. The exact technical details from the event log are:
<entry> <directive fileFormat="4" changeType="add"> <id>90d9c3fe-97a1-47ca-8f48-610abe0ecd94</id> <displayName>DSDSDS</displayName> <techniqueName>zypperPackageManagerSettings</techniqueName> <techniqueVersion>1.0</techniqueVersion> <section name="sections"> <section name="General settings"> <var name="ZYPPER_INSTALLRECOMMENDS">dontchange</var> </section> <section name="Repository settings"> <var name="ZYPPER_ADDREPOSITORIES">false</var> <var name="ZYPPER_DISABLEREPOSITORIES">false</var> <section name="Repository"> <var name="ZYPPER_ENABLED">1</var> <var name="ZYPPER_NAME"/> <var name="ZYPPER_TYPE">yast2</var> <var name="ZYPPER_URL"/> </section> </section> </section> <shortDescription/> <longDescription/> <priority>5</priority> <isEnabled>true</isEnabled> <isSystem>false</isSystem> </directive> </entry>
Then, I deleted the Directive. I got a change message dialog box, filled it and pressed save (no problem so far). Then, I saw a rule generation start, and I got a "Cannot contact server at this time" dialog box.
Since then, I have two symptoms something is wrong:
- The rule generation never finishes, it is continually "generation"
- I noticed this in the logs:
[2013-11-07 19:26:15] INFO com.normation.rudder.services.servers.NodeConfigurationServiceImpl - Configuration of following nodes were updated, their promises are going to be written: root [2013-11-07 19:26:24] INFO changeRequest - Saving and deploying change request 1 [2013-11-07 19:26:29] INFO changeRequest - Saving and deploying change request 2 [2013-11-07 19:26:29] ERROR com.normation.rudder.web.components.popup.ModificationValidationPopup - Exception when trying to update a change request:: Error when deleting policy instanc with ID DirectiveId(90d9c3fe-97a1-47ca-8f48-610abe0ecd94). All dependent rules where deleted ().
I assume that "change request 1" was when I created the Directive, and "change request 2" was when I deleted it. However, change requests are not enabled, so there is obviously something wrong here (or else the log messages are extremely misleading and should be changed).
I have not continued to test, in case showing the current state to a developer may help debug this problem. I'm keeping the VM in a safe place in it's broken status.