Bug #3783
closedError when unserializing ChangeRequest modifying Directives based on Techniques that have been deleted
Description
Following http://www.rudder-project.org/redmine/issues/3759, I now have exception when deserializing change request
[2013-07-24 12:32:04] ERROR application - Failure(could not deserialize directive change of change request #73 cause is: Failure(Could not deserialize directives changes cause A regex constraint was created with an empty pattern, which has no meaning,Empty,Empty),Empty,Full(Failure(Could not deserialize directives changes cause A regex constraint was created with an empty pattern, which has no meaning,Empty,Empty)))
Here is a CR responsible for this issue
2013-04-10 18:14:43.622+02 | <changeRequest fileFormat="4"><groups/><directives><directive id="c0283a06-1dfd-459e-b81a-34ea8fcc88f9"><initialState><directive fileFormat="4"><id>c0283a06-1dfd-459e-b81a-34ea8fcc88f9</id><displayName>sqCopy of <backslash></displayName><techniqueName>aptPackageInstallation</techniqueName><techniqueVersion>1.0</techniqueVersion><section name="sections"><section name="Debian/Ubuntu packages"><var name="APT_PACKAGE_DEBACTION">add</var><var name="APT_PACKAGE_DEBLIST">another \ package</var></section></section><shortDescription>sqfdsqfd</shortDescription><longDescription/><priority>5</priority><isEnabled>true</isEnabled><isSystem>false</isSystem></directive></initialState><firstChange><change><actor>jon.doe</actor><date>2013-04-10T18:14:43.616+02:00</date><reason>fdghfdghgfdhdfh</reason><diff action="modifyTo"><directive fileFormat="4"><id>c0283a06-1dfd-459e-b81a-34ea8fcc88f9</id><displayName>sqCopy of <backslash></displayName><techniqueName>aptPackageInstallation</techniqueName><techniqueVersion>1.0</techniqueVersion><section name="sections"><section name="Debian/Ubuntu packages"><var name="APT_PACKAGE_DEBACTION">add</var><var name="APT_PACKAGE_DEBLIST">another \ package dfdh</var></section></section><shortDescription>sqfdsqfd</shortDescription><longDescription/><priority>5</priority><isEnabled>true</isEnabled><isSystem>false</isSystem></directive></diff><rootSection><SECTIONS><SECTION name="Debian/Ubuntu packages" multivalued="true" component="true" foldable="false" componentKey="APT_PACKAGE_DEBLIST"><INPUT><NAME>APT_PACKAGE_DEBLIST</NAME><DESCRIPTION>Package name</DESCRIPTION><LONGDESCRIPTION/><UNIQUEVARIABLE>false</UNIQUEVARIABLE><MULTIVALUED>true</MULTIVALUED><CHECKED>true</CHECKED><CONSTRAINT><TYPE>string</TYPE><MAYBEEMPTY>false</MAYBEEMPTY><REGEX/></CONSTRAINT></INPUT><SELECT1><NAME>APT_PACKAGE_DEBACTION</NAME><DESCRIPTION>Action to perform on this package</DESCRIPTION><LONGDESCRIPTION/><UNIQUEVARIABLE>false</UNIQUEVARIABLE><MULTIVALUED>true</MULTIVALUED><CHECKED>true</CHECKED><ITEM><VALUE>add</VALUE><LABEL>Install only (don't update)</LABEL></ITEM><ITEM><VALUE>update</VALUE><LABEL>Update only (don't install)</LABEL></ITEM><ITEM><VALUE>delete</VALUE><LABEL>Remove</LABEL></ITEM><CONSTRAINT><TYPE>string</TYPE><DEFAULT>add</DEFAULT><MAYBEEMPTY>false</MAYBEEMPTY><REGEX/></CONSTRAINT></SELECT1></SECTION></SECTIONS></rootSection></change></firstChange><nextChanges/></directive></directives><rules/><globalParameters></globalParameters></changeRequest>
Updated by Nicolas PERRON over 11 years ago
- Target version changed from 2.6.3 to 2.6.4
Updated by Jonathan CLARKE over 11 years ago
- Target version changed from 2.6.4 to 2.7.0
According to Nicolas, this error occurs when going on to the Change Request page for a change to a Directive attached to a Technique without regex validation on one of it's inputs.
However, we just tested in 2.6 and this is not reproducible. Moving to 2.7 to check...
Updated by Jonathan CLARKE over 11 years ago
- Status changed from New to Rejected
Jonathan CLARKE wrote:
According to Nicolas, this error occurs when going on to the Change Request page for a change to a Directive attached to a Technique without regex validation on one of it's inputs.
However, we just tested in 2.6 and this is not reproducible. Moving to 2.7 to check...
Tested in 2.7, and this is not reproducible.
Updated by Alexis Mousset about 3 years ago
- Translation missing: en.field_tag_list set to Sponsored
- Status changed from Rejected to New
- Target version changed from 2.7.0 to 6.1.17
- User visibility set to Infrequent - complex configurations | third party integrations
- Priority set to 0
Reopening, we saw this happen again recently.
Updated by Nicolas CHARLES about 3 years ago
- Assignee changed from François ARMAND to Nicolas CHARLES
So cause is that we search in the technique repository for the technique associated with the directive
but we can delete technique, so the unserialization fails
Updated by Nicolas CHARLES about 3 years ago
- Status changed from New to In progress
Updated by Nicolas CHARLES about 3 years ago
- Subject changed from Error when unserializing ChangeRequest modifying Directives based on Techniques with REGEX to Error when unserializing ChangeRequest modifying Directives based on Techniques that have been deleted
Updated by Nicolas CHARLES about 3 years ago
- Status changed from In progress to Pending technical review
- Assignee changed from Nicolas CHARLES to François ARMAND
- Pull Request set to https://github.com/Normation/rudder/pull/3916
Updated by Nicolas CHARLES about 3 years ago
- Related to Bug #20087: adapt plugin to changes in #3783 to show directive change based on deleted technique added
Updated by Nicolas CHARLES about 3 years ago
- Status changed from Pending technical review to Pending release
Applied in changeset rudder|00b392dc14cad22bb889af283904ab862ddd2c35.
Updated by Vincent MEMBRÉ about 3 years ago
- Status changed from Pending release to Released
This bug has been fixed in Rudder 6.1.17 and 6.2.11 which were released today.