Seems the forum cut off my posting of code and stack trace:
require 'redis'
task :run_migration_workers => :environment do
Thread.abort_on_exception = true
threads = []
10.times do |worker_num|
redis = Redis.new(:thread_safe => true)
# sleep 1
threads << Thread.new(worker_num, redis) do |i, red|
puts "thread # #{i.to_s}"
loop {
list, old_doc_id = red.blpop 'documents_in', 0
puts "$ thread #{i}: popped #{old_doc_id} off redis"
old_doc = Legacy::Document.find old_doc_id
new_doc = Document.find(old_doc_id)
new_doc.encrypted = true unless ["Logo", "Letterhead"].include?(new_doc.document_type)
#mtex.lock
new_doc.document = File.new(old_doc.file)
puts "$ thread #{i}: uploading document #{old_doc.id}"
new_doc.save
#mtex.unlock
puts "$ thread #{i}: finished uploading #{old_doc.id}"
red.rpush 'documents_out', new_doc.id
}
end
end
threads.each {|thr| thr.join }
end
snowdall:optimis snowdall$ rake run_migration_workers
(in /Users/snowdall/Documents/Optimis/optimis)
An error occured trying to connect to MongoDB!
thread # 0thread # 1thread # 2
thread # 3
thread # 4
thread # 5
thread # 6
thread # 7
thread # 8
thread # 9
$ thread 1: popped 173 off redis$ thread 0: popped 174 off redis$ thread 2: popped 175 off redis
$ thread 4: popped 176 off redis$ thread 3: popped 177 off redis$ thread 5: popped 178 off redis
$ thread 6: popped 179 off redis
$ thread 7: popped 180 off redis
$ thread 8: popped 181 off redis
$ thread 9: popped 182 off redis
$ thread 2: uploading document 175
$ thread 0: uploading document 174
$ thread 9: uploading document 182
$ thread 5: uploading document 178
/Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:178:in `write0': You have a nil object when you didn't expect it! (NoMethodError)
You might have expected an instance of Array.
The error occurred while evaluating nil.+
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:153:in `write'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:168:in `writing'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:152:in `write'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1580:in `write_header'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1535:in `exec'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1049:in `__request__'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rest-client-1.5.0/lib/restclient/net_http_ext.rb:17:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/connection.rb:43:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/connection.rb:48:in `call'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/connection.rb:48:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/base.rb:69:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/base.rb:83:in `delete'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/object.rb:221:in `delete'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/storage/s3.rb:168:in `flush_deletes'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/storage/s3.rb:165:in `each'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/storage/s3.rb:165:in `flush_deletes'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/attachment.rb:147:in `save'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:363:in `send'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:363:in `save_attached_files'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:356:in `each_attachment'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:355:in `each'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:355:in `each_attachment'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:362:in `save_attached_files'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:178:in `send'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:178:in `evaluate_method'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:166:in `call'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:93:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:92:in `each'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:92:in `send'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:92:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:276:in `run_callbacks'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/callbacks.rb:344:in `callback'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/callbacks.rb:251:in `create_or_update'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/base.rb:2538:in `save_without_validation'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/validations.rb:1078:in `save_without_dirty'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/dirty.rb:79:in `save_without_transactions'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:229:in `send'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:229:in `with_transaction_returning_status'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in `transaction'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:182:in `transaction'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:228:in `with_transaction_returning_status'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:196:in `save'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:208:in `rollback_active_record_state!'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:196:in `save'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:48
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:34:in `loop'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:34
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:31:in `initialize'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:31:in `new'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:31
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:27:in `times'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:27
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:636:in `call'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:636:in `execute'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:631:in `each'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:631:in `execute'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_with_call_chain'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/monitor.rb:242:in `synchronize'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:583:in `invoke'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2029:in `each'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2001:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/bin/rake:31
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/bin/rake:19:in `load'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/bin/rake:19
/Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:70:in `rbuf_fill': stream closed (IOError)
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/timeout.rb:62:in `timeout'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/timeout.rb:93:in `timeout'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:134:in `rbuf_fill'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:116:in `readuntil'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/protocol.rb:126:in `readline'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:2026:in `read_status_line'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:2015:in `read_new'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/net/http.rb:1051:in `__request__'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rest-client-1.5.0/lib/restclient/net_http_ext.rb:17:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/connection.rb:43:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/connection.rb:48:in `call'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/connection.rb:48:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/base.rb:69:in `request'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/base.rb:83:in `delete'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/aws/lib/aws/s3/object.rb:221:in `delete'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/storage/s3.rb:168:in `flush_deletes'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/storage/s3.rb:165:in `each'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/storage/s3.rb:165:in `flush_deletes'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip/attachment.rb:147:in `save'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:363:in `send'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:363:in `save_attached_files'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:356:in `each_attachment'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:355:in `each'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:355:in `each_attachment'
from /Users/snowdall/Documents/Optimis/optimis/vendor/plugins/paperclip/lib/paperclip.rb:362:in `save_attached_files'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:178:in `send'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:178:in `evaluate_method'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:166:in `call'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:93:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:92:in `each'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:92:in `send'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:92:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activesupport-2.3.5/lib/active_support/callbacks.rb:276:in `run_callbacks'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/callbacks.rb:344:in `callback'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/callbacks.rb:251:in `create_or_update'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/base.rb:2538:in `save_without_validation'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/validations.rb:1078:in `save_without_dirty'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/dirty.rb:79:in `save_without_transactions'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:229:in `send'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:229:in `with_transaction_returning_status'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/database_statements.rb:136:in `transaction'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:182:in `transaction'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:228:in `with_transaction_returning_status'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:196:in `save'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:208:in `rollback_active_record_state!'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/activerecord-2.3.5/lib/active_record/transactions.rb:196:in `save'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:48
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:34:in `loop'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:34
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:31:in `initialize'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:31:in `new'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:31
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:27:in `times'
from /Users/snowdall/Documents/Optimis/optimis/lib/tasks/encryption_migration_worker.rake:27
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:636:in `call'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:636:in `execute'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:631:in `each'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:631:in `execute'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_with_call_chain'
from /Users/snowdall/.rvm/rubies/ree-1.8.7-2010.02/lib/ruby/1.8/monitor.rb:242:in `synchronize'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:583:in `invoke'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2029:in `each'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2001:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/gems/rake-0.8.7/bin/rake:31
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/bin/rake:19:in `load'
from /Users/snowdall/.rvm/gems/ree-1.8.7-2010.02@optimis/bin/rake:19