Project

General

Profile

Actions

Bug #3555

closed

Class name collision 'cant_send_inventory' between inventory and distributePolicy Techniques

Added by Jonathan CLARKE over 11 years ago. Updated over 11 years ago.

Status:
Released
Priority:
1 (highest)
Assignee:
Jonathan CLARKE
Category:
System techniques
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

On a fresh install of Rudder server 2.6.0~rc1, I'm seeing these non-compliance errors in /var/log/rudder/compliance/non-compliant-reports.log:

[2013-04-28 18:30:39+0200] N: root [server] S: [result_error] R: root-DP [distributePolicy] D: root-distributePolicy [Distribute Policy] T: distributePolicy/1.0 C: [Send inventories to CMDB] V: [None] Some inventories failed to add successfully to Rudder

However, when I look in /var/rudder/inventories/incoming and /var/rudder/inventories/accepted-nodes-updates/, there are no inventories waiting. This non-compliance log is generated in the distributePolicy/1.0/propagatePromises.cf file, based on the "cant_send_inventory::" class.

After some investigating, I found this when running cf-agent -v:

rudder>  -> Additional classes = { cant_send_inventory inventory_sent policy_server root_server site_ok }

This means that the 'cant_send_inventory' class is defined persistently. However, this doesn't come from distributePolicy, but from the inventory Technique, which uses the exact same class name. This should be fine, as it should be cancelled by the inventory Technique when it succeeds (which it has), but for some reason it is not.

An easy fix here is just to use another class name.

Actions

Also available in: Atom PDF