# Time out problem

**URL:** <https://www.ruby-forum.com/t/time-out-problem/183546>\
**Category:** Rails\
**Created:** [February 16, 2010, 11:40am UTC](https://www.ruby-forum.com/t/time-out-problem/183546 "2010-02-16T11:40:38Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![DanC](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/77aa72/32.png) [@DanC](https://www.ruby-forum.com/u/DanC)\
**Post date:** [February 16, 2010, 11:40am UTC](https://www.ruby-forum.com/t/time-out-problem/183546/1 "2010-02-16T11:40:38Z")

</div>

Hi,

An app I have had online for a while has started timeing out when I  
add a new user. I think it is failing on the send activation email  
action. The error dump is below. Am I right in thinking this is the  
mailer?

If so, what could I have changed to make this happen. Sorry to sound  
gormless, but I just can’t understand why a working app would have  
stopped working?

Sent mail to xxxxxxx

Timeout::Error (execution expired):  
/usr/local/lib/ruby/1.8/timeout.rb:60:in `new' /usr/local/lib/ruby/1.8/net/protocol.rb:206:in`old\_open’  
/usr/local/lib/ruby/1.8/net/protocol.rb:206:in `old_open' /usr/local/lib/ruby/1.8/net/smtp.rb:392:in`do\_start’  
/usr/local/lib/ruby/1.8/net/smtp.rb:377:in `start' /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.2.2/lib/ action_mailer/base.rb:671:in`perform\_delivery\_smtp’  
/usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.2.2/lib/  
action\_mailer/base.rb:526:in ` __send__' /usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.2.2/lib/ action_mailer/base.rb:526:in`deliver!’  
/usr/local/lib/ruby/gems/1.8/gems/actionmailer-2.2.2/lib/  
action\_mailer/base.rb:392:in `method_missing' /app/models/user_observer.rb:3:in`after\_create’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/observer.rb:171:in `send' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/observer.rb:171:in`update’  
/usr/local/lib/ruby/1.8/observer.rb:185:in `notify_observers' /usr/local/lib/ruby/1.8/observer.rb:184:in`each’  
/usr/local/lib/ruby/1.8/observer.rb:184:in `notify_observers' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/callbacks.rb:328:in`notify’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/callbacks.rb:321:in `callback' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/callbacks.rb:238:in`create\_without\_timestamps’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/timestamp.rb:29:in `create' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/base.rb:2699:in`create\_or\_update\_without\_callbacks’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/callbacks.rb:222:in `create_or_update' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/base.rb:2400:in`save\_without\_validation!’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/validations.rb:1019:in `save_without_dirty!' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/dirty.rb:87:in`save\_without\_transactions!’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/transactions.rb:150:in `save!' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/connection_adapters/abstract/database_statements.rb: 66:in`transaction’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/transactions.rb:129:in `transaction' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/transactions.rb:138:in`transaction’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/transactions.rb:150:in `save!' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/transactions.rb:158:in`rollback\_active\_record\_state!’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/transactions.rb:150:in `save!' /app/controllers/imports_controller.rb:60:in`create\_administrator’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/base.rb:1253:in `send' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/base.rb:1253:in`perform\_action\_without\_filters’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/filters.rb:617:in `call_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/filters.rb:610:in`perform\_action\_without\_benchmark’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/benchmarking.rb:68:in  
`perform_action_without_rescue' /usr/local/lib/ruby/1.8/benchmark.rb:293:in`measure’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/benchmarking.rb:68:in  
`perform_action_without_rescue' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/rescue.rb:136:in`perform\_action\_without\_caching’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/caching/sql\_cache.rb:13:in  
`passenger_orig_perform_action' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/ active_record/connection_adapters/abstract/query_cache.rb:34:in`cache’  
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/  
active\_record/query\_cache.rb:8:in `cache' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/caching/sql_cache.rb:12:in`passenger\_orig\_perform\_action’  
/usr/local/passenger/lib/phusion\_passenger/railz/  
request\_handler.rb:65:in `perform_action' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/base.rb:524:in`send’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/base.rb:524:in `process_without_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/filters.rb:606:in`process\_without\_session\_management\_support’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/session\_management.rb:134:in `process' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/base.rb:392:in`process’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/dispatcher.rb:183:in `handle_request' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/dispatcher.rb:110:in`dispatch\_unlocked’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/dispatcher.rb:123:in `dispatch' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/dispatcher.rb:122:in`synchronize’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/dispatcher.rb:122:in `dispatch' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/ action_controller/dispatcher.rb:132:in`dispatch\_cgi’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.2.2/lib/  
action\_controller/dispatcher.rb:39:in `dispatch' /usr/local/passenger/lib/phusion_passenger/railz/ request_handler.rb:50:in`process\_request’  
/usr/local/passenger/lib/phusion\_passenger/  
abstract\_request\_handler.rb:207:in `main_loop' /usr/local/passenger/lib/phusion_passenger/railz/ application_spawner.rb:378:in`start\_request\_handler’  
/usr/local/passenger/lib/phusion\_passenger/railz/  
application\_spawner.rb:336:in `handle_spawn_application' /usr/local/passenger/lib/phusion_passenger/utils.rb:183:in`safe\_fork’  
/usr/local/passenger/lib/phusion\_passenger/railz/  
application\_spawner.rb:334:in `handle_spawn_application' /usr/local/passenger/lib/phusion_passenger/abstract_server.rb: 352:in` **send** ’  
/usr/local/passenger/lib/phusion\_passenger/abstract\_server.rb:  
352:in `main_loop' /usr/local/passenger/lib/phusion_passenger/abstract_server.rb: 196:in`start\_synchronously’  
/usr/local/passenger/lib/phusion\_passenger/abstract\_server.rb:  
163:in `start' /usr/local/passenger/lib/phusion_passenger/railz/ application_spawner.rb:213:in`start’  
/usr/local/passenger/lib/phusion\_passenger/spawn\_manager.rb:262:in  
`spawn_rails_application' /usr/local/passenger/lib/phusion_passenger/ abstract_server_collection.rb:126:in`lookup\_or\_add’  
/usr/local/passenger/lib/phusion\_passenger/spawn\_manager.rb:256:in  
`spawn_rails_application' /usr/local/passenger/lib/phusion_passenger/ abstract_server_collection.rb:80:in`synchronize’  
/usr/local/passenger/lib/phusion\_passenger/  
abstract\_server\_collection.rb:79:in `synchronize' /usr/local/passenger/lib/phusion_passenger/spawn_manager.rb:255:in`spawn\_rails\_application’  
/usr/local/passenger/lib/phusion\_passenger/spawn\_manager.rb:154:in  
`spawn_application' /usr/local/passenger/lib/phusion_passenger/spawn_manager.rb:287:in`handle\_spawn\_application’  
/usr/local/passenger/lib/phusion\_passenger/abstract\_server.rb:  
352:in ` __send__' /usr/local/passenger/lib/phusion_passenger/abstract_server.rb: 352:in`main\_loop’  
/usr/local/passenger/lib/phusion\_passenger/abstract\_server.rb:  
196:in `start\_synchronously’  
/usr/local/passenger/bin/passenger-spawn-server:61

---

<div class="post-metadata">

**Author:** ![DanC](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/77aa72/32.png) [@DanC](https://www.ruby-forum.com/u/DanC)\
**Post date:** [February 16, 2010, 12:08pm UTC](https://www.ruby-forum.com/t/time-out-problem/183546/2 "2010-02-16T12:08:09Z")

</div>

On Feb 16, 10:39 am, DanC [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 

Yup, it’s timing out opening a connection to your smtp server. You may  
have changed nothing, but something in between you and the smtp server  
may have changed. Is the smtp server still running on the port / host  
it used to be? Has something (maybe not under your control) like a  
firewall changed?

Fred

Fred

---

<div class="post-metadata">

**Author:** ![DanC](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/77aa72/32.png) [@DanC](https://www.ruby-forum.com/u/DanC)\
**Post date:** [February 16, 2010, 3:48pm UTC](https://www.ruby-forum.com/t/time-out-problem/183546/3 "2010-02-16T15:48:49Z")

</div>

Hi Fred,

Yes it was a firewall issue that I could control.

I eventually got the hosting company to sort it out. I thought I was  
going crazy when it just stopped.

Anyway, sorted now and your message gave me the confidence to tell  
them it was not my fault.

Thanks,

Dan
