LiteSpeed Technologies
Download Download     Blog Blog     Wiki Wiki     Forum Forum     Store     Contact Contact    

Go Back   LiteSpeed Support Forums > External Applications > Ruby/Rails > LSWS Rails App MySQL Connection Errors

Reply
 
Thread Tools Display Modes
  #11  
Old 09-02-2009, 01:15 AM
malffred malffred is offline
Member
 
Join Date: Dec 2006
Location: Hawaii
Posts: 27
Thanks. I tried it but no luck, the stray socket still remains. I restarted a few times.

ps -aux output:
Code:
1000     31610  0.0  0.0   8124   636 pts/2    S+   Sep01   0:00 tail -n 500 -f production.log
root       453  0.3  0.1   5524  2340 ?        S<   03:05   0:00 lshttpd
root       454  0.0  0.0   1664   372 ?        S<   03:05   0:00 httpd (lscgid)
nobody     455  0.0  0.0   5524  1456 ?        S<   03:05   0:00 lshttpd
1000       456  100  1.7 100120 37184 ?        R<   03:05   0:03 ruby /opt/lsws/fcgi-bin/RailsRunner.rb
1000       464  0.0  0.0  14772  1000 pts/0    R+   03:05   0:00 ps -aux
lsof -p 456 output:
Code:
COMMAND PID       USER   FD   TYPE             DEVICE     SIZE    NODE NAME
ruby    456 sugarstats  cwd    DIR                8,1     4096 6130595 /home/sugarstats/www/releases/20090902075410
ruby    456 sugarstats  rtd    DIR                8,1     4096       2 /
ruby    456 sugarstats  txt    REG                8,1     5264 3818406 /usr/bin/ruby1.8
ruby    456 sugarstats  mem    REG                8,1   127480 4440272 /lib/ld-2.7.so
ruby    456 sugarstats  mem    REG                8,1   879608 3821360 /usr/lib/libruby1.8.so.1.8.6
ruby    456 sugarstats  mem    REG                8,1   130224 4440324 /lib/libpthread-2.7.so
ruby    456 sugarstats  mem    REG                8,1    14624 4440291 /lib/libdl-2.7.so
ruby    456 sugarstats  mem    REG                8,1    39120 4440287 /lib/libcrypt-2.7.so
ruby    456 sugarstats  mem    REG                8,1   526560 4440304 /lib/libm-2.7.so
ruby    456 sugarstats  mem    REG                8,1  1436976 4440281 /lib/libc-2.7.so
ruby    456 sugarstats  mem    REG                8,1    16272 3869828 /usr/lib/ruby/1.8/x86_64-linux/thread.so
ruby    456 sugarstats  mem    REG                8,1    10936 3869799 /usr/lib/ruby/1.8/x86_64-linux/etc.so
ruby    456 sugarstats  mem    REG                8,1    19952 3869823 /usr/lib/ruby/1.8/x86_64-linux/stringio.so
ruby    456 sugarstats  mem    REG                8,1   119040 3869825 /usr/lib/ruby/1.8/x86_64-linux/syck.so
ruby    456 sugarstats  mem    REG                8,1    35632 4440309 /lib/libnss_compat-2.7.so
ruby    456 sugarstats  mem    REG                8,1    93080 4440308 /lib/libnsl-2.7.so
ruby    456 sugarstats  mem    REG                8,1    43480 4440313 /lib/libnss_nis-2.7.so
ruby    456 sugarstats  mem    REG                8,1    47528 4440311 /lib/libnss_files-2.7.so
ruby    456 sugarstats  mem    REG                8,1     8496 3869797 /usr/lib/ruby/1.8/x86_64-linux/enumerator.so
ruby    456 sugarstats  mem    REG                8,1   267192 3869806 /usr/lib/ruby/1.8/x86_64-linux/nkf.so
ruby    456 sugarstats  mem    REG                8,1    45272 3869787 /usr/lib/ruby/1.8/x86_64-linux/bigdecimal.so
ruby    456 sugarstats  mem    REG                8,1    16384 3869802 /usr/lib/ruby/1.8/x86_64-linux/iconv.so
ruby    456 sugarstats  mem    REG                8,1    25700 3851478 /usr/lib/gconv/gconv-modules.cache
ruby    456 sugarstats  mem    REG                8,1    19272 3869824 /usr/lib/ruby/1.8/x86_64-linux/strscan.so
ruby    456 sugarstats  mem    REG                8,1    16208 4145541 /usr/lib/ruby/gems/1.8/gems/hpricot-0.8.1/lib/fast_xs.so
ruby    456 sugarstats  mem    REG                8,1   121046 4148270 /usr/lib/ruby/gems/1.8/gems/ruby-lsapi-3.5/lib/lsapi.so
ruby    456 sugarstats  mem    REG                8,1    15248 3883513 /usr/lib/ruby/1.8/x86_64-linux/racc/cparse.so
ruby    456 sugarstats  mem    REG                8,1    48512 3869821 /usr/lib/ruby/1.8/x86_64-linux/socket.so
ruby    456 sugarstats  mem    REG                8,1   254120 3869808 /usr/lib/ruby/1.8/x86_64-linux/openssl.so
ruby    456 sugarstats  mem    REG                8,1   304544 3821365 /usr/lib/libssl.so.0.9.8
ruby    456 sugarstats  mem    REG                8,1  1559720 3821138 /usr/lib/libcrypto.so.0.9.8
ruby    456 sugarstats  mem    REG                8,1    93536 3821423 /usr/lib/libz.so.1.2.3.3
ruby    456 sugarstats  mem    REG                8,1     5120 3869800 /usr/lib/ruby/1.8/x86_64-linux/fcntl.so
ruby    456 sugarstats  mem    REG                8,1  4344877 4212347 /usr/lib/ruby/gems/1.8/gems/memcached-0.15.3/lib/rlibmemcached.so
ruby    456 sugarstats  mem    REG                8,1    95813 3986633 /usr/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.so
ruby    456 sugarstats  mem    REG                8,1   273928 3821291 /usr/lib/libmysqlclient.so.12.0.0
ruby    456 sugarstats  mem    REG                8,1    11344 3883510 /usr/lib/ruby/1.8/x86_64-linux/digest/sha1.so
ruby    456 sugarstats  mem    REG                8,1    12776 3869792 /usr/lib/ruby/1.8/x86_64-linux/digest.so
ruby    456 sugarstats  mem    REG                8,1   512899 4145897 /usr/lib/ruby/gems/1.8/gems/libxml-ruby-1.1.3/lib/libxml_ruby.so
ruby    456 sugarstats  mem    REG                8,1  1335832 3821419 /usr/lib/libxml2.so.2.6.31
ruby    456 sugarstats  mem    REG                8,1    47778 4145685 /usr/lib/ruby/gems/1.8/gems/json-1.1.7/ext/json/ext/parser.so
ruby    456 sugarstats  mem    REG                8,1    58392 4145679 /usr/lib/ruby/gems/1.8/gems/json-1.1.7/ext/json/ext/generator.so
ruby    456 sugarstats  mem    REG                8,1     8336 3883508 /usr/lib/ruby/1.8/x86_64-linux/digest/md5.so
ruby    456 sugarstats  mem    REG                8,1    38160 3869831 /usr/lib/ruby/1.8/x86_64-linux/zlib.so
ruby    456 sugarstats  mem    REG                8,1    22856 4440310 /lib/libnss_dns-2.7.so
ruby    456 sugarstats  mem    REG                8,1    80760 4440326 /lib/libresolv-2.7.so
ruby    456 sugarstats    0u  unix 0xffff880036a69580           807293 /tmp/lshttpd/manage.sugarstats.com
ruby    456 sugarstats    1u  unix 0xffff880000593d40           807280 socket
ruby    456 sugarstats    2u  unix 0xffff880000593d40           807280 socket
ruby    456 sugarstats    3w   REG                8,1 16933700 6146524 /home/sugarstats/www/shared/log/production.log
ruby    456 sugarstats    4u  unix 0xffff88007fc6a340           807391 socket
ruby    456 sugarstats    5w   REG                8,1  3332092 6146520 /home/sugarstats/www/shared/log/exceptional.log
ruby    456 sugarstats    6w   REG                8,1    16236 6146483 /home/sugarstats/www/shared/log/newrelic_agent.log
I forgot, what's the difference between RailsRunner.rb and RailsRunner.rb.2.3? Should we be running RailsRunner.rb.2.3 since we're using Rails 2.3.2?

