diff options
| author | Luke Kanies <luke@puppetlabs.com> | 2010-04-12 22:33:32 -0700 |
|---|---|---|
| committer | James Turnbull <james@lovedthanlost.net> | 2010-05-02 18:01:24 +1000 |
| commit | 5258a0afccf0563d3000c63e261c201115c31c33 (patch) | |
| tree | f1016e3124eda9250aab8e4134a22243874e421d | |
| parent | bcde541e4433aa46c9f922b01e34368a09abb7e8 (diff) | |
| download | puppet-5258a0afccf0563d3000c63e261c201115c31c33.tar.gz puppet-5258a0afccf0563d3000c63e261c201115c31c33.tar.xz puppet-5258a0afccf0563d3000c63e261c201115c31c33.zip | |
Fixing #3533 - Removing all transaction cleanup
It's really slow and has no actual functionality
any more, since we just remove the catalogs from memory
anyway.
This should be a good speed boost for very little effort.
Signed-off-by: Luke Kanies <luke@puppetlabs.com>
| -rw-r--r-- | lib/puppet/resource/catalog.rb | 7 | ||||
| -rw-r--r-- | lib/puppet/transaction.rb | 8 | ||||
| -rwxr-xr-x | spec/unit/resource/catalog.rb | 37 | ||||
| -rwxr-xr-x | test/other/transactions.rb | 5 |
4 files changed, 0 insertions, 57 deletions
diff --git a/lib/puppet/resource/catalog.rb b/lib/puppet/resource/catalog.rb index f49c95540..6f589083c 100644 --- a/lib/puppet/resource/catalog.rb +++ b/lib/puppet/resource/catalog.rb @@ -160,7 +160,6 @@ class Puppet::Resource::Catalog < Puppet::SimpleGraph ensure @applying = false cleanup() - transaction.cleanup if defined? transaction and transaction end # Are we in the middle of applying the catalog? @@ -508,12 +507,6 @@ class Puppet::Resource::Catalog < Puppet::SimpleGraph private def cleanup - unless @transient_resources.empty? - remove_resource(*@transient_resources) - @transient_resources.clear - @relationship_graph = nil - end - # Expire any cached data the resources are keeping. expire() end diff --git a/lib/puppet/transaction.rb b/lib/puppet/transaction.rb index 028bdb8c8..e5846b1e9 100644 --- a/lib/puppet/transaction.rb +++ b/lib/puppet/transaction.rb @@ -152,14 +152,6 @@ class Transaction }.uniq end - # Do any necessary cleanup. If we don't get rid of the graphs, the - # contained resources might never get cleaned up. - def cleanup - if defined? @generated - catalog.remove_resource(*@generated) - end - end - # Copy an important relationships from the parent to the newly-generated # child resource. def make_parent_child_relationship(resource, children) diff --git a/spec/unit/resource/catalog.rb b/spec/unit/resource/catalog.rb index 73c327367..7583c015c 100755 --- a/spec/unit/resource/catalog.rb +++ b/spec/unit/resource/catalog.rb @@ -578,7 +578,6 @@ describe Puppet::Resource::Catalog, "when compiling" do @transaction = mock 'transaction' Puppet::Transaction.stubs(:new).returns(@transaction) @transaction.stubs(:evaluate) - @transaction.stubs(:cleanup) @transaction.stubs(:addtimes) end @@ -595,11 +594,6 @@ describe Puppet::Resource::Catalog, "when compiling" do @catalog.apply end - it "should clean up the transaction" do - @transaction.expects :cleanup - @catalog.apply - end - it "should return the transaction" do @catalog.apply.should equal(@transaction) end @@ -624,37 +618,6 @@ describe Puppet::Resource::Catalog, "when compiling" do @catalog.apply(:ignoreschedules => true) end - it "should remove resources created mid-transaction" do - args = {:name => "/yay", :ensure => :file} - resource = stub 'file', :ref => "File[/yay]", :catalog= => @catalog, :title => "/yay", :[] => "/yay" - @transaction = mock 'transaction' - Puppet::Transaction.stubs(:new).returns(@transaction) - @transaction.stubs(:evaluate) - @transaction.stubs(:cleanup) - @transaction.stubs(:addtimes) - Puppet::Type.type(:file).expects(:new).with(args).returns(resource) - resource.expects :remove - @catalog.apply do |trans| - @catalog.create_resource :file, args - @catalog.resource("File[/yay]").should equal(resource) - end - @catalog.resource("File[/yay]").should be_nil - end - - it "should remove resources added mid-transaction" do - @transaction = mock 'transaction' - Puppet::Transaction.stubs(:new).returns(@transaction) - @transaction.stubs(:evaluate) - @transaction.stubs(:cleanup) - @transaction.stubs(:addtimes) - file = Puppet::Type.type(:file).new(:name => "/yay", :ensure => :file) - @catalog.apply do |trans| - @catalog.add_resource file - @catalog.resource("File[/yay]").should_not be_nil - end - @catalog.resource("File[/yay]").should be_nil - end - it "should expire cached data in the resources both before and after the transaction" do @catalog.expects(:expire).times(2) @catalog.apply diff --git a/test/other/transactions.rb b/test/other/transactions.rb index 57a3a1cd8..6b623b277 100755 --- a/test/other/transactions.rb +++ b/test/other/transactions.rb @@ -555,11 +555,6 @@ class TestTransactions < Test::Unit::TestCase "Generated %s was not a vertex" % name) assert($finished.include?(name), "%s was not finished" % name) end - - # Now make sure that cleanup gets rid of those generated types. - assert_nothing_raised do - trans.cleanup - end end def test_ignore_tags? |
