summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Plugins/Probes.py
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2013-11-11 15:46:09 -0500
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2013-11-11 15:46:09 -0500
commite30c785c94c5aa399c44fff386fa2279f64f1acc (patch)
treee72c636dcae00a6ea0c668cfbee7d3e6b4e6a3fe /src/lib/Bcfg2/Server/Plugins/Probes.py
parent7aa15c4c5507e311ff66264bc31e6758a80eb337 (diff)
parent103b1b5198828876fa0684296900769018075f1b (diff)
downloadbcfg2-e30c785c94c5aa399c44fff386fa2279f64f1acc.tar.gz
bcfg2-e30c785c94c5aa399c44fff386fa2279f64f1acc.tar.bz2
bcfg2-e30c785c94c5aa399c44fff386fa2279f64f1acc.zip
Merge branch 'maint'
Conflicts: src/lib/Bcfg2/Server/Admin/Compare.py src/lib/Bcfg2/Server/Admin/Snapshots.py src/lib/Bcfg2/Server/MultiprocessingCore.py src/lib/Bcfg2/Server/Plugins/Probes.py src/sbin/bcfg2-crypt src/sbin/bcfg2-reports tools/upgrade/1.3/migrate_configs.py tools/upgrade/1.3/migrate_perms_to_mode.py
Diffstat (limited to 'src/lib/Bcfg2/Server/Plugins/Probes.py')
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Probes.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/Probes.py b/src/lib/Bcfg2/Server/Plugins/Probes.py
index ec5c1ab9f..9f2375fcd 100644
--- a/src/lib/Bcfg2/Server/Plugins/Probes.py
+++ b/src/lib/Bcfg2/Server/Plugins/Probes.py
@@ -175,9 +175,16 @@ class DBProbeStore(ProbeStore, Bcfg2.Server.Plugin.DatabaseBacked):
expire_metadata = False
for probe, pdata in data.items():
self._datacache[hostname][probe] = pdata
- record, created = ProbesDataModel.objects.get_or_create(
- hostname=hostname,
- probe=probe)
+ try:
+ record, created = ProbesDataModel.objects.get_or_create(
+ hostname=hostname,
+ probe=probe)
+ except ProbesDataModel.MultipleObjectsReturned:
+ ProbesDataModel.objects.filter(hostname=hostname,
+ probe=probe).delete()
+ record, created = ProbesDataModel.objects.get_or_create(
+ hostname=hostname,
+ probe=probe)
expire_metadata |= created
if record.data != pdata:
record.data = pdata
@@ -447,7 +454,6 @@ class Probes(Bcfg2.Server.Plugin.Probing,
def GetProbes(self, metadata):
return self.probes.get_probe_data(metadata)
- @track_statistics()
def ReceiveData(self, client, datalist):
cgroups = set()
cdata = dict()