Or will RailsRunner.rb as of 4.0.10 work fine?
Reply With Quote
  #12  
Old 09-02-2009, 05:45 AM
mistwang mistwang is offline
LiteSpeed Staff
 
Join Date: May 2003
Location: New Jersey
Posts: 7,583
RailsRunner.rb in 4.0.10 should be compatible with all version of Rails.
Reply With Quote
  #13  
Old 10-14-2009, 02:01 PM
jerrett jerrett is offline
Member
 
Join Date: Jan 2007
Posts: 13
I noticed in railsrunner for new (rack) versions of rails, there is no code for the disconnect! call to AR... is this supposed to be like this? it's not in the rack adapter, either...
Reply With Quote
  #14  
Old 10-14-2009, 03:31 PM
jerrett jerrett is offline
Member
 
Join Date: Jan 2007
Posts: 13
The solution to this is to put:

ActiveRecord::Base.connection.disconnect!



in your environment.rb (at the end)

A better solution would be to add this to RailsRunner.rb, right after environment is loaded .. maybe in a future release?
Reply With Quote
  #15  
Old 10-14-2009, 03:37 PM
mistwang mistwang is offline
LiteSpeed Staff
 
Join Date: May 2003
Location: New Jersey
Posts: 7,583
if "RAILS_GEM_VERSION" >= 2.3.0, new code with the rack adapter is used, otherwise, the older version of railsrunner is used.

