From 494689ff9ed52a32208a1c9966d30c50c0a3af3b Mon Sep 17 00:00:00 2001 From: gordon chung Date: Wed, 10 Dec 2014 11:53:14 -0500 Subject: [PATCH] remove useless looping in pipeline previously, the pipeline filtered at the publisher stage. this logic has been moved to an earlier stage yet we still do processing at publisher. this patch removes legacy code. at worse, it will have no effect on performance. at best, we publish quicker as we don't loop and groupby needlessly for each batch of samples. Change-Id: I2171c067bd8bb293a8478756f8b4938f312614a1 Closes-Bug: #1401176 --- ceilometer/pipeline.py | 7 +------ ceilometer/tests/pipeline_base.py | 4 ++-- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/ceilometer/pipeline.py b/ceilometer/pipeline.py index ee7210292..9c9e1b55c 100644 --- a/ceilometer/pipeline.py +++ b/ceilometer/pipeline.py @@ -18,8 +18,6 @@ # under the License. import fnmatch -import itertools -import operator import os from oslo.config import cfg @@ -312,10 +310,7 @@ class Sink(object): 'pub': p})) def publish_samples(self, ctxt, samples): - for meter_name, samples in itertools.groupby( - sorted(samples, key=operator.attrgetter('name')), - operator.attrgetter('name')): - self._publish_samples(0, ctxt, samples) + self._publish_samples(0, ctxt, samples) def flush(self, ctxt): """Flush data after all samples have been injected to pipeline.""" diff --git a/ceilometer/tests/pipeline_base.py b/ceilometer/tests/pipeline_base.py index aa72c432b..c0ada4c7d 100644 --- a/ceilometer/tests/pipeline_base.py +++ b/ceilometer/tests/pipeline_base.py @@ -869,11 +869,11 @@ class BasePipelineTestCase(base.BaseTestCase): pipe.publish_samples(None, counters) publisher = pipeline_manager.pipelines[0].publishers[0] self.assertEqual(2, len(publisher.samples)) - core_temp = publisher.samples[1] + core_temp = publisher.samples[0] self.assertEqual('core_temperature', getattr(core_temp, 'name')) self.assertEqual('°F', getattr(core_temp, 'unit')) self.assertEqual(96.8, getattr(core_temp, 'volume')) - amb_temp = publisher.samples[0] + amb_temp = publisher.samples[1] self.assertEqual('ambient_temperature', getattr(amb_temp, 'name')) self.assertEqual('°F', getattr(amb_temp, 'unit')) self.assertEqual(88.8, getattr(amb_temp, 'volume'))