diff options
author | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2012-01-13 11:52:25 -0500 |
---|---|---|
committer | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2012-01-13 11:52:25 -0500 |
commit | 6db7cd19b6ea4f9aea785e84c3c178fdc163ba08 (patch) | |
tree | fd4855dcd09926786ac095cbd7d8e7b1b5c87150 /src/lib/Server/Plugins | |
parent | 56292eaac58c78a7e89d3c264b13b348e5d65a8f (diff) | |
download | bcfg2-6db7cd19b6ea4f9aea785e84c3c178fdc163ba08.tar.gz bcfg2-6db7cd19b6ea4f9aea785e84c3c178fdc163ba08.tar.bz2 bcfg2-6db7cd19b6ea4f9aea785e84c3c178fdc163ba08.zip |
cherry-picked a2cc392 Switch to shallow rather than deep copies to improve performance
Diffstat (limited to 'src/lib/Server/Plugins')
-rw-r--r-- | src/lib/Server/Plugins/Base.py | 2 | ||||
-rw-r--r-- | src/lib/Server/Plugins/Bundler.py | 2 | ||||
-rw-r--r-- | src/lib/Server/Plugins/Metadata.py | 2 | ||||
-rw-r--r-- | src/lib/Server/Plugins/Properties.py | 2 | ||||
-rw-r--r-- | src/lib/Server/Plugins/Statistics.py | 2 |
5 files changed, 5 insertions, 5 deletions
diff --git a/src/lib/Server/Plugins/Base.py b/src/lib/Server/Plugins/Base.py index 5de57a87c..e8d798ae4 100644 --- a/src/lib/Server/Plugins/Base.py +++ b/src/lib/Server/Plugins/Base.py @@ -41,5 +41,5 @@ class Base(Bcfg2.Server.Plugin.Plugin, fragments = reduce(lambda x, y: x + y, [base.Match(metadata) for base in list(self.entries.values())], []) - [ret.append(copy.deepcopy(frag)) for frag in fragments] + [ret.append(copy.copy(frag)) for frag in fragments] return [ret] diff --git a/src/lib/Server/Plugins/Bundler.py b/src/lib/Server/Plugins/Bundler.py index 4b73a17d4..04aa3df71 100644 --- a/src/lib/Server/Plugins/Bundler.py +++ b/src/lib/Server/Plugins/Bundler.py @@ -24,7 +24,7 @@ class BundleFile(Bcfg2.Server.Plugin.StructFile): def get_xml_value(self, metadata): bundlename = os.path.splitext(os.path.basename(self.name))[0] bundle = lxml.etree.Element('Bundle', name=bundlename) - [bundle.append(copy.deepcopy(item)) for item in self.Match(metadata)] + [bundle.append(copy.copy(item)) for item in self.Match(metadata)] return bundle diff --git a/src/lib/Server/Plugins/Metadata.py b/src/lib/Server/Plugins/Metadata.py index 8afcd9c50..f837b1305 100644 --- a/src/lib/Server/Plugins/Metadata.py +++ b/src/lib/Server/Plugins/Metadata.py @@ -78,7 +78,7 @@ class XMLMetadataConfig(object): except lxml.etree.XMLSyntaxError: self.logger.error('Failed to parse %s' % (self.basefile)) return - self.basedata = copy.deepcopy(xdata) + self.basedata = copy.copy(xdata) included = [ent.get('href') for ent in \ xdata.findall('./{http://www.w3.org/2001/XInclude}include')] if included: diff --git a/src/lib/Server/Plugins/Properties.py b/src/lib/Server/Plugins/Properties.py index 9b44942cd..76945b3a0 100644 --- a/src/lib/Server/Plugins/Properties.py +++ b/src/lib/Server/Plugins/Properties.py @@ -74,4 +74,4 @@ class Properties(Bcfg2.Server.Plugin.Plugin, raise Bcfg2.Server.Plugin.PluginInitError def get_additional_data(self, _): - return copy.deepcopy(self.store.entries) + return copy.copy(self.store.entries) diff --git a/src/lib/Server/Plugins/Statistics.py b/src/lib/Server/Plugins/Statistics.py index 7251ab1b5..9dbbeec28 100644 --- a/src/lib/Server/Plugins/Statistics.py +++ b/src/lib/Server/Plugins/Statistics.py @@ -98,7 +98,7 @@ class StatisticsStore(object): newstat.set('time', asctime(localtime())) # Add statistic - node.append(copy.deepcopy(newstat)) + node.append(copy.copy(newstat)) # Set dirty self.dirty = 1 |