new code uses "ActiveRecord::Base.connection_handler.clear_activ e_connections!"
Reply With Quote
  #16  
Old 10-14-2009, 04:49 PM
jerrett jerrett is offline
Member
 
Join Date: Jan 2007
Posts: 13
disconnect! appeared to still be needed, perhaps not though - i will check again.
Reply With Quote
  #17  
Old 10-15-2009, 10:41 AM
jerrett jerrett is offline
Member
 
Join Date: Jan 2007
Posts: 13
Looks like disconnect! is still needed in RailsRunner.rb.. this change fixes the problem:



Code:
if defined?(ActiveRecord::Base) 
  ActiveRecord::Base.disconnect!
  ActiveRecord::Base.connection_handler.clear_active_connections!
end
Reply With Quote
  #18  
Old 10-15-2009, 11:54 AM
mistwang mistwang is offline
LiteSpeed Staff
 
Join Date: May 2003
Location: New Jersey
Posts: 7,583
Updated the code, thanks!
Reply With Quote
  #19  
Old 10-22-2009, 08:28 PM
mistwang mistwang is offline
LiteSpeed Staff
 
Join Date: May 2003
Location: New Jersey
Posts: 7,583
Quote:
Originally Posted by jerrett View Post
Looks like disconnect! is still needed in RailsRunner.rb.. this change fixes the problem:



Code:
if defined?(ActiveRecord::Base) 
  ActiveRecord::Base.disconnect!
  ActiveRecord::Base.connection_handler.clear_active_connections!
end
For Rails 2.3.4,

Code:
ActiveRecord::Base.disconnect!
disappeared. so, I end up with
Code:
ActiveRecord::Base.connection_pool.disconnect!
Looks like it is enough, no need to call clear_active_connections! , please let us know if you find it is not true.
Reply With Quote
  #20  
Old 10-28-2009, 02:50 PM
Grzegorz Derebecki Grzegorz Derebecki is offline
Senior Member
 
Join Date: Jun 2007
Posts: 92
I'm doing clear_all_connections and it works well:

ActiveRecord::Base.clear_all_connections! if defined?(ActiveRecord::Base)
Reply With Quote
Reply

Tags
lsws, mysql, rails, ruby on rails

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 06:28 PM.



- Archive - Top
© Copyright 2003-2011 LiteSpeed Technologies, Inc. All rights reserved. Privacy Policy.