Project

General

Profile

Actions

Bug #7557

closed

Promises are not regenerated during upgrade

Bug #7557: Promises are not regenerated during upgrade

Added by Nicolas CHARLES almost 10 years ago. Updated almost 10 years ago.

Status:
Released
Priority:
1 (highest)
Category:
Web - Config management
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

I upgraded from 2.11nightly to 3.1nightly, on SLES11, and promises were no regenerated - it prevented reporting from happening
Event logs show

49    2015-12-07 18:49    rudder    Application started    Rudder starts
48    2015-12-07 18:49    rudder    Policy update started automatically    Automatically update policies

I also got the following errors in the logs

[2015-12-07 18:49:11] WARN  com.normation.rudder.services.policies.nodeconfig.LdapNodeConfigurationCacheRepository - Ignoring following node configuration cache info because of deserialisation error: {"id":{"val
ue":"4703e34e-feaa-4653-8d13-f4bb7eaebf5b"},"writtenDate":"2015-12-07T17:41:43.295Z","nodeInfoCache":1426327174,"parameterCache":-2085047362,"nodeContextCache":-1541259392,"policyCache":[{"ruleId":{"value":"inve
ntory-all"},"draftId":{"value":"inventory-all@@inventory-all"},"cacheValue":-765781656},{"ruleId":{"value":"dc99a03f-4752-4850-9a98-f67c4e4b2cba"},"draftId":{"value":"dc99a03f-4752-4850-9a98-f67c4e4b2cba@@796725
8f-04cc-475e-b5bb-18f89c0cc5ef"},"cacheValue":316328241},{"ruleId":{"value":"dc99a03f-4752-4850-9a98-f67c4e4b2cba"},"draftId":{"value":"dc99a03f-4752-4850-9a98-f67c4e4b2cba@@9e926b89-d2d2-48f2-9f97-b56e1534ccc1" 
},"cacheValue":-1440161808},{"ruleId":{"value":"hasPolicyServer-root"},"draftId":{"value":"hasPolicyServer-root@@common-root"},"cacheValue":768346630},{"ruleId":{"value":"32377fd7-02fd-43d0-aab7-28460a91347b"}," 
draftId":{"value":"32377fd7-02fd-43d0-aab7-28460a91347b@@5580ad5c-81a7-4fc8-880e-39a5d343c5c8"},"cacheValue":-1182879005}]}
net.liftweb.json.MappingException: Parsed JSON values do not match with class constructor
args=
arg types=
constructor=public com.normation.rudder.services.policies.nodeconfig.NodeConfigurationCache(com.normation.inventory.domain.NodeId,scala.Option,int,int,int,scala.collection.immutable.Set)


Subtasks 2 (0 open2 closed)

Bug #7560: Reload technique API call must be synchroneReleasedVincent MEMBRÉActions
Bug #7562: Reload technique API call must be synchrone (cfclerk part)ReleasedVincent MEMBRÉActions

Updated by Nicolas CHARLES almost 10 years ago Actions #1

  • Assignee set to François ARMAND
  • Priority changed from N/A to 1 (highest)

Ha, logs show

[2015-12-07 18:33:42] INFO  migration - Migration of inline variables in Directives to 'rudder' namespace already done, skipping
[2015-12-07 18:33:42] INFO  bootstrap.liftweb.checks.CheckTechniqueLibraryReload - Flag file '/opt/rudder/etc/force_technique_reload' found, reload Technique library now
[2015-12-07 18:33:43] INFO  com.normation.cfclerk.services.impl.TechniqueRepositoryImpl - Reloading technique library, found modified technique(s): common/1.0, server-roles/1.0
[2015-12-07 18:33:43] ERROR com.normation.rudder.services.policies.SaveDirectivesOnTechniqueCallback - Error when trying to save directive based on updated Techniques <- System directive 'Server Roles' (server-r
oles-directive) can't be updated <- System directive 'Common' (common-root) can't be updated <- System directive 'Common' (common-root) can't be updated
[2015-12-07 18:33:43] INFO  com.normation.rudder.services.policies.DeployOnTechniqueCallback - Reload Technique library at start up
[2015-12-07 18:33:43] INFO  com.normation.rudder.services.policies.DeploymentServiceImpl - Start policy generation, checking updated rules
[2015-12-07 18:33:43] INFO  bootstrap.liftweb.checks.CheckTechniqueLibraryReload - Successfully reloaded Technique library on start up. now deleting flag file '/opt/rudder/etc/force_technique_reload'
[2015-12-07 18:33:43] INFO  bootstrap.liftweb.checks.CheckTechniqueLibraryReload - Flag file '/opt/rudder/etc/force_technique_reload' successfully removed

Updated by Jonathan CLARKE almost 10 years ago Actions #2

Also, if the promise generation launched by a technique reload fails, we should not finish with "Successfully reloaded Technique library" and removing the reload file.

If we leave the reload file, the next rudder-jetty restart could try again and maybe succeed. If we don't (as now), we're doomed except for manual intervention.

Updated by François ARMAND almost 10 years ago Actions #3

  • Status changed from New to In progress

Updated by François ARMAND almost 10 years ago Actions #4

  • Status changed from In progress to Pending technical review
  • Assignee changed from François ARMAND to Vincent MEMBRÉ
  • Pull Request set to https://github.com/Normation/rudder/pull/988

Updated by François ARMAND almost 10 years ago Actions #5

  • Status changed from Pending technical review to Pending release
  • % Done changed from 0 to 100

Updated by François ARMAND almost 10 years ago Actions #8

  • Target version changed from 3.1.5 to 2.11.17

The problem is in 2.11 and the patch was backported to that branch in 4c7f85d

Updated by François ARMAND almost 10 years ago Actions #9

  • Category set to Web - Config management

Updated by Vincent MEMBRÉ almost 10 years ago Actions #10

  • Subject changed from During upgrade from 2.11nightly to 3.1nightly, promises are not regenerated to Promises are not regenerated during upgrade

Updated by Vincent MEMBRÉ almost 10 years ago Actions #11

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 2.11.17, 3.0.12 and 3.1.5 which were released today.

Actions

Also available in: PDF Atom