diff --git a/lib/tire/model/import.rb b/lib/tire/model/import.rb index 76e6a19e..ed534765 100644 --- a/lib/tire/model/import.rb +++ b/lib/tire/model/import.rb @@ -67,11 +67,13 @@ class Mongoid include Base def import &block items = [] - klass.all.each do |item| - items << item - if items.length % options[:per_page] == 0 - index.import items, options, &block - items = [] + ::Mongoid.unit_of_work(:disable => :all) do + klass.all.each do |item| + items << item + if items.length % options[:per_page] == 0 + index.import items, options, &block + items = [] + end end end index.import items, options, &block unless items.empty?