From mental at rydia.net Mon Jan 1 00:16:48 2007 From: mental at rydia.net (MenTaLguY) Date: Mon, 01 Jan 2007 00:16:48 -0500 Subject: [Mongrel] [ANN] fastthread 0.6.1 In-Reply-To: <71166b3b0612312021i32745625s2b6cbd3453ac7998@mail.gmail.com> References: <1167548672.17601.61.camel@localhost.localdomain> <20061231052624.b01d4f07.zedshaw@zedshaw.com> <71166b3b0612312021i32745625s2b6cbd3453ac7998@mail.gmail.com> Message-ID: <1167628608.25880.10.camel@localhost.localdomain> We should probably get the current fastthread in releases/gems/ too, so people testing the mongrel RCs get the latest ones. -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070101/d40a76c9/attachment.bin From jdz99 at hotmail.com Tue Jan 2 11:40:55 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Tue, 02 Jan 2007 16:40:55 +0000 Subject: [Mongrel] my apache 2.2 conf In-Reply-To: <86lkl19htl.fsf@bitty.lumos.us> Message-ID: >From: Steven Lumos >Reply-To: mongrel-users at rubyforge.org >To: mongrel-users at rubyforge.org >Subject: [Mongrel] my apache 2.2 conf >Date: Thu, 21 Dec 2006 11:20:38 -0800 > > >I just finished updating our internal site, which hosts multiple Rails >apps, to Apache 2.2.3. It also has a TWiki rewritten into the root, >ViewVC mounted on /cvs, and /server-status and /server-info. > > > ServerName int.example.com > ServerAlias int > > CustomLog /var/www/logs/int.example.com/access.log combined > ErrorLog /var/www/logs/int.example.com/error.log > > [...] > > ## Application Server > > # APP1 > > BalancerMember http://127.0.0.1:11001 > > > Alias /app1 /production/app1/public > > Allow from .example.com > RewriteEngine on > RewriteRule ^/?$ balancer://app1%{REQUEST_URI} [P,L] > RewriteCond %{REQUEST_FILENAME} !-f > RewriteRule . balancer://app1%{REQUEST_URI} [P,L] > > # End APP1 > > # APP2 > > BalancerMember http://127.0.0.1:11010 > > > Alias /app2 /dev/app2/public > > Allow from .example.com > RewriteEngine on > RewriteRule ^/?$ balancer://app2%{REQUEST_URI} [P,L] > RewriteCond %{REQUEST_FILENAME} !-f > RewriteRule . balancer://app2%{REQUEST_URI} [P,L] > > # End APP2 > > >Then I give mongrel_rails --prefix app and done. Almost too easy. >And it's going to be almost trivial to add more mongrels whenever we >need them and I set up mongrel_cluster. Thanks again Zed and whoever >is responsible for mod_proxy(_balance). > >Steve > >_______________________________________________ >Mongrel-users mailing list >Mongrel-users at rubyforge.org >http://rubyforge.org/mailman/listinfo/mongrel-users I tried this config and can get it working from the server like so, http://www.myserver.com:3000/ ...but when I try to access this address from a client machine elsewhere I get a "unable to connect error" any ideas? Jim _________________________________________________________________ Find sales, coupons, and free shipping, all in one place! ?MSN Shopping Sales & Deals http://shopping.msn.com/content/shp/?ctid=198,ptnrid=176,ptnrdata=200639 From rsanheim at gmail.com Tue Jan 2 13:19:25 2007 From: rsanheim at gmail.com (Rob Sanheim) Date: Tue, 2 Jan 2007 12:19:25 -0600 Subject: [Mongrel] problem with mongrel/apache2.2.3 and subdomain setup Message-ID: Hi all I got a vps setup amazingly fast using the deprec recipes on Ubuntu edgy, but now I'm having a minor issue where my site loads for the main domain when I only want it accessible from the subdomain. This is a pretty typical setup, apache 2.2.3 -> mongrel_proxy_balancer -> mongrel cluster. I'm sure I'm missing something obvious in the config... I have the conf files pasted below. Should I just be able to set the ServerName like I did in myapp.conf for this to work? Do I need to do something else in the stock apache config? Here's the relevant config files: mongrel_cluster.yml: ======================== cwd: /var/www/apps/myapp/current port: "8000" environment: production address: 127.0.0.1 pid_file: log/mongrel.pid servers: 2 myapp.conf ============================ ServerName myapp.domain.com DocumentRoot /var/www/apps/myapp/current/public Options FollowSymLinks AllowOverride None Order allow,deny Allow from all # Configure mongrel_cluster BalancerMember http://127.0.0.1:8000 BalancerMember http://127.0.0.1:8001 RewriteEngine On # Prevent access to .svn directories RewriteRule ^(.*/)?\.svn/ - [F,L] ErrorDocument 403 "Access Forbidden" # Check for maintenance file and redirect all requests RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f RewriteCond %{SCRIPT_FILENAME} !maintenance.html RewriteRule ^.*$ /system/maintenance.html [L] # Rewrite index to check for static RewriteRule ^/$ /index.html [QSA] # Rewrite to check for Rails cached page RewriteRule ^([^.]+)$ $1.html [QSA] # Redirect all non-static requests to cluster RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/(.*)$ balancer://myapp%{REQUEST_URI} [P,QSA,L] # Deflate AddOutputFilterByType DEFLATE text/html text/plain text/xml BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html ErrorLog logs/myapp.domain.com-error_log CustomLog logs/myapp.domain.com-access_log combined ========================= the apache httpd.conf is pretty stock, but here's the part that I _thought_ would allow me to serve from the main domain just using apache: ServerName domain.com DocumentRoot "/usr/local/apache2/htdocs" Options FollowSymLinks AllowOverride None Order deny,allow Deny from all Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all thanks, Rob From zedshaw at zedshaw.com Tue Jan 2 13:41:24 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Tue, 2 Jan 2007 10:41:24 -0800 Subject: [Mongrel] Recommendation: Stalled Mongrel? Memcache Hates Spaces Message-ID: <20070102104124.0b6a36f9.zedshaw@zedshaw.com> Hi Everyone, There's quite a few of you who have contacted me about Mongrel suddenly stopping. After a lot of investigation, I found that the common thread between all of you is memcache and Eric Hodel's memcache-client. People who were running this combination would have intermittent pauses and investigating the stalled mongrels showed that memcache-client was waiting for information from memcached. A friend just told me that he found out the problem is memcache does not accept keys with spaces in them. From this spec: http://cvs.danga.com/browse.cgi/wcmtools/memcached/doc/protocol.txt?rev=HEAD We have this paragraph: "Data stored by memcached is identified with the help of a key. A key is a text string which should uniquely identify the data for clients that are interested in storing and retrieving it. Currently the length limit of a key is set at 250 characters (of course, normally clients wouldn't need to use such long keys); the key must not include control characters or whitespace." Notice the last part "the key most not include control characters or whitespace". Since memcache-client doesn't currently escape your keys for you (not sure if it should actually), you have to do this yourself or bad super evil things happen. The few people who have made this change report no more stopped mongrel processes. Please try this out and report back to me if it fixes things. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From michael.dauria at gmail.com Tue Jan 2 13:41:39 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Tue, 2 Jan 2007 13:41:39 -0500 Subject: [Mongrel] my apache 2.2 conf In-Reply-To: References: <86lkl19htl.fsf@bitty.lumos.us> Message-ID: <1907e2ca0701021041l4cc4a6b9v2830d966013015e7@mail.gmail.com> Mongrel is probably set up to listen on port 3000 for localhost only. Shouldn't you be connecting via port 80 instead and let Apache talk to Mongrel? http://www.myserver.com On 1/2/07, Jim Douglas wrote: > > >From: Steven Lumos > >Reply-To: mongrel-users at rubyforge.org > >To: mongrel-users at rubyforge.org > >Subject: [Mongrel] my apache 2.2 conf > >Date: Thu, 21 Dec 2006 11:20:38 -0800 > > > > > >I just finished updating our internal site, which hosts multiple Rails > >apps, to Apache 2.2.3. It also has a TWiki rewritten into the root, > >ViewVC mounted on /cvs, and /server-status and /server-info. > > > > > > ServerName int.example.com > > ServerAlias int > > > > CustomLog /var/www/logs/int.example.com/access.log combined > > ErrorLog /var/www/logs/int.example.com/error.log > > > > [...] > > > > ## Application Server > > > > # APP1 > > > > BalancerMember http://127.0.0.1:11001 > > > > > > Alias /app1 /production/app1/public > > > > Allow from .example.com > > RewriteEngine on > > RewriteRule ^/?$ balancer://app1%{REQUEST_URI} [P,L] > > RewriteCond %{REQUEST_FILENAME} !-f > > RewriteRule . balancer://app1%{REQUEST_URI} [P,L] > > > > # End APP1 > > > > # APP2 > > > > BalancerMember http://127.0.0.1:11010 > > > > > > Alias /app2 /dev/app2/public > > > > Allow from .example.com > > RewriteEngine on > > RewriteRule ^/?$ balancer://app2%{REQUEST_URI} [P,L] > > RewriteCond %{REQUEST_FILENAME} !-f > > RewriteRule . balancer://app2%{REQUEST_URI} [P,L] > > > > # End APP2 > > > > > >Then I give mongrel_rails --prefix app and done. Almost too easy. > >And it's going to be almost trivial to add more mongrels whenever we > >need them and I set up mongrel_cluster. Thanks again Zed and whoever > >is responsible for mod_proxy(_balance). > > > >Steve > > > >_______________________________________________ > >Mongrel-users mailing list > >Mongrel-users at rubyforge.org > >http://rubyforge.org/mailman/listinfo/mongrel-users > > > I tried this config and can get it working from the server like so, > > http://www.myserver.com:3000/ > > ...but when I try to access this address from a client machine elsewhere I > get a "unable to connect error" > > any ideas? > > Jim > > _________________________________________________________________ > Find sales, coupons, and free shipping, all in one place! MSN Shopping > Sales & Deals > http://shopping.msn.com/content/shp/?ctid=198,ptnrid=176,ptnrdata=200639 > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070102/fc42f20a/attachment-0001.html From me at seebq.com Tue Jan 2 13:50:43 2007 From: me at seebq.com (Charles Brian Quinn) Date: Tue, 2 Jan 2007 13:50:43 -0500 Subject: [Mongrel] problem with mongrel/apache2.2.3 and subdomain setup In-Reply-To: References: Message-ID: <3a2de0cd0701021050y56cf7fc1j743a324a32adc5d6@mail.gmail.com> I'd add another: ServerName www.otherdomain.tld DocumentRoot /www/otherdomain for your main document root, since you're using VirtualHosts. and make sure that loads last -- this could mean if you're doing something like: Include /etc/rails/*.conf in an apache configuration file that you name the files accordingly (perhaps 00_my_site.conf and 99_default_vhost.conf) hope that helps, -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml On 1/2/07, Rob Sanheim wrote: > Hi all > > I got a vps setup amazingly fast using the deprec recipes on Ubuntu > edgy, but now I'm having a minor issue where my site loads for the > main domain when I only want it accessible from the subdomain. This > is a pretty typical setup, apache 2.2.3 -> mongrel_proxy_balancer -> > mongrel cluster. I'm sure I'm missing something obvious in the > config... > > I have the conf files pasted below. Should I just be able to set the > ServerName like I did in myapp.conf for this to work? Do I need to do > something else in the stock apache config? > > Here's the relevant config files: > > mongrel_cluster.yml: > ======================== > cwd: /var/www/apps/myapp/current > port: "8000" > environment: production > address: 127.0.0.1 > pid_file: log/mongrel.pid > servers: 2 > > myapp.conf > ============================ > > ServerName myapp.domain.com > > DocumentRoot /var/www/apps/myapp/current/public > > > Options FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > > > # Configure mongrel_cluster > > BalancerMember http://127.0.0.1:8000 > BalancerMember http://127.0.0.1:8001 > > > RewriteEngine On > > # Prevent access to .svn directories > RewriteRule ^(.*/)?\.svn/ - [F,L] > ErrorDocument 403 "Access Forbidden" > > # Check for maintenance file and redirect all requests > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > RewriteRule ^.*$ /system/maintenance.html [L] > > # Rewrite index to check for static > RewriteRule ^/$ /index.html [QSA] > > # Rewrite to check for Rails cached page > RewriteRule ^([^.]+)$ $1.html [QSA] > > # Redirect all non-static requests to cluster > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > RewriteRule ^/(.*)$ balancer://myapp%{REQUEST_URI} [P,QSA,L] > > # Deflate > AddOutputFilterByType DEFLATE text/html text/plain text/xml > BrowserMatch ^Mozilla/4 gzip-only-text/html > BrowserMatch ^Mozilla/4\.0[678] no-gzip > BrowserMatch \bMSIE !no-gzip !gzip-only-text/html > > ErrorLog logs/myapp.domain.com-error_log > CustomLog logs/myapp.domain.com-access_log combined > > ========================= > the apache httpd.conf is pretty stock, but here's the part that I > _thought_ would allow me to serve from the main domain just using > apache: > > ServerName domain.com > DocumentRoot "/usr/local/apache2/htdocs" > > Options FollowSymLinks > AllowOverride None > Order deny,allow > Deny from all > > > Options Indexes FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > > > thanks, > Rob > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From kovacs at gmail.com Tue Jan 2 15:09:30 2007 From: kovacs at gmail.com (Michael Kovacs) Date: Tue, 2 Jan 2007 12:09:30 -0800 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster Message-ID: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> Hi all, I've been having problems with the apache 2.2-mod_proxy_balancer- mongrel setup. My setup is: CentOS 4.3 apache 2.2.3 (compiled from source) with mod_proxy_balancer mysql 4.1 ruby 1.8.4 mongrel 0.3.14 (I know I need to update but I think this problem is independent of the mongrel version) mongrel_cluster 0.2.0 rails_machine 0.1.1 I have apache setup as per Coda's configuration on his blog posting from several months back. http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails- mongrel-apache-capistrano-and-you/ I have 4 mongrels in my cluster. Things work fine for periods of time but after several hours of inactivity (I think 8 hours or so) I experience oddness where only 1 of the 4 mongrels is properly responding. I end up getting a "500 internal server error" 3 out of 4 requests as they round robin from mongrel to mongrel. There is nothing in the production log file nor in the mongrel log. I've reproduced this problem on my staging box as well as my production box. The last time I reproduced the problem I decided to run "top" and see what's going on when I hit the server. Mongrel does receive every request but mysql is only active on the 1 request that works. In the other mongrels it never spikes up in CPU usage. Looking at the mysql process list revealed that all of the processes had received the "sleep" command but one of the processes is still working properly. I've played with connection timeouts other than to set the timeout in my application's environment (ActiveRecord::Base.verification_timeout = 14400) as well as the mysql interactive_timeout variable but it seems that all the mongrels should work or they shouldn't. The fact that 1 out of 4 always works is rather puzzling to me. Trying a 'killall -USR1 mongrel_rails" to turn debug on simply killed the 4 threads running mongrel. So now I'm running the cluster in debug mode and am going to just let it sit there for several hours until it happens again and hopefully get some idea of where the breakdown is happening. I still think it has to be a mysql connection timeout but again, the fact that 1 of the 4 always works doesn't lend credence to the timeout theory. Has anyone experienced this phenomenon themselves? Thanks for any tips/pointers and thanks Zed for all your hard work with mongrel. -Michael http://javathehutt.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070102/2657856d/attachment.html From jgeiger at gmail.com Tue Jan 2 16:36:48 2007 From: jgeiger at gmail.com (Joey Geiger) Date: Tue, 2 Jan 2007 15:36:48 -0600 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> Message-ID: <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> This may have to do with log rotation. There was a thread about similar issue posted in I believe December. You might want to try searching the mailing list archives. You're probably rotating your logs based on a specific size, which is why it's happening every couple hours, instead of nightly. On 1/2/07, Michael Kovacs wrote: > Hi all, > > I've been having problems with the apache 2.2-mod_proxy_balancer-mongrel > setup. > > My setup is: > > CentOS 4.3 > apache 2.2.3 (compiled from source) with mod_proxy_balancer > mysql 4.1 > ruby 1.8.4 > mongrel 0.3.14 (I know I need to update but I think this problem is > independent of the mongrel version) > mongrel_cluster 0.2.0 > rails_machine 0.1.1 > > I have apache setup as per Coda's configuration on his blog posting from > several months back. > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > I have 4 mongrels in my cluster. > > Things work fine for periods of time but after several hours of inactivity > (I think 8 hours or so) I experience oddness where only 1 of the 4 mongrels > is properly > responding. I end up getting a "500 internal server error" 3 out of 4 > requests as they round robin from mongrel to mongrel. There is nothing in > the production > log file nor in the mongrel log. I've reproduced this problem on my staging > box as well as my production box. > > The last time I reproduced the problem I decided to run "top" and see what's > going on when I hit the server. > Mongrel does receive every request but mysql is only active on the 1 request > that works. In the other mongrels it never spikes up in CPU usage. > > Looking at the mysql process list revealed that all of the processes had > received the "sleep" command but one of the processes is still > working properly. I've played with connection timeouts other than to set the > timeout in my application's environment > (ActiveRecord::Base.verification_timeout = 14400) as well as the mysql > interactive_timeout variable but it seems that all the mongrels should work > or they shouldn't. The fact that 1 out of 4 always works is rather puzzling > to me. > > Trying a 'killall -USR1 mongrel_rails" to turn debug on simply killed the 4 > threads running mongrel. So now I'm running the cluster in debug mode and am > going to just let it sit there for several hours until it happens again and > hopefully get some idea of where the breakdown is happening. I still think > it has to be a mysql connection timeout but again, the fact that 1 of the 4 > always works doesn't lend credence to the timeout theory. > > Has anyone experienced this phenomenon themselves? > > Thanks for any tips/pointers and thanks Zed for all your hard work with > mongrel. > > > > -Michaelhttp://javathehutt.blogspot.com > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > From shawn at brmethod.com Tue Jan 2 16:59:17 2007 From: shawn at brmethod.com (Shawn Hill) Date: Tue, 2 Jan 2007 15:59:17 -0600 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> Message-ID: <0MKoyl-1H1ra12qlX-0005JG@mrelay.perfora.net> I have the same problem. People (including myself) use monit to ensure processes don't freeze and some also set up scripts to periodically restart individual mongrels (mine restart every 30 minutes.) My setup: Linux 2.6.18 everything else is the same, except I upgraded mongrel (which had no effect on the problem.) Appreciate suggestions from people who have encountered and successfully resolved this issue. _____ From: mongrel-users-bounces at rubyforge.org [mailto:mongrel-users-bounces at rubyforge.org] On Behalf Of Michael Kovacs Sent: Tuesday, January 02, 2007 2:10 PM To: mongrel-users at rubyforge.org Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster Hi all, I've been having problems with the apache 2.2-mod_proxy_balancer-mongrel setup. My setup is: CentOS 4.3 apache 2.2.3 (compiled from source) with mod_proxy_balancer mysql 4.1 ruby 1.8.4 mongrel 0.3.14 (I know I need to update but I think this problem is independent of the mongrel version) mongrel_cluster 0.2.0 rails_machine 0.1.1 I have apache setup as per Coda's configuration on his blog posting from several months back. http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel -apache-capistrano-and-you/ I have 4 mongrels in my cluster. Things work fine for periods of time but after several hours of inactivity (I think 8 hours or so) I experience oddness where only 1 of the 4 mongrels is properly responding. I end up getting a "500 internal server error" 3 out of 4 requests as they round robin from mongrel to mongrel. There is nothing in the production log file nor in the mongrel log. I've reproduced this problem on my staging box as well as my production box. The last time I reproduced the problem I decided to run "top" and see what's going on when I hit the server. Mongrel does receive every request but mysql is only active on the 1 request that works. In the other mongrels it never spikes up in CPU usage. Looking at the mysql process list revealed that all of the processes had received the "sleep" command but one of the processes is still working properly. I've played with connection timeouts other than to set the timeout in my application's environment (ActiveRecord::Base.verification_timeout = 14400) as well as the mysql interactive_timeout variable but it seems that all the mongrels should work or they shouldn't. The fact that 1 out of 4 always works is rather puzzling to me. Trying a 'killall -USR1 mongrel_rails" to turn debug on simply killed the 4 threads running mongrel. So now I'm running the cluster in debug mode and am going to just let it sit there for several hours until it happens again and hopefully get some idea of where the breakdown is happening. I still think it has to be a mysql connection timeout but again, the fact that 1 of the 4 always works doesn't lend credence to the timeout theory. Has anyone experienced this phenomenon themselves? Thanks for any tips/pointers and thanks Zed for all your hard work with mongrel. -Michael http://javathehutt.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070102/c8e6ebc7/attachment-0001.html From jdz99 at hotmail.com Tue Jan 2 17:01:18 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Tue, 02 Jan 2007 22:01:18 +0000 Subject: [Mongrel] my apache 2.2 conf In-Reply-To: <1907e2ca0701021041l4cc4a6b9v2830d966013015e7@mail.gmail.com> Message-ID: >From: "Michael D'Auria" >Reply-To: mongrel-users at rubyforge.org >To: mongrel-users at rubyforge.org >Subject: Re: [Mongrel] my apache 2.2 conf >Date: Tue, 2 Jan 2007 13:41:39 -0500 > >Mongrel is probably set up to listen on port 3000 for localhost only. >Shouldn't you be connecting via port 80 instead and let Apache talk to >Mongrel? http://www.myserver.com > >On 1/2/07, Jim Douglas wrote: >> >> >From: Steven Lumos >> >Reply-To: mongrel-users at rubyforge.org >> >To: mongrel-users at rubyforge.org >> >Subject: [Mongrel] my apache 2.2 conf >> >Date: Thu, 21 Dec 2006 11:20:38 -0800 >> > >> > >> >I just finished updating our internal site, which hosts multiple Rails >> >apps, to Apache 2.2.3. It also has a TWiki rewritten into the root, >> >ViewVC mounted on /cvs, and /server-status and /server-info. >> > >> > >> > ServerName int.example.com >> > ServerAlias int >> > >> > CustomLog /var/www/logs/int.example.com/access.log combined >> > ErrorLog /var/www/logs/int.example.com/error.log >> > >> > [...] >> > >> > ## Application Server >> > >> > # APP1 >> > >> > BalancerMember http://127.0.0.1:11001 >> > >> > >> > Alias /app1 /production/app1/public >> > >> > Allow from .example.com >> > RewriteEngine on >> > RewriteRule ^/?$ balancer://app1%{REQUEST_URI} [P,L] >> > RewriteCond %{REQUEST_FILENAME} !-f >> > RewriteRule . balancer://app1%{REQUEST_URI} [P,L] >> > >> > # End APP1 >> > >> > # APP2 >> > >> > BalancerMember http://127.0.0.1:11010 >> > >> > >> > Alias /app2 /dev/app2/public >> > >> > Allow from .example.com >> > RewriteEngine on >> > RewriteRule ^/?$ balancer://app2%{REQUEST_URI} [P,L] >> > RewriteCond %{REQUEST_FILENAME} !-f >> > RewriteRule . balancer://app2%{REQUEST_URI} [P,L] >> > >> > # End APP2 >> > >> > >> >Then I give mongrel_rails --prefix app and done. Almost too easy. >> >And it's going to be almost trivial to add more mongrels whenever we >> >need them and I set up mongrel_cluster. Thanks again Zed and whoever >> >is responsible for mod_proxy(_balance). >> > >> >Steve >> > >> >_______________________________________________ >> >Mongrel-users mailing list >> >Mongrel-users at rubyforge.org >> >http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >>I tried this config and can get it working from the server like so, >> >>http://www.myserver.com:3000/ >> >>...but when I try to access this address from a client machine elsewhere I >>get a "unable to connect error" >> >>any ideas? >> >>Jim >> >>_________________________________________________________________ >>Find sales, coupons, and free shipping, all in one place! MSN Shopping >>Sales & Deals >>http://shopping.msn.com/content/shp/?ctid=198,ptnrid=176,ptnrdata=200639 >> >> >> >>_______________________________________________ >>Mongrel-users mailing list >>Mongrel-users at rubyforge.org >>http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >_______________________________________________ >Mongrel-users mailing list >Mongrel-users at rubyforge.org >http://rubyforge.org/mailman/listinfo/mongrel-users I have a websirte and want to demo a RoR appin a sub directory. Apache in front of Mongrel, that's why I want http://www.myserver.com:/ror, but I keep getting this error, Status: 500 Internal Server Error Content-Type: text/html Application error (Rails) So I am getting to it via, http://www.myserver.com/3000 Jim _________________________________________________________________ Type your favorite song.? Get a customized station.? Try MSN Radio powered by Pandora. http://radio.msn.com/?icid=T002MSN03A07001 From kovacs at gmail.com Tue Jan 2 17:32:46 2007 From: kovacs at gmail.com (Michael Kovacs) Date: Tue, 2 Jan 2007 14:32:46 -0800 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> Message-ID: Hmm... thanks for the suggestion I'll give that a look as well as search the archives here. I do have the logger rotating daily right now: config.logger = Logger.new(config.log_path, 'daily') I think I'll remove that and see if this occurs again. The thing that still bothers me though is that if one mongrel is broken from this shouldn't they all be? I can always count on 1 of 4 mongrels working so that every 3rd request is successful :-) In order to monitor that I'd have to hit the site twice to ensure that I'm not just getting the good mongrel on the first hit. Not very fresh. -Michael http://javathehutt.blogspot.com On Jan 2, 2007, at 1:36 PM, Joey Geiger wrote: > This may have to do with log rotation. There was a thread about > similar issue posted in I believe December. You might want to try > searching the mailing list archives. > > You're probably rotating your logs based on a specific size, which is > why it's happening every couple hours, instead of nightly. > > On 1/2/07, Michael Kovacs wrote: >> Hi all, >> >> I've been having problems with the apache 2.2-mod_proxy_balancer- >> mongrel >> setup. >> >> My setup is: >> >> CentOS 4.3 >> apache 2.2.3 (compiled from source) with mod_proxy_balancer >> mysql 4.1 >> ruby 1.8.4 >> mongrel 0.3.14 (I know I need to update but I think this problem is >> independent of the mongrel version) >> mongrel_cluster 0.2.0 >> rails_machine 0.1.1 >> >> I have apache setup as per Coda's configuration on his blog >> posting from >> several months back. >> http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server- >> rails-mongrel-apache-capistrano-and-you/ >> >> I have 4 mongrels in my cluster. >> >> Things work fine for periods of time but after several hours of >> inactivity >> (I think 8 hours or so) I experience oddness where only 1 of the 4 >> mongrels >> is properly >> responding. I end up getting a "500 internal server error" 3 out of 4 >> requests as they round robin from mongrel to mongrel. There is >> nothing in >> the production >> log file nor in the mongrel log. I've reproduced this problem on >> my staging >> box as well as my production box. >> >> The last time I reproduced the problem I decided to run "top" and >> see what's >> going on when I hit the server. >> Mongrel does receive every request but mysql is only active on the >> 1 request >> that works. In the other mongrels it never spikes up in CPU usage. >> >> Looking at the mysql process list revealed that all of the >> processes had >> received the "sleep" command but one of the processes is still >> working properly. I've played with connection timeouts other than >> to set the >> timeout in my application's environment >> (ActiveRecord::Base.verification_timeout = 14400) as well as the >> mysql >> interactive_timeout variable but it seems that all the mongrels >> should work >> or they shouldn't. The fact that 1 out of 4 always works is rather >> puzzling >> to me. >> >> Trying a 'killall -USR1 mongrel_rails" to turn debug on simply >> killed the 4 >> threads running mongrel. So now I'm running the cluster in debug >> mode and am >> going to just let it sit there for several hours until it happens >> again and >> hopefully get some idea of where the breakdown is happening. I >> still think >> it has to be a mysql connection timeout but again, the fact that 1 >> of the 4 >> always works doesn't lend credence to the timeout theory. >> >> Has anyone experienced this phenomenon themselves? >> >> Thanks for any tips/pointers and thanks Zed for all your hard work >> with >> mongrel. >> >> >> >> -Michaelhttp://javathehutt.blogspot.com >> >> >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users >> >> > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From kovacs at gmail.com Tue Jan 2 17:35:08 2007 From: kovacs at gmail.com (Michael Kovacs) Date: Tue, 2 Jan 2007 14:35:08 -0800 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <0MKoyl-1H1ra12qlX-0005JG@mrelay.perfora.net> References: <0MKoyl-1H1ra12qlX-0005JG@mrelay.perfora.net> Message-ID: <79FAAADD-0FA5-48EA-B23E-F34756C07DA3@gmail.com> So you are currently proactively restarting mongrel processes every 30 minutes? I have yet to setup monit but have every intention of doing so very soon, but the process of proactively restarting mongrels regardless of state isn't something I'd relish doing. I don't imagine that's the common case. At least I hope not. -Michael http://javathehutt.blogspot.com On Jan 2, 2007, at 1:59 PM, Shawn Hill wrote: > I have the same problem. People (including myself) use monit to > ensure processes don't freeze and some also set up scripts to > periodically restart individual mongrels (mine restart every 30 > minutes.) > > My setup: > Linux 2.6.18 > everything else is the same, except I upgraded mongrel (which had > no effect on the problem.) > > Appreciate suggestions from people who have encountered and > successfully resolved this issue. > > > From: mongrel-users-bounces at rubyforge.org [mailto:mongrel-users- > bounces at rubyforge.org] On Behalf Of Michael Kovacs > Sent: Tuesday, January 02, 2007 2:10 PM > To: mongrel-users at rubyforge.org > Subject: [Mongrel] problems with apache 2.2 proxying to mongrel > cluster > > Hi all, > > I've been having problems with the apache 2.2-mod_proxy_balancer- > mongrel setup. > > My setup is: > > CentOS 4.3 > apache 2.2.3 (compiled from source) with mod_proxy_balancer > mysql 4.1 > ruby 1.8.4 > mongrel 0.3.14 (I know I need to update but I think this problem is > independent of the mongrel version) > mongrel_cluster 0.2.0 > rails_machine 0.1.1 > > I have apache setup as per Coda's configuration on his blog posting > from several months back. > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server- > rails-mongrel-apache-capistrano-and-you/ > > I have 4 mongrels in my cluster. > > Things work fine for periods of time but after several hours of > inactivity (I think 8 hours or so) I experience oddness where only > 1 of the 4 mongrels is properly > responding. I end up getting a "500 internal server error" 3 out of > 4 requests as they round robin from mongrel to mongrel. There is > nothing in the production > log file nor in the mongrel log. I've reproduced this problem on my > staging box as well as my production box. > > The last time I reproduced the problem I decided to run "top" and > see what's going on when I hit the server. > Mongrel does receive every request but mysql is only active on the > 1 request that works. In the other mongrels it never spikes up in > CPU usage. > > Looking at the mysql process list revealed that all of the > processes had received the "sleep" command but one of the processes > is still > working properly. I've played with connection timeouts other than > to set the timeout in my application's environment > (ActiveRecord::Base.verification_timeout = 14400) as well as the > mysql interactive_timeout variable but it seems that all the > mongrels should work or they shouldn't. The fact that 1 out of 4 > always works is rather puzzling to me. > > Trying a 'killall -USR1 mongrel_rails" to turn debug on simply > killed the 4 threads running mongrel. So now I'm running the > cluster in debug mode and am going to just let it sit there for > several hours until it happens again and hopefully get some idea of > where the breakdown is happening. I still think it has to be a > mysql connection timeout but again, the fact that 1 of the 4 always > works doesn't lend credence to the timeout theory. > Has anyone experienced this phenomenon themselves? > > Thanks for any tips/pointers and thanks Zed for all your hard work > with mongrel. > > -Michael > http://javathehutt.blogspot.com > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070102/ec314aab/attachment.html From michael.dauria at gmail.com Tue Jan 2 17:51:31 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Tue, 2 Jan 2007 17:51:31 -0500 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> Message-ID: <1907e2ca0701021451n709c5b9u66964fa2a4d13540@mail.gmail.com> I didn't know i could use the Logger class like that, pretty sweet. Do people know if rotating the logs via Logger is the issue or just rotating in general? .: Michael :. On 1/2/07, Michael Kovacs wrote: > > Hmm... thanks for the suggestion I'll give that a look as well as > search the archives here. > > I do have the logger rotating daily right now: > config.logger = Logger.new(config.log_path, 'daily') > > I think I'll remove that and see if this occurs again. The thing that > still bothers me though > is that if one mongrel is broken from this shouldn't they all be? I > can always count on 1 of 4 mongrels > working so that every 3rd request is successful :-) In order to > monitor that I'd have to hit the site twice to > ensure that I'm not just getting the good mongrel on the first hit. > Not very fresh. > > -Michael > http://javathehutt.blogspot.com > > On Jan 2, 2007, at 1:36 PM, Joey Geiger wrote: > > > This may have to do with log rotation. There was a thread about > > similar issue posted in I believe December. You might want to try > > searching the mailing list archives. > > > > You're probably rotating your logs based on a specific size, which is > > why it's happening every couple hours, instead of nightly. > > > > On 1/2/07, Michael Kovacs wrote: > >> Hi all, > >> > >> I've been having problems with the apache 2.2-mod_proxy_balancer- > >> mongrel > >> setup. > >> > >> My setup is: > >> > >> CentOS 4.3 > >> apache 2.2.3 (compiled from source) with mod_proxy_balancer > >> mysql 4.1 > >> ruby 1.8.4 > >> mongrel 0.3.14 (I know I need to update but I think this problem is > >> independent of the mongrel version) > >> mongrel_cluster 0.2.0 > >> rails_machine 0.1.1 > >> > >> I have apache setup as per Coda's configuration on his blog > >> posting from > >> several months back. > >> http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server- > >> rails-mongrel-apache-capistrano-and-you/ > >> > >> I have 4 mongrels in my cluster. > >> > >> Things work fine for periods of time but after several hours of > >> inactivity > >> (I think 8 hours or so) I experience oddness where only 1 of the 4 > >> mongrels > >> is properly > >> responding. I end up getting a "500 internal server error" 3 out of 4 > >> requests as they round robin from mongrel to mongrel. There is > >> nothing in > >> the production > >> log file nor in the mongrel log. I've reproduced this problem on > >> my staging > >> box as well as my production box. > >> > >> The last time I reproduced the problem I decided to run "top" and > >> see what's > >> going on when I hit the server. > >> Mongrel does receive every request but mysql is only active on the > >> 1 request > >> that works. In the other mongrels it never spikes up in CPU usage. > >> > >> Looking at the mysql process list revealed that all of the > >> processes had > >> received the "sleep" command but one of the processes is still > >> working properly. I've played with connection timeouts other than > >> to set the > >> timeout in my application's environment > >> (ActiveRecord::Base.verification_timeout = 14400) as well as the > >> mysql > >> interactive_timeout variable but it seems that all the mongrels > >> should work > >> or they shouldn't. The fact that 1 out of 4 always works is rather > >> puzzling > >> to me. > >> > >> Trying a 'killall -USR1 mongrel_rails" to turn debug on simply > >> killed the 4 > >> threads running mongrel. So now I'm running the cluster in debug > >> mode and am > >> going to just let it sit there for several hours until it happens > >> again and > >> hopefully get some idea of where the breakdown is happening. I > >> still think > >> it has to be a mysql connection timeout but again, the fact that 1 > >> of the 4 > >> always works doesn't lend credence to the timeout theory. > >> > >> Has anyone experienced this phenomenon themselves? > >> > >> Thanks for any tips/pointers and thanks Zed for all your hard work > >> with > >> mongrel. > >> > >> > >> > >> -Michaelhttp://javathehutt.blogspot.com > >> > >> > >> _______________________________________________ > >> Mongrel-users mailing list > >> Mongrel-users at rubyforge.org > >> http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070102/8f95ba77/attachment-0001.html From ezmobius at gmail.com Tue Jan 2 17:55:32 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Tue, 2 Jan 2007 14:55:32 -0800 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> Message-ID: <25274268-2C4C-4CD9-9882-E9CF55759036@brainspl.at> Hey Michael- You should definitely now use the ruby logger to do rotation. That has caused tons of issues for me and others. Use syslog or logrotate to rotate the logs as the Logger rotator is borken trust me. As for why you are having opne process stay alive and the others die. I think what causes that is that all four of your mongrels will try to rotate the logs. And its a free for all. So the one who does it last 'wins' and stays alive. Or if it is a mysql timeout issue then what is probably happening is that only one of your mongrels is getting 'exercised' . By this I mean the load balancer is only sending requests to one mongrel because there is not enough traffic to make it drive all four mongrels. This means that the one mongrel is getting requests which keep its db connection alive. While the others are not getting requests so their db connectiosn die off. I think it's one of these two things. Sop don't use Logger to rotate logs for starters and see if that fixes it for you. Cheers -Ezra On Jan 2, 2007, at 2:32 PM, Michael Kovacs wrote: > Hmm... thanks for the suggestion I'll give that a look as well as > search the archives here. > > I do have the logger rotating daily right now: > config.logger = Logger.new(config.log_path, 'daily') > > I think I'll remove that and see if this occurs again. The thing that > still bothers me though > is that if one mongrel is broken from this shouldn't they all be? I > can always count on 1 of 4 mongrels > working so that every 3rd request is successful :-) In order to > monitor that I'd have to hit the site twice to > ensure that I'm not just getting the good mongrel on the first hit. > Not very fresh. > > -Michael > http://javathehutt.blogspot.com > > On Jan 2, 2007, at 1:36 PM, Joey Geiger wrote: > >> This may have to do with log rotation. There was a thread about >> similar issue posted in I believe December. You might want to try >> searching the mailing list archives. >> >> You're probably rotating your logs based on a specific size, which is >> why it's happening every couple hours, instead of nightly. >> >> On 1/2/07, Michael Kovacs wrote: >>> Hi all, >>> >>> I've been having problems with the apache 2.2-mod_proxy_balancer- >>> mongrel >>> setup. >>> >>> My setup is: >>> >>> CentOS 4.3 >>> apache 2.2.3 (compiled from source) with mod_proxy_balancer >>> mysql 4.1 >>> ruby 1.8.4 >>> mongrel 0.3.14 (I know I need to update but I think this problem is >>> independent of the mongrel version) >>> mongrel_cluster 0.2.0 >>> rails_machine 0.1.1 >>> >>> I have apache setup as per Coda's configuration on his blog >>> posting from >>> several months back. >>> http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server- >>> rails-mongrel-apache-capistrano-and-you/ >>> >>> I have 4 mongrels in my cluster. >>> >>> Things work fine for periods of time but after several hours of >>> inactivity >>> (I think 8 hours or so) I experience oddness where only 1 of the 4 >>> mongrels >>> is properly >>> responding. I end up getting a "500 internal server error" 3 out >>> of 4 >>> requests as they round robin from mongrel to mongrel. There is >>> nothing in >>> the production >>> log file nor in the mongrel log. I've reproduced this problem on >>> my staging >>> box as well as my production box. >>> >>> The last time I reproduced the problem I decided to run "top" and >>> see what's >>> going on when I hit the server. >>> Mongrel does receive every request but mysql is only active on the >>> 1 request >>> that works. In the other mongrels it never spikes up in CPU usage. >>> >>> Looking at the mysql process list revealed that all of the >>> processes had >>> received the "sleep" command but one of the processes is still >>> working properly. I've played with connection timeouts other than >>> to set the >>> timeout in my application's environment >>> (ActiveRecord::Base.verification_timeout = 14400) as well as the >>> mysql >>> interactive_timeout variable but it seems that all the mongrels >>> should work >>> or they shouldn't. The fact that 1 out of 4 always works is rather >>> puzzling >>> to me. >>> >>> Trying a 'killall -USR1 mongrel_rails" to turn debug on simply >>> killed the 4 >>> threads running mongrel. So now I'm running the cluster in debug >>> mode and am >>> going to just let it sit there for several hours until it happens >>> again and >>> hopefully get some idea of where the breakdown is happening. I >>> still think >>> it has to be a mysql connection timeout but again, the fact that 1 >>> of the 4 >>> always works doesn't lend credence to the timeout theory. >>> >>> Has anyone experienced this phenomenon themselves? >>> >>> Thanks for any tips/pointers and thanks Zed for all your hard work >>> with >>> mongrel. >>> >>> >>> >>> -Michaelhttp://javathehutt.blogspot.com >>> >>> >>> _______________________________________________ >>> Mongrel-users mailing list >>> Mongrel-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/mongrel-users >>> >>> >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From jgeiger at gmail.com Tue Jan 2 17:56:29 2007 From: jgeiger at gmail.com (Joey Geiger) Date: Tue, 2 Jan 2007 16:56:29 -0600 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <79FAAADD-0FA5-48EA-B23E-F34756C07DA3@gmail.com> References: <0MKoyl-1H1ra12qlX-0005JG@mrelay.perfora.net> <79FAAADD-0FA5-48EA-B23E-F34756C07DA3@gmail.com> Message-ID: <466af3440701021456s7205dacfv6f2116e13c8326f1@mail.gmail.com> Actually won't kill all the mongrels, since one of them will still have control of the log file. It's the ones that can't access the log file that are failing. I'm using logrotate to swap my logs, and also having monit restart each mongrel in turn after the rotation so they pick up the new log file. This may have the consequence of losing some requests on the mongrel side, but everything for me is being logged via apache anyway, so I don't really care. I'd like to try installing SyslogLogger eventually, but for now, my solution is working fine. On 1/2/07, Michael Kovacs wrote: > So you are currently proactively restarting mongrel processes every 30 > minutes? I have yet to setup monit but have every intention of > doing so very soon, but the process of proactively restarting mongrels > regardless of state isn't something I'd relish doing. I don't imagine > that's the common case. At least I hope not. > > > -Michaelhttp://javathehutt.blogspot.com > > > On Jan 2, 2007, at 1:59 PM, Shawn Hill wrote: > > I have the same problem. People (including myself) use monit to ensure > processes don't freeze and some also set up scripts to periodically restart > individual mongrels (mine restart every 30 minutes.) > > My setup: > Linux 2.6.18 > everything else is the same, except I upgraded mongrel (which had no effect > on the problem.) > > Appreciate suggestions from people who have encountered and successfully > resolved this issue. > > > ________________________________ > From: mongrel-users-bounces at rubyforge.org > [mailto:mongrel-users-bounces at rubyforge.org] On Behalf Of > Michael Kovacs > Sent: Tuesday, January 02, 2007 2:10 PM > To: mongrel-users at rubyforge.org > Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster > > > Hi all, > > > I've been having problems with the apache 2.2-mod_proxy_balancer-mongrel > setup. > > > My setup is: > > > CentOS 4.3 > apache 2.2.3 (compiled from source) with mod_proxy_balancer > mysql 4.1 > ruby 1.8.4 > mongrel 0.3.14 (I know I need to update but I think this problem is > independent of the mongrel version) > mongrel_cluster 0.2.0 > rails_machine 0.1.1 > > > I have apache setup as per Coda's configuration on his blog posting from > several months back. > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > I have 4 mongrels in my cluster. > > > Things work fine for periods of time but after several hours of inactivity > (I think 8 hours or so) I experience oddness where only 1 of the 4 mongrels > is properly > responding. I end up getting a "500 internal server error" 3 out of 4 > requests as they round robin from mongrel to mongrel. There is nothing in > the production > log file nor in the mongrel log. I've reproduced this problem on my staging > box as well as my production box. > > > The last time I reproduced the problem I decided to run "top" and see what's > going on when I hit the server. > Mongrel does receive every request but mysql is only active on the 1 request > that works. In the other mongrels it never spikes up in CPU usage. > > > Looking at the mysql process list revealed that all of the processes had > received the "sleep" command but one of the processes is still > working properly. I've played with connection timeouts other than to set the > timeout in my application's environment > (ActiveRecord::Base.verification_timeout = 14400) as well as the mysql > interactive_timeout variable but it seems that all the mongrels should work > or they shouldn't. The fact that 1 out of 4 always works is rather puzzling > to me. > > > Trying a 'killall -USR1 mongrel_rails" to turn debug on simply killed the 4 > threads running mongrel. So now I'm running the cluster in debug mode and am > going to just let it sit there for several hours until it happens again and > hopefully get some idea of where the breakdown is happening. I still think > it has to be a mysql connection timeout but again, the fact that 1 of the 4 > always works doesn't lend credence to the timeout theory. > > Has anyone experienced this phenomenon themselves? > > > Thanks for any tips/pointers and thanks Zed for all your hard work with > mongrel. > > > > > -Michaelhttp://javathehutt.blogspot.com > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > From _ at whats-your.name Tue Jan 2 17:49:49 2007 From: _ at whats-your.name (carmen) Date: Tue, 2 Jan 2007 17:49:49 -0500 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> Message-ID: <20070102224949.GA8945@replic.net> speaking of problems with apache 2 proxying to mongrel cluster. does anyone know how to make it not unescape GET URIs before passing them to mongrel? ive done some googling and it looks like its some kind of intractable design issue, i see complaints of it in 2001, 2003, and 2006. but maybe theres a workaround? i already tried 'reescaping' it using mod_rewrite, but they ened up different than before (its crucial that the URI is unmodified in my app - even query strings and # .. guess i should just buy a slicehost and bypass my currant admins reluctance to switch off apache.. From kovacs at gmail.com Tue Jan 2 18:21:50 2007 From: kovacs at gmail.com (Michael Kovacs) Date: Tue, 2 Jan 2007 15:21:50 -0800 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <1907e2ca0701021451n709c5b9u66964fa2a4d13540@mail.gmail.com> References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> <1907e2ca0701021451n709c5b9u66964fa2a4d13540@mail.gmail.com> Message-ID: <84D517AD-92BB-4601-9D51-8E1992D60E7B@gmail.com> So I've used the rotating log with lightty/fcgi and the only issue was that when it would rotate you would lose all further requests because it didn't have a handle to the logfile. So everyday at log rotation time I would restart my fcgi processes so that a new production.log file would be populated and my app would go along its merry way. Apparently I've hit the same thing with mongrel only the processes die with no errors anywhere. I still have to determine this is the cause of my problem but I will be surprised if it's not. -Michael http://javathehutt.blogspot.com On Jan 2, 2007, at 2:51 PM, Michael D'Auria wrote: > I didn't know i could use the Logger class like that, pretty sweet. > > Do people know if rotating the logs via Logger is the issue or just > rotating in general? > > .: Michael :. > > > On 1/2/07, Michael Kovacs wrote: > Hmm... thanks for the suggestion I'll give that a look as well as > search the archives here. > > I do have the logger rotating daily right now: > config.logger = Logger.new(config.log_path, 'daily') > > I think I'll remove that and see if this occurs again. The thing that > still bothers me though > is that if one mongrel is broken from this shouldn't they all be? I > can always count on 1 of 4 mongrels > working so that every 3rd request is successful :-) In order to > monitor that I'd have to hit the site twice to > ensure that I'm not just getting the good mongrel on the first hit. > Not very fresh. > > -Michael > http://javathehutt.blogspot.com > > On Jan 2, 2007, at 1:36 PM, Joey Geiger wrote: > > > This may have to do with log rotation. There was a thread about > > similar issue posted in I believe December. You might want to try > > searching the mailing list archives. > > > > You're probably rotating your logs based on a specific size, > which is > > why it's happening every couple hours, instead of nightly. > > > > On 1/2/07, Michael Kovacs wrote: > >> Hi all, > >> > >> I've been having problems with the apache 2.2-mod_proxy_balancer- > >> mongrel > >> setup. > >> > >> My setup is: > >> > >> CentOS 4.3 > >> apache 2.2.3 (compiled from source) with mod_proxy_balancer > >> mysql 4.1 > >> ruby 1.8.4 > >> mongrel 0.3.14 (I know I need to update but I think this problem is > >> independent of the mongrel version) > >> mongrel_cluster 0.2.0 > >> rails_machine 0.1.1 > >> > >> I have apache setup as per Coda's configuration on his blog > >> posting from > >> several months back. > >> http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server- > >> rails-mongrel-apache-capistrano-and-you/ > >> > >> I have 4 mongrels in my cluster. > >> > >> Things work fine for periods of time but after several hours of > >> inactivity > >> (I think 8 hours or so) I experience oddness where only 1 of the 4 > >> mongrels > >> is properly > >> responding. I end up getting a "500 internal server error" 3 out > of 4 > >> requests as they round robin from mongrel to mongrel. There is > >> nothing in > >> the production > >> log file nor in the mongrel log. I've reproduced this problem on > >> my staging > >> box as well as my production box. > >> > >> The last time I reproduced the problem I decided to run "top" and > >> see what's > >> going on when I hit the server. > >> Mongrel does receive every request but mysql is only active on the > >> 1 request > >> that works. In the other mongrels it never spikes up in CPU usage. > >> > >> Looking at the mysql process list revealed that all of the > >> processes had > >> received the "sleep" command but one of the processes is still > >> working properly. I've played with connection timeouts other than > >> to set the > >> timeout in my application's environment > >> (ActiveRecord::Base.verification_timeout = 14400) as well as the > >> mysql > >> interactive_timeout variable but it seems that all the mongrels > >> should work > >> or they shouldn't. The fact that 1 out of 4 always works is rather > >> puzzling > >> to me. > >> > >> Trying a 'killall -USR1 mongrel_rails" to turn debug on simply > >> killed the 4 > >> threads running mongrel. So now I'm running the cluster in debug > >> mode and am > >> going to just let it sit there for several hours until it happens > >> again and > >> hopefully get some idea of where the breakdown is happening. I > >> still think > >> it has to be a mysql connection timeout but again, the fact that 1 > >> of the 4 > >> always works doesn't lend credence to the timeout theory. > >> > >> Has anyone experienced this phenomenon themselves? > >> > >> Thanks for any tips/pointers and thanks Zed for all your hard work > >> with > >> mongrel. > >> > >> > >> > >> -Michaelhttp://javathehutt.blogspot.com > >> > >> > >> _______________________________________________ > >> Mongrel-users mailing list > >> Mongrel-users at rubyforge.org > >> http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070102/12a41c13/attachment-0001.html From me at seebq.com Tue Jan 2 18:27:58 2007 From: me at seebq.com (Charles Brian Quinn) Date: Tue, 2 Jan 2007 18:27:58 -0500 Subject: [Mongrel] my apache 2.2 conf In-Reply-To: References: <1907e2ca0701021041l4cc4a6b9v2830d966013015e7@mail.gmail.com> Message-ID: <3a2de0cd0701021527r69c7eaedw1f546dfc56b45a07@mail.gmail.com> if your mongrel configuration files have the line: address: 127.0.0.1 you will only be able to access them from the local machine, i.e. 127.0.0.1 or localhost -- so http://localhost:3000/ NOT: http://servername.com:3000/ Also, if you're wanting to use a prefix (a directory after the domain, like http://mydomain.com/ror/ then, you need the mongrel prefix line: prefix: ror Check the syntax on the above, but should be right. On 1/2/07, Jim Douglas wrote: > >From: "Michael D'Auria" > >Reply-To: mongrel-users at rubyforge.org > >To: mongrel-users at rubyforge.org > >Subject: Re: [Mongrel] my apache 2.2 conf > >Date: Tue, 2 Jan 2007 13:41:39 -0500 > > > >Mongrel is probably set up to listen on port 3000 for localhost only. > >Shouldn't you be connecting via port 80 instead and let Apache talk to > >Mongrel? http://www.myserver.com > > > >On 1/2/07, Jim Douglas wrote: > >> > >> >From: Steven Lumos > >> >Reply-To: mongrel-users at rubyforge.org > >> >To: mongrel-users at rubyforge.org > >> >Subject: [Mongrel] my apache 2.2 conf > >> >Date: Thu, 21 Dec 2006 11:20:38 -0800 > >> > > >> > > >> >I just finished updating our internal site, which hosts multiple Rails > >> >apps, to Apache 2.2.3. It also has a TWiki rewritten into the root, > >> >ViewVC mounted on /cvs, and /server-status and /server-info. > >> > > >> > > >> > ServerName int.example.com > >> > ServerAlias int > >> > > >> > CustomLog /var/www/logs/int.example.com/access.log combined > >> > ErrorLog /var/www/logs/int.example.com/error.log > >> > > >> > [...] > >> > > >> > ## Application Server > >> > > >> > # APP1 > >> > > >> > BalancerMember http://127.0.0.1:11001 > >> > > >> > > >> > Alias /app1 /production/app1/public > >> > > >> > Allow from .example.com > >> > RewriteEngine on > >> > RewriteRule ^/?$ balancer://app1%{REQUEST_URI} [P,L] > >> > RewriteCond %{REQUEST_FILENAME} !-f > >> > RewriteRule . balancer://app1%{REQUEST_URI} [P,L] > >> > > >> > # End APP1 > >> > > >> > # APP2 > >> > > >> > BalancerMember http://127.0.0.1:11010 > >> > > >> > > >> > Alias /app2 /dev/app2/public > >> > > >> > Allow from .example.com > >> > RewriteEngine on > >> > RewriteRule ^/?$ balancer://app2%{REQUEST_URI} [P,L] > >> > RewriteCond %{REQUEST_FILENAME} !-f > >> > RewriteRule . balancer://app2%{REQUEST_URI} [P,L] > >> > > >> > # End APP2 > >> > > >> > > >> >Then I give mongrel_rails --prefix app and done. Almost too easy. > >> >And it's going to be almost trivial to add more mongrels whenever we > >> >need them and I set up mongrel_cluster. Thanks again Zed and whoever > >> >is responsible for mod_proxy(_balance). > >> > > >> >Steve > >> > > >> >_______________________________________________ > >> >Mongrel-users mailing list > >> >Mongrel-users at rubyforge.org > >> >http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > >>I tried this config and can get it working from the server like so, > >> > >>http://www.myserver.com:3000/ > >> > >>...but when I try to access this address from a client machine elsewhere I > >>get a "unable to connect error" > >> > >>any ideas? > >> > >>Jim > >> > >>_________________________________________________________________ > >>Find sales, coupons, and free shipping, all in one place! MSN Shopping > >>Sales & Deals > >>http://shopping.msn.com/content/shp/?ctid=198,ptnrid=176,ptnrdata=200639 > >> > >> > >> > >>_______________________________________________ > >>Mongrel-users mailing list > >>Mongrel-users at rubyforge.org > >>http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > > > >_______________________________________________ > >Mongrel-users mailing list > >Mongrel-users at rubyforge.org > >http://rubyforge.org/mailman/listinfo/mongrel-users > > > I have a websirte and want to demo a RoR appin a sub directory. Apache in > front of Mongrel, that's why I want http://www.myserver.com:/ror, but I keep > getting this error, > > Status: 500 Internal Server Error Content-Type: text/html > Application error (Rails) > > So I am getting to it via, > http://www.myserver.com/3000 > > Jim > > _________________________________________________________________ > Type your favorite song. Get a customized station. Try MSN Radio powered > by Pandora. http://radio.msn.com/?icid=T002MSN03A07001 > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From kovacs at gmail.com Tue Jan 2 21:04:50 2007 From: kovacs at gmail.com (Michael Kovacs) Date: Tue, 2 Jan 2007 18:04:50 -0800 Subject: [Mongrel] problems with apache 2.2 proxying to mongrel cluster In-Reply-To: <25274268-2C4C-4CD9-9882-E9CF55759036@brainspl.at> References: <4C751C24-C739-411A-A763-55752BA08FEF@gmail.com> <466af3440701021336j767ca23apbe685cb0b7203fc4@mail.gmail.com> <25274268-2C4C-4CD9-9882-E9CF55759036@brainspl.at> Message-ID: <252748EB-AC54-48BE-9A22-21D80A880893@gmail.com> Yep log rolling was the problem. I setup my staging box and reproduced it just fine by rolling the date. Taking out the log roller command from my environment.rb setup worked just fine when I rolled days. -Michael http://javathehutt.blogspot.com On Jan 2, 2007, at 2:55 PM, Ezra Zygmuntowicz wrote: > Hey Michael- > > You should definitely now use the ruby logger to do rotation. That > has caused tons of issues for me and others. Use syslog or logrotate > to rotate the logs as the Logger rotator is borken trust me. > > As for why you are having opne process stay alive and the others > die. I think what causes that is that all four of your mongrels will > try to rotate the logs. And its a free for all. So the one who does > it last 'wins' and stays alive. Or if it is a mysql timeout issue > then what is probably happening is that only one of your mongrels is > getting 'exercised' . By this I mean the load balancer is only > sending requests to one mongrel because there is not enough traffic > to make it drive all four mongrels. This means that the one mongrel > is getting requests which keep its db connection alive. While the > others are not getting requests so their db connectiosn die off. > > I think it's one of these two things. Sop don't use Logger to rotate > logs for starters and see if that fixes it for you. > > Cheers > -Ezra > > On Jan 2, 2007, at 2:32 PM, Michael Kovacs wrote: > >> Hmm... thanks for the suggestion I'll give that a look as well as >> search the archives here. >> >> I do have the logger rotating daily right now: >> config.logger = Logger.new(config.log_path, 'daily') >> >> I think I'll remove that and see if this occurs again. The thing that >> still bothers me though >> is that if one mongrel is broken from this shouldn't they all be? I >> can always count on 1 of 4 mongrels >> working so that every 3rd request is successful :-) In order to >> monitor that I'd have to hit the site twice to >> ensure that I'm not just getting the good mongrel on the first hit. >> Not very fresh. >> >> -Michael >> http://javathehutt.blogspot.com >> >> On Jan 2, 2007, at 1:36 PM, Joey Geiger wrote: >> >>> This may have to do with log rotation. There was a thread about >>> similar issue posted in I believe December. You might want to try >>> searching the mailing list archives. >>> >>> You're probably rotating your logs based on a specific size, >>> which is >>> why it's happening every couple hours, instead of nightly. >>> >>> On 1/2/07, Michael Kovacs wrote: >>>> Hi all, >>>> >>>> I've been having problems with the apache 2.2-mod_proxy_balancer- >>>> mongrel >>>> setup. >>>> >>>> My setup is: >>>> >>>> CentOS 4.3 >>>> apache 2.2.3 (compiled from source) with mod_proxy_balancer >>>> mysql 4.1 >>>> ruby 1.8.4 >>>> mongrel 0.3.14 (I know I need to update but I think this problem is >>>> independent of the mongrel version) >>>> mongrel_cluster 0.2.0 >>>> rails_machine 0.1.1 >>>> >>>> I have apache setup as per Coda's configuration on his blog >>>> posting from >>>> several months back. >>>> http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server- >>>> rails-mongrel-apache-capistrano-and-you/ >>>> >>>> I have 4 mongrels in my cluster. >>>> >>>> Things work fine for periods of time but after several hours of >>>> inactivity >>>> (I think 8 hours or so) I experience oddness where only 1 of the 4 >>>> mongrels >>>> is properly >>>> responding. I end up getting a "500 internal server error" 3 out >>>> of 4 >>>> requests as they round robin from mongrel to mongrel. There is >>>> nothing in >>>> the production >>>> log file nor in the mongrel log. I've reproduced this problem on >>>> my staging >>>> box as well as my production box. >>>> >>>> The last time I reproduced the problem I decided to run "top" and >>>> see what's >>>> going on when I hit the server. >>>> Mongrel does receive every request but mysql is only active on the >>>> 1 request >>>> that works. In the other mongrels it never spikes up in CPU usage. >>>> >>>> Looking at the mysql process list revealed that all of the >>>> processes had >>>> received the "sleep" command but one of the processes is still >>>> working properly. I've played with connection timeouts other than >>>> to set the >>>> timeout in my application's environment >>>> (ActiveRecord::Base.verification_timeout = 14400) as well as the >>>> mysql >>>> interactive_timeout variable but it seems that all the mongrels >>>> should work >>>> or they shouldn't. The fact that 1 out of 4 always works is rather >>>> puzzling >>>> to me. >>>> >>>> Trying a 'killall -USR1 mongrel_rails" to turn debug on simply >>>> killed the 4 >>>> threads running mongrel. So now I'm running the cluster in debug >>>> mode and am >>>> going to just let it sit there for several hours until it happens >>>> again and >>>> hopefully get some idea of where the breakdown is happening. I >>>> still think >>>> it has to be a mysql connection timeout but again, the fact that 1 >>>> of the 4 >>>> always works doesn't lend credence to the timeout theory. >>>> >>>> Has anyone experienced this phenomenon themselves? >>>> >>>> Thanks for any tips/pointers and thanks Zed for all your hard work >>>> with >>>> mongrel. >>>> >>>> >>>> >>>> -Michaelhttp://javathehutt.blogspot.com >>>> >>>> >>>> _______________________________________________ >>>> Mongrel-users mailing list >>>> Mongrel-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/mongrel-users >>>> >>>> >>> _______________________________________________ >>> Mongrel-users mailing list >>> Mongrel-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/mongrel-users >> >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users >> > > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From jdz99 at hotmail.com Wed Jan 3 15:09:59 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Wed, 03 Jan 2007 20:09:59 +0000 Subject: [Mongrel] Frustrating Error Message-ID: I am followint this article, http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ ...but I keep getting this error in the log...not sure what to try next... ** Daemonized, any open files are closed. Look at log/mongrel.8000.pid and log/mongrel.log for info. ** Starting Mongrel listening at 127.0.0.1:8000 /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in `initialize_without_backlog': Address already in use - bind(2) (Errno::EADDRINUSE) from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in `initialize' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `initialize' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in `new' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in `listener' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in `cloaker_' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in `call' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in `initialize' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in `run' from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 from /usr/bin/mongrel_rails:18:in `load' from /usr/bin/mongrel_rails:18 Thanks, Jim _________________________________________________________________ The MSN Entertainment Guide to Golden Globes is here. Get all the scoop. http://tv.msn.com/tv/globes2007/ From kylekochis at gmail.com Wed Jan 3 15:20:40 2007 From: kylekochis at gmail.com (Kyle Kochis) Date: Wed, 3 Jan 2007 13:20:40 -0700 Subject: [Mongrel] Frustrating Error In-Reply-To: References: Message-ID: <6a7034b0701031220k3f24bcffy2f5a817bed321a9e@mail.gmail.com> Based on the error it looks like you probably have another server running on that port--my guess is mongrel but it could also be something else running there too. Kyle Kochis On 1/3/07, Jim Douglas wrote: > > I am followint this article, > > > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > ...but I keep getting this error in the log...not sure what to try next... > > ** Daemonized, any open files are closed. Look at log/mongrel.8000.pid > and > log/mongrel.log for info. > ** Starting Mongrel listening at 127.0.0.1:8000 > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > `initialize_without_backlog': Address already in use - bind(2) > (Errno::EADDRINUSE) > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/tcphack.rb:12:in > `initialize' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > `new' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > `initialize' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > `new' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > `listener' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /bin/mongrel_rails:98:in > `cloaker_' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > `call' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > `initialize' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in > `new' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in > `run' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/command.rb:211:in > `run' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > from /usr/bin/mongrel_rails:18:in `load' > from /usr/bin/mongrel_rails:18 > > Thanks, > Jim > > _________________________________________________________________ > The MSN Entertainment Guide to Golden Globes is here. Get all the scoop. > http://tv.msn.com/tv/globes2007/ > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070103/e6a705dc/attachment.html From rsanheim at gmail.com Wed Jan 3 15:23:01 2007 From: rsanheim at gmail.com (Rob Sanheim) Date: Wed, 3 Jan 2007 14:23:01 -0600 Subject: [Mongrel] problem with mongrel/apache2.2.3 and subdomain setup In-Reply-To: <3a2de0cd0701021050y56cf7fc1j743a324a32adc5d6@mail.gmail.com> References: <3a2de0cd0701021050y56cf7fc1j743a324a32adc5d6@mail.gmail.com> Message-ID: On 1/2/07, Charles Brian Quinn wrote: > I'd add another: > > > ServerName www.otherdomain.tld > DocumentRoot /www/otherdomain > > > for your main document root, since you're using VirtualHosts. > > and make sure that loads last -- this could mean if you're doing something like: > > Include /etc/rails/*.conf > > in an apache configuration file that you name the files accordingly > (perhaps 00_my_site.conf and 99_default_vhost.conf) > > hope that helps, Thanks, that led me down the right path. I needed the main domain vhost to load first, and I also needed to add NameVirtualHost *:80 to my main config. Now it all works. - Rob From luislavena at gmail.com Wed Jan 3 15:24:38 2007 From: luislavena at gmail.com (Luis Lavena) Date: Wed, 3 Jan 2007 17:24:38 -0300 Subject: [Mongrel] Frustrating Error In-Reply-To: References: Message-ID: <71166b3b0701031224s763a8927h257d72ee55d23641@mail.gmail.com> On 1/3/07, Jim Douglas wrote: > I am followint this article, > > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > ...but I keep getting this error in the log...not sure what to try next... > Errno::EADDRINUSE refer to the address+port combination being used by OTHER application (could be another mongrel already daemonized on that port or webrick). you could check using ps: $ sudo ps ax | grep mongrel And if you get more than one grep mongrel process running, that means you must kill them first. > ** Daemonized, any open files are closed. Look at log/mongrel.8000.pid and > log/mongrel.log for info. > ** Starting Mongrel listening at 127.0.0.1:8000 > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > `initialize_without_backlog': Address already in use - bind(2) > (Errno::EADDRINUSE) > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > `initialize' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > `initialize' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > `new' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > `listener' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in > `cloaker_' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > `call' > from > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > `initialize' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > `run' > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > from /usr/bin/mongrel_rails:18:in `load' > from /usr/bin/mongrel_rails:18 > > Thanks, > Jim > > _________________________________________________________________ > The MSN Entertainment Guide to Golden Globes is here. Get all the scoop. > http://tv.msn.com/tv/globes2007/ > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Luis Lavena Multimedia systems - Leaders are made, they are not born. They are made by hard effort, which is the price which all of us must pay to achieve any goal that is worthwhile. Vince Lombardi From michael.dauria at gmail.com Wed Jan 3 16:00:29 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Wed, 3 Jan 2007 16:00:29 -0500 Subject: [Mongrel] Frustrating Error In-Reply-To: <6a7034b0701031220k3f24bcffy2f5a817bed321a9e@mail.gmail.com> References: <6a7034b0701031220k3f24bcffy2f5a817bed321a9e@mail.gmail.com> Message-ID: <1907e2ca0701031300r6921bfdfxcccff6caf0bd023f@mail.gmail.com> issue an: "lsof | grep 8000" which lists all open files, which includes all open ports so you can see the process that is causing you grief. Let us know what you find. .: Michael :. On 1/3/07, Kyle Kochis wrote: > > Based on the error it looks like you probably have another server running > on that port--my guess is mongrel but it could also be something else > running there too. > Kyle Kochis > > On 1/3/07, Jim Douglas wrote: > > > > I am followint this article, > > > > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > > > > > > ...but I keep getting this error in the log...not sure what to try > > next... > > > > ** Daemonized, any open files are closed. Look at log/mongrel.8000.pid > > and > > log/mongrel.log for info. > > ** Starting Mongrel listening at 127.0.0.1:8000 > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > `initialize_without_backlog': Address already in use - bind(2) > > (Errno::EADDRINUSE) > > from /usr/lib/ruby/gems/1.8/gems/mongrel- 1.0 > > /lib/mongrel/tcphack.rb:12:in > > `initialize' > > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > > `new' > > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /lib/mongrel.rb:560:in > > `initialize' > > from > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /lib/mongrel/configurator.rb:128:in > > `new' > > from > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /lib/mongrel/configurator.rb:128:in > > `listener' > > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /bin/mongrel_rails:98:in > > `cloaker_' > > from > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /lib/mongrel/configurator.rb:51:in > > `call' > > from > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /lib/mongrel/configurator.rb:51:in > > `initialize' > > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in > > `new' > > from /usr/lib/ruby/gems/1.8/gems/mongrel- 1.0/bin/mongrel_rails:83:in > > `run' > > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /lib/mongrel/command.rb:211:in > > `run' > > from /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > > /bin/mongrel_rails:243 > > from /usr/bin/mongrel_rails:18:in `load' > > from /usr/bin/mongrel_rails:18 > > > > Thanks, > > Jim > > > > _________________________________________________________________ > > The MSN Entertainment Guide to Golden Globes is here. Get all the > > scoop. > > http://tv.msn.com/tv/globes2007/ > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070103/b4cf032d/attachment.html From jdz99 at hotmail.com Wed Jan 3 16:23:24 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Wed, 03 Jan 2007 21:23:24 +0000 Subject: [Mongrel] Frustrating Error In-Reply-To: <71166b3b0701031224s763a8927h257d72ee55d23641@mail.gmail.com> Message-ID: >From: "Luis Lavena" >Reply-To: mongrel-users at rubyforge.org >To: mongrel-users at rubyforge.org >Subject: Re: [Mongrel] Frustrating Error >Date: Wed, 3 Jan 2007 17:24:38 -0300 > >On 1/3/07, Jim Douglas wrote: > > I am followint this article, > > > > >http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > > > > ...but I keep getting this error in the log...not sure what to try >next... > > > >Errno::EADDRINUSE refer to the address+port combination being used by >OTHER application (could be another mongrel already daemonized on that >port or webrick). > >you could check using ps: > >$ sudo ps ax | grep mongrel > >And if you get more than one grep mongrel process running, that means >you must kill them first. > > > > ** Daemonized, any open files are closed. Look at log/mongrel.8000.pid >and > > log/mongrel.log for info. > > ** Starting Mongrel listening at 127.0.0.1:8000 > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > `initialize_without_backlog': Address already in use - bind(2) > > (Errno::EADDRINUSE) > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > `initialize' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > > `initialize' > > from > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > > `new' > > from > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > > `listener' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in > > `cloaker_' > > from > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > > `call' > > from > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > > `initialize' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > > `run' > > from >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > > from /usr/bin/mongrel_rails:18:in `load' > > from /usr/bin/mongrel_rails:18 > > > > Thanks, > > Jim > > > > _________________________________________________________________ > > The MSN Entertainment Guide to Golden Globes is here. Get all the >scoop. > > http://tv.msn.com/tv/globes2007/ > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > >-- >Luis Lavena >Multimedia systems >- >Leaders are made, they are not born. They are made by hard effort, >which is the price which all of us must pay to achieve any goal that >is worthwhile. >Vince Lombardi >_______________________________________________ >Mongrel-users mailing list >Mongrel-users at rubyforge.org >http://rubyforge.org/mailman/listinfo/mongrel-users After killing all mongrels and re-starting w/o any errors in the log I cannot browse www.mysite.com:8000, only http://localhost:8000 works on the server.. ...this is my comgrel.yml cwd: /usr/local/apache2/sites/mysite port: "3000" environment: production ---address: 127.0.0.1 pid_file: log/mongrel.pid servers: 3 It seems like mongrel isn't passing off to apache, but why? This is my proxy_cluster.conf, BalancerMember http://127.0.0.1:8000 BalancerMember http://127.0.0.1:8001 BalancerMember http://127.0.0.1:8002 This is my mysite.conf, ServerName www.mysite.com DocumentRoot /usr/local/apache2/sites/mysite ServerAdmin p at yahoo.com ServerAlias mysite.com *.mysite.com Options FollowSymLinks AllowOverride None Order allow,deny Allow from all Include /usr/local/apache2/conf/extra/mongrel.common ErrorLog /usr/local/apache2/logs/mysite_errors_log CustomLog /usr/local/apache2/logs/mysite_log combined Jim _________________________________________________________________ Your Hotmail address already works to sign into Windows Live Messenger! Get it now http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview From dave.verwer at shinydevelopment.com Wed Jan 3 16:33:14 2007 From: dave.verwer at shinydevelopment.com (Dave Verwer) Date: Wed, 3 Jan 2007 21:33:14 +0000 Subject: [Mongrel] Frustrating Error In-Reply-To: References: <71166b3b0701031224s763a8927h257d72ee55d23641@mail.gmail.com> Message-ID: Change: port: "3000" to port: "8000" You need to match that up to the ports used in the balancer config On 1/3/07, Jim Douglas wrote: > >From: "Luis Lavena" > >Reply-To: mongrel-users at rubyforge.org > >To: mongrel-users at rubyforge.org > >Subject: Re: [Mongrel] Frustrating Error > >Date: Wed, 3 Jan 2007 17:24:38 -0300 > > > >On 1/3/07, Jim Douglas wrote: > > > I am followint this article, > > > > > > > >http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > > > > > > > ...but I keep getting this error in the log...not sure what to try > >next... > > > > > > >Errno::EADDRINUSE refer to the address+port combination being used by > >OTHER application (could be another mongrel already daemonized on that > >port or webrick). > > > >you could check using ps: > > > >$ sudo ps ax | grep mongrel > > > >And if you get more than one grep mongrel process running, that means > >you must kill them first. > > > > > > > ** Daemonized, any open files are closed. Look at log/mongrel.8000.pid > >and > > > log/mongrel.log for info. > > > ** Starting Mongrel listening at 127.0.0.1:8000 > > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > > `initialize_without_backlog': Address already in use - bind(2) > > > (Errno::EADDRINUSE) > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > > `initialize' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > > > `initialize' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > > > `new' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:128:in > > > `listener' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in > > > `cloaker_' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > > > `call' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > > > `initialize' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > > > `run' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > > > from /usr/bin/mongrel_rails:18:in `load' > > > from /usr/bin/mongrel_rails:18 > > > > > > Thanks, > > > Jim > > > > > > _________________________________________________________________ > > > The MSN Entertainment Guide to Golden Globes is here. Get all the > >scoop. > > > http://tv.msn.com/tv/globes2007/ > > > > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > >-- > >Luis Lavena > >Multimedia systems > >- > >Leaders are made, they are not born. They are made by hard effort, > >which is the price which all of us must pay to achieve any goal that > >is worthwhile. > >Vince Lombardi > >_______________________________________________ > >Mongrel-users mailing list > >Mongrel-users at rubyforge.org > >http://rubyforge.org/mailman/listinfo/mongrel-users > > > After killing all mongrels and re-starting w/o any errors in the log I > cannot browse www.mysite.com:8000, only http://localhost:8000 works on the > server.. > > ...this is my comgrel.yml > > cwd: /usr/local/apache2/sites/mysite > port: "3000" > environment: production > ---address: 127.0.0.1 > pid_file: log/mongrel.pid > servers: 3 > > It seems like mongrel isn't passing off to apache, but why? > > This is my proxy_cluster.conf, > > BalancerMember http://127.0.0.1:8000 > BalancerMember http://127.0.0.1:8001 > BalancerMember http://127.0.0.1:8002 > > > This is my mysite.conf, > > > ServerName www.mysite.com > > DocumentRoot /usr/local/apache2/sites/mysite > > ServerAdmin p at yahoo.com > ServerAlias mysite.com *.mysite.com > > > Options FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > > > Include /usr/local/apache2/conf/extra/mongrel.common > > ErrorLog /usr/local/apache2/logs/mysite_errors_log > CustomLog /usr/local/apache2/logs/mysite_log combined > > > > Jim > > _________________________________________________________________ > Your Hotmail address already works to sign into Windows Live Messenger! Get > it now > http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From michael.dauria at gmail.com Wed Jan 3 16:38:49 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Wed, 3 Jan 2007 16:38:49 -0500 Subject: [Mongrel] Frustrating Error In-Reply-To: References: <71166b3b0701031224s763a8927h257d72ee55d23641@mail.gmail.com> Message-ID: <1907e2ca0701031338g4ad1032aw3a7132a329462cae@mail.gmail.com> Because you have Mongrel set up to create 3 instances from port 3000 not 8000 as your Apache config is suggesting. .: Michael :. On 1/3/07, Jim Douglas wrote: > > >From: "Luis Lavena" > >Reply-To: mongrel-users at rubyforge.org > >To: mongrel-users at rubyforge.org > >Subject: Re: [Mongrel] Frustrating Error > >Date: Wed, 3 Jan 2007 17:24:38 -0300 > > > >On 1/3/07, Jim Douglas wrote: > > > I am followint this article, > > > > > > > > > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > > > > > > > ...but I keep getting this error in the log...not sure what to try > >next... > > > > > > >Errno::EADDRINUSE refer to the address+port combination being used by > >OTHER application (could be another mongrel already daemonized on that > >port or webrick). > > > >you could check using ps: > > > >$ sudo ps ax | grep mongrel > > > >And if you get more than one grep mongrel process running, that means > >you must kill them first. > > > > > > > ** Daemonized, any open files are closed. Look at > log/mongrel.8000.pid > >and > > > log/mongrel.log for info. > > > ** Starting Mongrel listening at 127.0.0.1:8000 > > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > > `initialize_without_backlog': Address already in use - bind(2) > > > (Errno::EADDRINUSE) > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > > > `initialize' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > > > `initialize' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/configurator.rb:128:in > > > `new' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/configurator.rb:128:in > > > `listener' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in > > > `cloaker_' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > > > `call' > > > from > > > > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in > > > `initialize' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > > > `run' > > > from > >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > > > from /usr/bin/mongrel_rails:18:in `load' > > > from /usr/bin/mongrel_rails:18 > > > > > > Thanks, > > > Jim > > > > > > _________________________________________________________________ > > > The MSN Entertainment Guide to Golden Globes is here. Get all the > >scoop. > > > http://tv.msn.com/tv/globes2007/ > > > > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > >-- > >Luis Lavena > >Multimedia systems > >- > >Leaders are made, they are not born. They are made by hard effort, > >which is the price which all of us must pay to achieve any goal that > >is worthwhile. > >Vince Lombardi > >_______________________________________________ > >Mongrel-users mailing list > >Mongrel-users at rubyforge.org > >http://rubyforge.org/mailman/listinfo/mongrel-users > > > After killing all mongrels and re-starting w/o any errors in the log I > cannot browse www.mysite.com:8000, only http://localhost:8000 works on the > server.. > > ...this is my comgrel.yml > > cwd: /usr/local/apache2/sites/mysite > port: "3000" > environment: production > ---address: 127.0.0.1 > pid_file: log/mongrel.pid > servers: 3 > > It seems like mongrel isn't passing off to apache, but why? > > This is my proxy_cluster.conf, > > BalancerMember http://127.0.0.1:8000 > BalancerMember http://127.0.0.1:8001 > BalancerMember http://127.0.0.1:8002 > > > This is my mysite.conf, > > > ServerName www.mysite.com > > DocumentRoot /usr/local/apache2/sites/mysite > > ServerAdmin p at yahoo.com > ServerAlias mysite.com *.mysite.com > > > Options FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > > > Include /usr/local/apache2/conf/extra/mongrel.common > > ErrorLog /usr/local/apache2/logs/mysite_errors_log > CustomLog /usr/local/apache2/logs/mysite_log combined > > > > Jim > > _________________________________________________________________ > Your Hotmail address already works to sign into Windows Live Messenger! > Get > it now > > http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070103/3c25e0df/attachment-0001.html From jdz99 at hotmail.com Wed Jan 3 20:19:01 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Thu, 04 Jan 2007 01:19:01 +0000 Subject: [Mongrel] Frustrating Error In-Reply-To: <1907e2ca0701031338g4ad1032aw3a7132a329462cae@mail.gmail.com> Message-ID: >From: "Michael D'Auria" >Reply-To: mongrel-users at rubyforge.org >To: mongrel-users at rubyforge.org >Subject: Re: [Mongrel] Frustrating Error >Date: Wed, 3 Jan 2007 16:38:49 -0500 > >Because you have Mongrel set up to create 3 instances from port 3000 not >8000 as your Apache config is suggesting. > >.: Michael :. > > >On 1/3/07, Jim Douglas wrote: >> >> >From: "Luis Lavena" >> >Reply-To: mongrel-users at rubyforge.org >> >To: mongrel-users at rubyforge.org >> >Subject: Re: [Mongrel] Frustrating Error >> >Date: Wed, 3 Jan 2007 17:24:38 -0300 >> > >> >On 1/3/07, Jim Douglas wrote: >> > > I am followint this article, >> > > >> > > >> > >>http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ >> > > >> > > >> > > ...but I keep getting this error in the log...not sure what to try >> >next... >> > > >> > >> >Errno::EADDRINUSE refer to the address+port combination being used by >> >OTHER application (could be another mongrel already daemonized on that >> >port or webrick). >> > >> >you could check using ps: >> > >> >$ sudo ps ax | grep mongrel >> > >> >And if you get more than one grep mongrel process running, that means >> >you must kill them first. >> > >> > >> > > ** Daemonized, any open files are closed. Look at >>log/mongrel.8000.pid >> >and >> > > log/mongrel.log for info. >> > > ** Starting Mongrel listening at 127.0.0.1:8000 >> > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in >> > > `initialize_without_backlog': Address already in use - bind(2) >> > > (Errno::EADDRINUSE) >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in >> > > `initialize' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in >> > > `initialize' >> > > from >> > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >>/lib/mongrel/configurator.rb:128:in >> > > `new' >> > > from >> > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >>/lib/mongrel/configurator.rb:128:in >> > > `listener' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in >> > > `cloaker_' >> > > from >> > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in >> > > `call' >> > > from >> > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:51:in >> > > `initialize' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in >> > > `run' >> > > from >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 >> > > from /usr/bin/mongrel_rails:18:in `load' >> > > from /usr/bin/mongrel_rails:18 >> > > >> > > Thanks, >> > > Jim >> > > >> > > _________________________________________________________________ >> > > The MSN Entertainment Guide to Golden Globes is here. Get all the >> >scoop. >> > > http://tv.msn.com/tv/globes2007/ >> > > >> > > _______________________________________________ >> > > Mongrel-users mailing list >> > > Mongrel-users at rubyforge.org >> > > http://rubyforge.org/mailman/listinfo/mongrel-users >> > > >> > >> > >> >-- >> >Luis Lavena >> >Multimedia systems >> >- >> >Leaders are made, they are not born. They are made by hard effort, >> >which is the price which all of us must pay to achieve any goal that >> >is worthwhile. >> >Vince Lombardi >> >_______________________________________________ >> >Mongrel-users mailing list >> >Mongrel-users at rubyforge.org >> >http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >>After killing all mongrels and re-starting w/o any errors in the log I >>cannot browse www.mysite.com:8000, only http://localhost:8000 works on the >>server.. >> >>...this is my comgrel.yml >> >>cwd: /usr/local/apache2/sites/mysite >>port: "3000" >>environment: production >>---address: 127.0.0.1 >>pid_file: log/mongrel.pid >>servers: 3 >> >>It seems like mongrel isn't passing off to apache, but why? >> >>This is my proxy_cluster.conf, >> >>BalancerMember http://127.0.0.1:8000 >>BalancerMember http://127.0.0.1:8001 >>BalancerMember http://127.0.0.1:8002 >> >> >>This is my mysite.conf, >> >> >>ServerName www.mysite.com >> >>DocumentRoot /usr/local/apache2/sites/mysite >> >>ServerAdmin p at yahoo.com >>ServerAlias mysite.com *.mysite.com >> >> >> Options FollowSymLinks >> AllowOverride None >> Order allow,deny >> Allow from all >> >> >> Include /usr/local/apache2/conf/extra/mongrel.common >> >> ErrorLog /usr/local/apache2/logs/mysite_errors_log >> CustomLog /usr/local/apache2/logs/mysite_log combined >> >> >> >>Jim >> >>_________________________________________________________________ >>Your Hotmail address already works to sign into Windows Live Messenger! >>Get >>it now >> >>http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview >> >>_______________________________________________ >>Mongrel-users mailing list >>Mongrel-users at rubyforge.org >>http://rubyforge.org/mailman/listinfo/mongrel-users >> >_______________________________________________ >Mongrel-users mailing list >Mongrel-users at rubyforge.org >http://rubyforge.org/mailman/listinfo/mongrel-users I still have to specify www.mysite.com:8000 to see the RoR app? How can I get it to come up without the "8000"? Thanks, Jim _________________________________________________________________ Dave vs. Carl: The Insignificant Championship Series. ?Who will win? http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://davevscarl.spaces.live.com/?icid=T001MSN38C07001 From luislavena at gmail.com Wed Jan 3 20:35:13 2007 From: luislavena at gmail.com (Luis Lavena) Date: Wed, 3 Jan 2007 22:35:13 -0300 Subject: [Mongrel] Frustrating Error In-Reply-To: References: <1907e2ca0701031338g4ad1032aw3a7132a329462cae@mail.gmail.com> Message-ID: <71166b3b0701031735u64d76827tdebacdc22a8b22e7@mail.gmail.com> On 1/3/07, Jim Douglas wrote: > > I still have to specify www.mysite.com:8000 to see the RoR app? > How can I get it to come up without the "8000"? > You need a traditional webserver in from of mongrel, like apache, lighttpd or nginx. Configuration or more details about this are beyond the purpose of this list (also, escapes my knowledge of *nix systems). I'll suggest you try some guide/howto about getting your webserver running THEN adding mongrel or mongrel_cluster to the equation (baby steps, one step at time). -- Luis Lavena Multimedia systems - Leaders are made, they are not born. They are made by hard effort, which is the price which all of us must pay to achieve any goal that is worthwhile. Vince Lombardi From michael.dauria at gmail.com Wed Jan 3 20:56:18 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Wed, 3 Jan 2007 20:56:18 -0500 Subject: [Mongrel] Frustrating Error In-Reply-To: References: <1907e2ca0701031338g4ad1032aw3a7132a329462cae@mail.gmail.com> Message-ID: <1907e2ca0701031756l36b7f74ax1ee2114ef41537ae@mail.gmail.com> > I still have to specify www.mysite.com:8000 to see the RoR app? > How can I get it to come up without the "8000"? > > Thanks, > Jim Something is up with your apache config, i personally don't use Apache, try following this guide: http://mongrel.rubyforge.org/docs/apache.html. Make sure you understand why you are using this configuration, like why are you proxying requests and the like. It's important to understand what you have going on rather than just copying and pasting everything. .: Michael :. On 1/3/07, Jim Douglas wrote: > > >From: "Michael D'Auria" > >Reply-To: mongrel-users at rubyforge.org > >To: mongrel-users at rubyforge.org > >Subject: Re: [Mongrel] Frustrating Error > >Date: Wed, 3 Jan 2007 16:38:49 -0500 > > > >Because you have Mongrel set up to create 3 instances from port 3000 not > >8000 as your Apache config is suggesting. > > > >.: Michael :. > > > > > >On 1/3/07, Jim Douglas wrote: > >> > >> >From: "Luis Lavena" > >> >Reply-To: mongrel-users at rubyforge.org > >> >To: mongrel-users at rubyforge.org > >> >Subject: Re: [Mongrel] Frustrating Error > >> >Date: Wed, 3 Jan 2007 17:24:38 -0300 > >> > > >> >On 1/3/07, Jim Douglas wrote: > >> > > I am followint this article, > >> > > > >> > > > >> > > >> > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > >> > > > >> > > > >> > > ...but I keep getting this error in the log...not sure what to try > >> >next... > >> > > > >> > > >> >Errno::EADDRINUSE refer to the address+port combination being used by > >> >OTHER application (could be another mongrel already daemonized on that > >> >port or webrick). > >> > > >> >you could check using ps: > >> > > >> >$ sudo ps ax | grep mongrel > >> > > >> >And if you get more than one grep mongrel process running, that means > >> >you must kill them first. > >> > > >> > > >> > > ** Daemonized, any open files are closed. Look at > >>log/mongrel.8000.pid > >> >and > >> > > log/mongrel.log for info. > >> > > ** Starting Mongrel listening at 127.0.0.1:8000 > >> > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/tcphack.rb:12:in > >> > > `initialize_without_backlog': Address already in use - bind(2) > >> > > (Errno::EADDRINUSE) > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > >> > > `initialize' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > >> > > `initialize' > >> > > from > >> > > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >>/lib/mongrel/configurator.rb:128:in > >> > > `new' > >> > > from > >> > > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >>/lib/mongrel/configurator.rb:128:in > >> > > `listener' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in > >> > > `cloaker_' > >> > > from > >> > > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/configurator.rb:51:in > >> > > `call' > >> > > from > >> > > > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > /lib/mongrel/configurator.rb:51:in > >> > > `initialize' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > >> > > `run' > >> > > from > >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > >> > > from /usr/bin/mongrel_rails:18:in `load' > >> > > from /usr/bin/mongrel_rails:18 > >> > > > >> > > Thanks, > >> > > Jim > >> > > > >> > > _________________________________________________________________ > >> > > The MSN Entertainment Guide to Golden Globes is here. Get all the > >> >scoop. > >> > > http://tv.msn.com/tv/globes2007/ > >> > > > >> > > _______________________________________________ > >> > > Mongrel-users mailing list > >> > > Mongrel-users at rubyforge.org > >> > > http://rubyforge.org/mailman/listinfo/mongrel-users > >> > > > >> > > >> > > >> >-- > >> >Luis Lavena > >> >Multimedia systems > >> >- > >> >Leaders are made, they are not born. They are made by hard effort, > >> >which is the price which all of us must pay to achieve any goal that > >> >is worthwhile. > >> >Vince Lombardi > >> >_______________________________________________ > >> >Mongrel-users mailing list > >> >Mongrel-users at rubyforge.org > >> >http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > >>After killing all mongrels and re-starting w/o any errors in the log I > >>cannot browse www.mysite.com:8000, only http://localhost:8000 works on > the > >>server.. > >> > >>...this is my comgrel.yml > >> > >>cwd: /usr/local/apache2/sites/mysite > >>port: "3000" > >>environment: production > >>---address: 127.0.0.1 > >>pid_file: log/mongrel.pid > >>servers: 3 > >> > >>It seems like mongrel isn't passing off to apache, but why? > >> > >>This is my proxy_cluster.conf, > >> > >>BalancerMember http://127.0.0.1:8000 > >>BalancerMember http://127.0.0.1:8001 > >>BalancerMember http://127.0.0.1:8002 > >> > >> > >>This is my mysite.conf, > >> > >> > >>ServerName www.mysite.com > >> > >>DocumentRoot /usr/local/apache2/sites/mysite > >> > >>ServerAdmin p at yahoo.com > >>ServerAlias mysite.com *.mysite.com > >> > >> > >> Options FollowSymLinks > >> AllowOverride None > >> Order allow,deny > >> Allow from all > >> > >> > >> Include /usr/local/apache2/conf/extra/mongrel.common > >> > >> ErrorLog /usr/local/apache2/logs/mysite_errors_log > >> CustomLog /usr/local/apache2/logs/mysite_log combined > >> > >> > >> > >>Jim > >> > >>_________________________________________________________________ > >>Your Hotmail address already works to sign into Windows Live Messenger! > >>Get > >>it now > >> > >> > http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview > >> > >>_______________________________________________ > >>Mongrel-users mailing list > >>Mongrel-users at rubyforge.org > >>http://rubyforge.org/mailman/listinfo/mongrel-users > >> > > > >_______________________________________________ > >Mongrel-users mailing list > >Mongrel-users at rubyforge.org > >http://rubyforge.org/mailman/listinfo/mongrel-users > > > I still have to specify www.mysite.com:8000 to see the RoR app? > How can I get it to come up without the "8000"? > > Thanks, > Jim > > _________________________________________________________________ > Dave vs. Carl: The Insignificant Championship Series. Who will win? > > http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://davevscarl.spaces.live.com/?icid=T001MSN38C07001 > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070103/62f7eef4/attachment-0001.html From joevandyk at gmail.com Thu Jan 4 03:55:41 2007 From: joevandyk at gmail.com (Joe Van Dyk) Date: Thu, 4 Jan 2007 00:55:41 -0800 Subject: [Mongrel] fastthread -- what is it? Message-ID: Hi, A quick search didn't explain what fastthread is, and how it relates to mongrel. Why would I want to install fastthread? Thanks, Joe From technoweenie at gmail.com Thu Jan 4 05:14:37 2007 From: technoweenie at gmail.com (Rick Olson) Date: Thu, 4 Jan 2007 04:14:37 -0600 Subject: [Mongrel] fastthread -- what is it? In-Reply-To: References: Message-ID: <48fe25b0701040214w634b4021wb0a397d77f57ea5@mail.gmail.com> On 1/4/07, Joe Van Dyk wrote: > Hi, > > A quick search didn't explain what fastthread is, and how it relates > to mongrel. Why would I want to install fastthread? > > Thanks, > Joe http://moonbase.rydia.net/mental/blog/programming/fastthread.html (3rd google result for 'ruby fastthread') -- Rick Olson http://weblog.techno-weenie.net http://mephistoblog.com From zedshaw at zedshaw.com Thu Jan 4 10:05:28 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 4 Jan 2007 07:05:28 -0800 Subject: [Mongrel] fastthread -- what is it? In-Reply-To: References: Message-ID: <20070104070528.5bee0321.zedshaw@zedshaw.com> On Thu, 4 Jan 2007 00:55:41 -0800 "Joe Van Dyk" wrote: > Hi, > > A quick search didn't explain what fastthread is, and how it relates > to mongrel. Why would I want to install fastthread? Hi Joe, long answer is that ruby has a bug in how the array works and how threads are garbage collected. When the current Ruby thread locking primitives operate on threads, they tend to store idle ones in arrays. As the existing thread locking mechanisms pull the threads off the array they never get garbage collected and that causes a nasty leak. At the time I was testing this, me and Bradley Taylor narrowed the problem down and produced these two scripts: http://pastie.caboo.se/10194 http://pastie.caboo.se/10317 The first one shows the leak by using Mutex (with graph), the second showed proper GC operation by using Sync (with graph). Still wasn't enough because several high profile idiots on ruby-lang tried to claim the test was invalid but couldn't offer a reason why the first script leaked and the second didn't. Later, after much arguing, calling me an idiot, debating the merits of OS memory allocation, and other stupidities, we find out that Eric Mahurin fixed the whole problem a year ago and it was missed: http://blade.nagaokgaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/5861 Thankfully, there's smart cool people like mentalguy who can make improvements and provide them as gems. What mentalguy did is re-create all of the Ruby thread locking gear in a C extension called fastthread. With fastthread we can provide a modest speed boost as well as fix the memory leaks Ruby has by just including a gem. He's pushing for it to become the new thread locking api in Ruby, so hopefully he can get it in without much fuss. I'm telling people that you have to use fastthread, but it's still external so if you run into problems or don't see an improvements then you don't have to run it. Mongrel has fastthread as a gem dependency, but it will run it only if it's installed. So, you can install it, try it out, and then remove the gem if it's a problem. And that's the whole story. Enjoy! -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From mi-mongrel at moensolutions.com Thu Jan 4 12:45:32 2007 From: mi-mongrel at moensolutions.com (Michael Moen) Date: Thu, 4 Jan 2007 09:45:32 -0800 Subject: [Mongrel] Recommendation: Stalled Mongrel? Memcache Hates Spaces In-Reply-To: <20070102104124.0b6a36f9.zedshaw@zedshaw.com> References: <20070102104124.0b6a36f9.zedshaw@zedshaw.com> Message-ID: On Jan 2, 2007, at 10:41 AM, Zed A. Shaw wrote: > Since memcache-client doesn't currently escape your keys for you > (not sure if it should actually), you have to do this yourself or > bad super evil things happen. The few people who have made this > change report no more stopped mongrel processes. > > Please try this out and report back to me if it fixes things. Zed- I rolled out a patch on the JibJab cluster yesterday to address this and I haven't had to go after any dogs with a rubber hose since, and beating bad dogs has been a regular task for a while now. I have no idea where spaces or control characters could get into the keys, but I'm not the only monkey banging on a keyboard here so who knows. In case anybody wants a painless way to handle this, I added the following to my overrides: class MemCache protected def make_cache_key(key) key.gsub!(/[^\w:]/, '_') @namespace.nil? ? key.to_s : "#{@namespace}:#{key}" end end From jdz99 at hotmail.com Thu Jan 4 12:47:20 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Thu, 04 Jan 2007 17:47:20 +0000 Subject: [Mongrel] Frustrating Error In-Reply-To: <1907e2ca0701031756l36b7f74ax1ee2114ef41537ae@mail.gmail.com> Message-ID: >From: "Michael D'Auria" >Reply-To: mongrel-users at rubyforge.org >To: mongrel-users at rubyforge.org >Subject: Re: [Mongrel] Frustrating Error >Date: Wed, 3 Jan:56:18 -0500 > >>I still have to specify www.mysite.com:8000 to see the RoR app? >>How can I get it to come up without the "8000"? >> >>Thanks, >>Jim > > >Something is up with your apache config, i personally don't use Apache, try >following this guide: http://mongrel.rubyforge.org/docs/apache.html. > >Make sure you understand why you are using this configuration, like why are >you proxying requests and the like. It's important to understand what you >have going on rather than just copying and pasting everything. > >.: Michael :. > >On 1/3/07, Jim Douglas wrote: >> >> >From: "Michael D'Auria" >> >Reply-To: mongrel-users at rubyforge.org >> >To: mongrel-users at rubyforge.org >> >Subject: Re: [Mongrel] Frustrating Error >> >Date: Wed, 3 Jan:38:49 -0500 >> > >> >Because you have Mongrel set up to create 3 instances from port 3000 not >> >8000 as your Apache config is suggesting. >> > >> >.: Michael :. >> > >> > >> >On 1/3/07, Jim Douglas wrote: >> >> >> >> >From: "Luis Lavena" >> >> >Reply-To: mongrel-users at rubyforge.org >> >> >To: mongrel-users at rubyforge.org >> >> >Subject: Re: [Mongrel] Frustrating Error >> >> >Date: Wed, 3 Jan:24:38 -0300 >> >> > >> >> >On 1/3/07, Jim Douglas wrote: >> >> > > I am followint this article, >> >> > > >> >> > > >> >> > >> >> >>http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ >> >> > > >> >> > > >> >> > > ...but I keep getting this error in the log...not sure what to try >> >> >next... >> >> > > >> >> > >> >> >Errno::EADDRINUSE refer to the address+port combination being used by >> >> >OTHER application (could be another mongrel already daemonized on >>that >> >> >port or webrick). >> >> > >> >> >you could check using ps: >> >> > >> >> >$ sudo ps ax | grep mongrel >> >> > >> >> >And if you get more than one grep mongrel process running, that means >> >> >you must kill them first. >> >> > >> >> > >> >> > > ** Daemonized, any open files are closed. Look at >> >>log/mongrel.8000.pid >> >> >and >> >> > > log/mongrel.log for info. >> >> > > ** Starting Mongrel listening at 127.0.0.1:8000 >> >> > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >>/lib/mongrel/tcphack.rb:12:in >> >> > > `initialize_without_backlog': Address already in use - bind(2) >> >> > > (Errno::EADDRINUSE) >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in >> >> > > `initialize' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in >> >> > > `initialize' >> >> > > from >> >> > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >> >>/lib/mongrel/configurator.rb:128:in >> >> > > `new' >> >> > > from >> >> > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >> >>/lib/mongrel/configurator.rb:128:in >> >> > > `listener' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in >> >> > > `cloaker_' >> >> > > from >> >> > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >>/lib/mongrel/configurator.rb:51:in >> >> > > `call' >> >> > > from >> >> > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 >>/lib/mongrel/configurator.rb:51:in >> >> > > `initialize' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in >> >> > > `run' >> >> > > from >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 >> >> > > from /usr/bin/mongrel_rails:18:in `load' >> >> > > from /usr/bin/mongrel_rails:18 >> >> > > >> >> > > Thanks, >> >> > > Jim >> >> > > >> >> > > _________________________________________________________________ >> >> > > The MSN Entertainment Guide to Golden Globes is here. Get all the >> >> >scoop. >> >> > > http://tv.msn.com/tv/globes2007/ >> >> > > >> >> > > _______________________________________________ >> >> > > Mongrel-users mailing list >> >> > > Mongrel-users at rubyforge.org >> >> > > http://rubyforge.org/mailman/listinfo/mongrel-users >> >> > > >> >> > >> >> > >> >> >-- >> >> >Luis Lavena >> >> >Multimedia systems >> >> >- >> >> >Leaders are made, they are not born. They are made by hard effort, >> >> >which is the price which all of us must pay to achieve any goal that >> >> >is worthwhile. >> >> >Vince Lombardi >> >> >_______________________________________________ >> >> >Mongrel-users mailing list >> >> >Mongrel-users at rubyforge.org >> >> >http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >> >> >> >>After killing all mongrels and re-starting w/o any errors in the log I >> >>cannot browse www.mysite.com:8000, only http://localhost:8000 works on >>the >> >>server.. >> >> >> >>...this is my comgrel.yml >> >> >> >>cwd: /usr/local/apache2/sites/mysite >> >>port: "3000" >> >>environment: production >> >>---address: 127.0.0.1 >> >>pid_file: log/mongrel.pid >> >>servers: 3 >> >> >> >>It seems like mongrel isn't passing off to apache, but why? >> >> >> >>This is my proxy_cluster.conf, >> >> >> >>BalancerMember http://127.0.0.1:8000 >> >>BalancerMember http://127.0.0.1:8001 >> >>BalancerMember http://127.0.0.1:8002 >> >> >> >> >> >>This is my mysite.conf, >> >> >> >> >> >>ServerName www.mysite.com >> >> >> >>DocumentRoot /usr/local/apache2/sites/mysite >> >> >> >>ServerAdmin p at yahoo.com >> >>ServerAlias mysite.com *.mysite.com >> >> >> >> >> >> Options FollowSymLinks >> >> AllowOverride None >> >> Order allow,deny >> >> Allow from all >> >> >> >> >> >> Include /usr/local/apache2/conf/extra/mongrel.common >> >> >> >> ErrorLog /usr/local/apache2/logs/mysite_errors_log >> >> CustomLog /usr/local/apache2/logs/mysite_log combined >> >> >> >> >> >> >> >>Jim >> >> >> >>_________________________________________________________________ >> >>Your Hotmail address already works to sign into Windows Live Messenger! >> >>Get >> >>it now >> >> >> >> >>http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview >> >> >> >>_______________________________________________ >> >>Mongrel-users mailing list >> >>Mongrel-users at rubyforge.org >> >>http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >> >> >> >_______________________________________________ >> >Mongrel-users mailing list >> >Mongrel-users at rubyforge.org >> >http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >>I still have to specify www.mysite.com:8000 to see the RoR app? >>How can I get it to come up without the "8000"? >> >>Thanks, >>Jim >> >>_________________________________________________________________ >>Dave vs. Carl: The Insignificant Championship Series. Who will win? >> >>http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://davevscarl.spaces.live.com/?icid=T001MSN38C07001 >> >> >> >>_______________________________________________ >>Mongrel-users mailing list >>Mongrel-users at rubyforge.org >>http://rubyforge.org/mailman/listinfo/mongrel-users >> >> >_______________________________________________ >Mongrel-users mailing list >Mongrel-users at rubyforge.org >http://rubyforge.org/mailman/listinfo/mongrel-users Thanks for the link, it's been updated since I last visited....all I had to do was add the first sample config from Martins in the 'Success Stories' section and I'm up and running... I would really like to know how to integrate multiple instances of mongrel at this point...how can I modify this section # Pass other requests to mongrel instance ProxyPass / http://127.0.0.1:8200/ ProxyPassReverse / http://127.0.0.1:8200/ ...so that it can utilize a mongrel cluster? Jim _________________________________________________________________ Fixing up the home? Live Search can help http://imagine-windowslive.com/search/kits/default.aspx?kit=improve&locale=en-US&source=hmemailtaglinenov06&FORM=WLMTAG From rogelio.samour at gmail.com Thu Jan 4 13:03:49 2007 From: rogelio.samour at gmail.com (Rogelio J. Samour) Date: Thu, 04 Jan 2007 12:03:49 -0600 Subject: [Mongrel] Frustrating Error In-Reply-To: References: Message-ID: <1167933829.5091.1.camel@localhost> Jim, follow this: http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you cheers, -rjs- On Thu, 2007-01-04 at 17:47 +0000, Jim Douglas wrote: > >From: "Michael D'Auria" > >Reply-To: mongrel-users at rubyforge.org > >To: mongrel-users at rubyforge.org > >Subject: Re: [Mongrel] Frustrating Error > >Date: Wed, 3 Jan:56:18 -0500 > > > >>I still have to specify www.mysite.com:8000 to see the RoR app? > >>How can I get it to come up without the "8000"? > >> > >>Thanks, > >>Jim > > > > > >Something is up with your apache config, i personally don't use Apache, try > >following this guide: http://mongrel.rubyforge.org/docs/apache.html. > > > >Make sure you understand why you are using this configuration, like why are > >you proxying requests and the like. It's important to understand what you > >have going on rather than just copying and pasting everything. > > > >.: Michael :. > > > >On 1/3/07, Jim Douglas wrote: > >> > >> >From: "Michael D'Auria" > >> >Reply-To: mongrel-users at rubyforge.org > >> >To: mongrel-users at rubyforge.org > >> >Subject: Re: [Mongrel] Frustrating Error > >> >Date: Wed, 3 Jan:38:49 -0500 > >> > > >> >Because you have Mongrel set up to create 3 instances from port 3000 not > >> >8000 as your Apache config is suggesting. > >> > > >> >.: Michael :. > >> > > >> > > >> >On 1/3/07, Jim Douglas wrote: > >> >> > >> >> >From: "Luis Lavena" > >> >> >Reply-To: mongrel-users at rubyforge.org > >> >> >To: mongrel-users at rubyforge.org > >> >> >Subject: Re: [Mongrel] Frustrating Error > >> >> >Date: Wed, 3 Jan:24:38 -0300 > >> >> > > >> >> >On 1/3/07, Jim Douglas wrote: > >> >> > > I am followint this article, > >> >> > > > >> >> > > > >> >> > > >> >> > >>http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > >> >> > > > >> >> > > > >> >> > > ...but I keep getting this error in the log...not sure what to try > >> >> >next... > >> >> > > > >> >> > > >> >> >Errno::EADDRINUSE refer to the address+port combination being used by > >> >> >OTHER application (could be another mongrel already daemonized on > >>that > >> >> >port or webrick). > >> >> > > >> >> >you could check using ps: > >> >> > > >> >> >$ sudo ps ax | grep mongrel > >> >> > > >> >> >And if you get more than one grep mongrel process running, that means > >> >> >you must kill them first. > >> >> > > >> >> > > >> >> > > ** Daemonized, any open files are closed. Look at > >> >>log/mongrel.8000.pid > >> >> >and > >> >> > > log/mongrel.log for info. > >> >> > > ** Starting Mongrel listening at 127.0.0.1:8000 > >> >> > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >>/lib/mongrel/tcphack.rb:12:in > >> >> > > `initialize_without_backlog': Address already in use - bind(2) > >> >> > > (Errno::EADDRINUSE) > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/tcphack.rb:12:in > >> >> > > `initialize' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in `new' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:560:in > >> >> > > `initialize' > >> >> > > from > >> >> > > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >> >>/lib/mongrel/configurator.rb:128:in > >> >> > > `new' > >> >> > > from > >> >> > > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >> >>/lib/mongrel/configurator.rb:128:in > >> >> > > `listener' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:98:in > >> >> > > `cloaker_' > >> >> > > from > >> >> > > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >>/lib/mongrel/configurator.rb:51:in > >> >> > > `call' > >> >> > > from > >> >> > > > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0 > >>/lib/mongrel/configurator.rb:51:in > >> >> > > `initialize' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `new' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:83:in `run' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > >> >> > > `run' > >> >> > > from > >> >> >/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > >> >> > > from /usr/bin/mongrel_rails:18:in `load' > >> >> > > from /usr/bin/mongrel_rails:18 > >> >> > > > >> >> > > Thanks, > >> >> > > Jim > >> >> > > > >> >> > > _________________________________________________________________ > >> >> > > The MSN Entertainment Guide to Golden Globes is here. Get all the > >> >> >scoop. > >> >> > > http://tv.msn.com/tv/globes2007/ > >> >> > > > >> >> > > _______________________________________________ > >> >> > > Mongrel-users mailing list > >> >> > > Mongrel-users at rubyforge.org > >> >> > > http://rubyforge.org/mailman/listinfo/mongrel-users > >> >> > > > >> >> > > >> >> > > >> >> >-- > >> >> >Luis Lavena > >> >> >Multimedia systems > >> >> >- > >> >> >Leaders are made, they are not born. They are made by hard effort, > >> >> >which is the price which all of us must pay to achieve any goal that > >> >> >is worthwhile. > >> >> >Vince Lombardi > >> >> >_______________________________________________ > >> >> >Mongrel-users mailing list > >> >> >Mongrel-users at rubyforge.org > >> >> >http://rubyforge.org/mailman/listinfo/mongrel-users > >> >> > >> >> > >> >>After killing all mongrels and re-starting w/o any errors in the log I > >> >>cannot browse www.mysite.com:8000, only http://localhost:8000 works on > >>the > >> >>server.. > >> >> > >> >>...this is my comgrel.yml > >> >> > >> >>cwd: /usr/local/apache2/sites/mysite > >> >>port: "3000" > >> >>environment: production > >> >>---address: 127.0.0.1 > >> >>pid_file: log/mongrel.pid > >> >>servers: 3 > >> >> > >> >>It seems like mongrel isn't passing off to apache, but why? > >> >> > >> >>This is my proxy_cluster.conf, > >> >> > >> >>BalancerMember http://127.0.0.1:8000 > >> >>BalancerMember http://127.0.0.1:8001 > >> >>BalancerMember http://127.0.0.1:8002 > >> >> > >> >> > >> >>This is my mysite.conf, > >> >> > >> >> > >> >>ServerName www.mysite.com > >> >> > >> >>DocumentRoot /usr/local/apache2/sites/mysite > >> >> > >> >>ServerAdmin p at yahoo.com > >> >>ServerAlias mysite.com *.mysite.com > >> >> > >> >> > >> >> Options FollowSymLinks > >> >> AllowOverride None > >> >> Order allow,deny > >> >> Allow from all > >> >> > >> >> > >> >> Include /usr/local/apache2/conf/extra/mongrel.common > >> >> > >> >> ErrorLog /usr/local/apache2/logs/mysite_errors_log > >> >> CustomLog /usr/local/apache2/logs/mysite_log combined > >> >> > >> >> > >> >> > >> >>Jim > >> >> > >> >>_________________________________________________________________ > >> >>Your Hotmail address already works to sign into Windows Live Messenger! > >> >>Get > >> >>it now > >> >> > >> >> > >>http://clk.atdmt.com/MSN/go/msnnkwme0020000001msn/direct/01/?href=http://get.live.com/messenger/overview > >> >> > >> >>_______________________________________________ > >> >>Mongrel-users mailing list > >> >>Mongrel-users at rubyforge.org > >> >>http://rubyforge.org/mailman/listinfo/mongrel-users > >> >> > >> > >> > >> >_______________________________________________ > >> >Mongrel-users mailing list > >> >Mongrel-users at rubyforge.org > >> >http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > >>I still have to specify www.mysite.com:8000 to see the RoR app? > >>How can I get it to come up without the "8000"? > >> > >>Thanks, > >>Jim > >> > >>_________________________________________________________________ > >>Dave vs. Carl: The Insignificant Championship Series. Who will win? > >> > >>http://clk.atdmt.com/MSN/go/msnnkwsp0070000001msn/direct/01/?href=http://davevscarl.spaces.live.com/?icid=T001MSN38C07001 > >> > >> > >> > >>_______________________________________________ > >>Mongrel-users mailing list > >>Mongrel-users at rubyforge.org > >>http://rubyforge.org/mailman/listinfo/mongrel-users > >> > >> > > > >_______________________________________________ > >Mongrel-users mailing list > >Mongrel-users at rubyforge.org > >http://rubyforge.org/mailman/listinfo/mongrel-users > > > Thanks for the link, it's been updated since I last visited....all I had to > do was add the first sample config from Martins in the 'Success Stories' > section and I'm up and running... > > I would really like to know how to integrate multiple instances of mongrel > at this point...how can I modify this section > > # Pass other requests to mongrel instance > ProxyPass / http://127.0.0.1:8200/ > ProxyPassReverse / http://127.0.0.1:8200/ > > ...so that it can utilize a mongrel cluster? > > Jim > > _________________________________________________________________ > Fixing up the home? Live Search can help > http://imagine-windowslive.com/search/kits/default.aspx?kit=improve&locale=en-US&source=hmemailtaglinenov06&FORM=WLMTAG > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From mental at rydia.net Thu Jan 4 13:07:52 2007 From: mental at rydia.net (MenTaLguY) Date: Thu, 04 Jan 2007 13:07:52 -0500 Subject: [Mongrel] fastthread -- what is it? In-Reply-To: <20070104070528.5bee0321.zedshaw@zedshaw.com> References: <20070104070528.5bee0321.zedshaw@zedshaw.com> Message-ID: <1167934072.13647.17.camel@localhost.localdomain> On Thu, 2007-01-04 at 07:05 -0800, Zed A. Shaw wrote: > What mentalguy did is re-create all of the Ruby thread locking gear in > a C extension called fastthread. With fastthread we can provide a > modest speed boost as well as fix the memory leaks Ruby has by just > including a gem. He's pushing for it to become the new thread locking > api in Ruby, so hopefully he can get it in without much fuss. Interestingly, the original reason for fastthread was to help wean people off of Thread.critical/Thread.exclusive by making Mutex#lock/Mutex#synchronized competitive with it performance-wise. Fixing the memory leaks was a rather fortunate side-effect. :) -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070104/f04caf75/attachment.bin From me at seebq.com Thu Jan 4 13:10:08 2007 From: me at seebq.com (Charles Brian Quinn) Date: Thu, 4 Jan 2007 13:10:08 -0500 Subject: [Mongrel] Frustrating Error In-Reply-To: References: <1907e2ca0701031756l36b7f74ax1ee2114ef41537ae@mail.gmail.com> Message-ID: <3a2de0cd0701041010u65d4090h23542d1fc2367299@mail.gmail.com> On 1/4/07, Jim Douglas wrote: > > Thanks for the link, it's been updated since I last visited....all I had to > do was add the first sample config from Martins in the 'Success Stories' > section and I'm up and running... Good, glad you liked those, i have a few more I need to get around to posting.... ;-) > > I would really like to know how to integrate multiple instances of mongrel > at this point...how can I modify this section > > # Pass other requests to mongrel instance > ProxyPass / http://127.0.0.1:8200/ > ProxyPassReverse / http://127.0.0.1:8200/ > > ...so that it can utilize a mongrel cluster? Short answer: you can't. proxypass simply just proxies everything from the one port apache httpd is running (80) to one specified in the proxypass rule -- in this case, 8200 - so even if you were running a mongrel cluster on 8200, 8201 and 8203, it would only proxy to the first one, on 8200. Hence the reason we use mod_proxy_balancer with allows you to proxy requests from on port (80) to multiple -> 8200, 8201, 8202, etc. in an intelligent manner (based on requests coming in). -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From mental at rydia.net Thu Jan 4 13:13:13 2007 From: mental at rydia.net (MenTaLguY) Date: Thu, 04 Jan 2007 13:13:13 -0500 Subject: [Mongrel] fastthread -- what is it? In-Reply-To: <20070104070528.5bee0321.zedshaw@zedshaw.com> References: <20070104070528.5bee0321.zedshaw@zedshaw.com> Message-ID: <1167934393.13647.18.camel@localhost.localdomain> On Thu, 2007-01-04 at 07:05 -0800, Zed A. Shaw wrote: > Later, after much arguing, calling me an idiot, debating the merits of > OS memory allocation, and other stupidities, we find out that Eric > Mahurin fixed the whole problem a year ago and it was missed: > > http://blade.nagaokgaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/5861 Has his patch been followed up on now, btw? I'd hate to see it continue to go to waste. -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070104/07679e89/attachment.bin From cronald at gmail.com Thu Jan 4 13:39:35 2007 From: cronald at gmail.com (Paul King) Date: Thu, 4 Jan 2007 18:39:35 +0000 Subject: [Mongrel] Mongrel/Rails weird problem with methods becoming private Message-ID: <2939187c0701041039g20f0ca32qd675c235d5ec93a9@mail.gmail.com> Hi, I'm new to this list, so apologies if this is a duplicate (or nothing to do with mongrel!) Somehow when I run my rails app under mongrel, this code: > user.interests.include?( interest ) breaks with the following error: > NoMethodError in Profiles#change_interests > private method `equal?' called for # Having spent a fair bit of time testing with the rails console, and running the app via webrick (it works in both cases) I can only guess I've screwed something up with mongrel. On another box with the same mongrel gem versions, it works fine. A week later I'm asking in desperation, what have I broken?! Either way, a massive thanks for mongrel - it's by far the best solution I've found so far to running my app :-) Cheers, Paul From thewoolleyman at gmail.com Thu Jan 4 15:22:51 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Thu, 4 Jan 2007 13:22:51 -0700 Subject: [Mongrel] Slightly OT: Rails + Mongrel Proxy Server without Apache Message-ID: Hi, I'm looking for suggestions on the simplest way to implement an HTTP proxy under Rails/Mongrel. It should preserve ALL of the proxied HTTP response - including all header content such keepalives, etc. Yes, I know I can do this with Apache's proxy module, and we already do that for the non-development/test environments. This is just for the development/test environment where we don't run Apache, just Mongrel. Background: This is to support the usage of the Jspell AJAX-based spellchecker tool. This requires AJAX requests to be made to the JSpell server, which is a Java servlet. However, since it's AJAX, the responses from the JSpell server must be served from the same host as the rest of the rails app (whether or not this is absolutely necessary, it's a hardcoded requirement in the obfuscated jspell javascript). We've tried to write a Rails controller which uses Net::HTTP to make the call to the proxied Jspell server, then maually build a response. However, this approach always seems to result in invalid response headers that the Jspell javascript doesn't like. My guess is that it's something do to with the keepalive not being settable, as discussed here: http://lists.netisland.net/archives/phillyonrails/phillyonrails-2006/msg00231.html So, what I want is to simply proxy the entire response, headers and all, without rails or mongrel changing anything. Any ideas? Thanks in advance, -- Chad Woolley From zedshaw at zedshaw.com Thu Jan 4 21:52:04 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 4 Jan 2007 18:52:04 -0800 Subject: [Mongrel] Mongrel/Rails weird problem with methods becoming private In-Reply-To: <2939187c0701041039g20f0ca32qd675c235d5ec93a9@mail.gmail.com> References: <2939187c0701041039g20f0ca32qd675c235d5ec93a9@mail.gmail.com> Message-ID: <20070104185204.b3bb9f8f.zedshaw@zedshaw.com> On Thu, 4 Jan 2007 18:39:35 +0000 "Paul King" wrote: > Hi, > > I'm new to this list, so apologies if this is a duplicate (or nothing > to do with mongrel!) > > Somehow when I run my rails app under mongrel, this code: > > > user.interests.include?( interest ) > > breaks with the following error: > > > NoMethodError in Profiles#change_interests > > private method `equal?' called for # > > Having spent a fair bit of time testing with the rails console, and > running the app via webrick (it works in both cases) I can only guess > I've screwed something up with mongrel. Generally this happens when you've got something that already defined Interest and then you use it later. There's nothing in mongrel named Interest or Profiles so it's maybe something else. > On another box with the same mongrel gem versions, it works fine. A > week later I'm asking in desperation, what have I broken?! If it works in one place, but not in another, then you have to find out what the difference is between the two systems. I think you've probably got a gem or a version of a gem in one but not the other. Do a gem list on both and then diff the results. That'll tell you what's different. > Either way, a massive thanks for mongrel - it's by far the best > solution I've found so far to running my app :-) No problem. Let me know what you find. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From zedshaw at zedshaw.com Thu Jan 4 22:37:43 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 4 Jan 2007 19:37:43 -0800 Subject: [Mongrel] Slightly OT: Rails + Mongrel Proxy Server without Apache In-Reply-To: References: Message-ID: <20070104193743.fe66dddd.zedshaw@zedshaw.com> On Thu, 4 Jan 2007 13:22:51 -0700 "Chad Woolley" wrote: > Hi, > Chad! How's it going man? Sorry but I gotta rant for a second here. > I'm looking for suggestions on the simplest way to implement an HTTP > proxy under Rails/Mongrel. It should preserve ALL of the proxied HTTP > response - including all header content such keepalives, etc. > > Yes, I know I can do this with Apache's proxy module, and we already > do that for the non-development/test environments. This is just for > the development/test environment where we don't run Apache, just > Mongrel. It might be possible, but you might have better luck maybe with pound or another solution. Hit me up off-line for some help. > http://lists.netisland.net/archives/phillyonrails/phillyonrails-2006/msg00231.html First off, Brian McCallister is wrong. He's been here before, asked about pipelines and keepalives and all sorts of other crap, and I answered him without much response. Apparently he's now trolling in other locations: "I presume something in the design of Mongrel makes it tough to implement keep-alives. Saying that they are poorly specced, or hurt performance for the protocol or client is, umh, wrong, however. I have a hunch that the reason comes back to the choice to actually build an HTTP grammar with the ragel FSM compiler and making the FSM clean across requests on a single connection has proven difficult." Here's the reasons, which I covered with Brian previously that Mongrel doesn't do keepalives or pipelining: 1) The last study (which everyone references) done on HTTP performance was done in 1999 and had dubious methodology with limited repeatability. http://www.w3.org/Protocols/HTTP/Performance/Pipeline 2) The above study doesn't cover dynamic content from dynamic languages on a localhost adapter. The situation most commonly used with Mongrel. 3) The keepalives and pipelining have ambiguous semantics so they're difficult to implement reliably. They're also vulnerable to several design flaws that allow clients to take down servers with "trickle" attacks. 4) RUBY USES SELECT AND ON MOST SYSTEMS CAN ONLY PROCESS 1024 OR LESS FILES AT ONCE. 5) Given #1, #2, #3, #4, a client can connect to a Ruby based web server, slowly trickle out a series of pipelined requests (each being allowed to be 128k in headers) taking up all of the sockets available (which amounts to actually about 256 to 500 in practice) until the server is useless. 6) The performance measurements I did showed that when processing requests off localhost these elements of http didn't make an improvement at all. This is a combination of localhost being pretty damn good on many systems, and Ruby being slow as dirt. 7) Also, there is a boost when the connection is simply closed right away. The reason is: http://www.ajaxperformance.com/?p=33 That's right, most browsers actually don't even use this incredibly dense, horribly designed, stupid addition to the HTTP protocol. Tell me, what's the point of all this maintaining connections if browsers don't use it? Huh? Ragel is not the reason, it was done after lots of testing and experimentation. I'm not an idiot and the above comment pisses me off to no end. If Ruby could handle it, I'd have implemented it for no other reason that to have these idiots who know jack all about protocol design or measurement just shut up and actually use the damn thing. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From thewoolleyman at gmail.com Fri Jan 5 13:28:03 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Fri, 5 Jan 2007 11:28:03 -0700 Subject: [Mongrel] Slightly OT: Rails + Mongrel Proxy Server without Apache In-Reply-To: <20070104193743.fe66dddd.zedshaw@zedshaw.com> References: <20070104193743.fe66dddd.zedshaw@zedshaw.com> Message-ID: On 1/4/07, Zed A. Shaw wrote: > On Thu, 4 Jan 2007 13:22:51 -0700 > "Chad Woolley" wrote: > > > I'm looking for suggestions on the simplest way to implement an HTTP > > proxy under Rails/Mongrel. It should preserve ALL of the proxied HTTP > > response - including all header content such keepalives, etc. > > > > Yes, I know I can do this with Apache's proxy module, and we already > > do that for the non-development/test environments. This is just for > > the development/test environment where we don't run Apache, just > > Mongrel. > > It might be possible, but you might have better luck maybe with pound or another solution. Hit me up off-line for some help. > Thanks for the response. That's sort of what I figured. It's no big deal, we will just live without Jspell in development/test. Luckily, the client-side jspell components seem to fail gracefully and silently if the Jspell server is unavailable, at least for our usage. Thanks, -- Chad From technoweenie at gmail.com Fri Jan 5 15:00:58 2007 From: technoweenie at gmail.com (Rick Olson) Date: Fri, 5 Jan 2007 14:00:58 -0600 Subject: [Mongrel] Slightly OT: Rails + Mongrel Proxy Server without Apache In-Reply-To: References: <20070104193743.fe66dddd.zedshaw@zedshaw.com> Message-ID: <48fe25b0701051200m45e6f1aejaf2456d13dabd4f2@mail.gmail.com> > > It might be possible, but you might have better luck maybe with pound or another solution. Hit me up off-line for some help. Nginx is very light and works well... -- Rick Olson http://weblog.techno-weenie.net http://mephistoblog.com From joevandyk at gmail.com Fri Jan 5 17:25:19 2007 From: joevandyk at gmail.com (Joe Van Dyk) Date: Fri, 5 Jan 2007 14:25:19 -0800 Subject: [Mongrel] fastthread -- what is it? In-Reply-To: <20070104070528.5bee0321.zedshaw@zedshaw.com> References: <20070104070528.5bee0321.zedshaw@zedshaw.com> Message-ID: On 1/4/07, Zed A. Shaw wrote: > On Thu, 4 Jan 2007 00:55:41 -0800 > "Joe Van Dyk" wrote: > > > Hi, > > > > A quick search didn't explain what fastthread is, and how it relates > > to mongrel. Why would I want to install fastthread? > > Hi Joe, long answer is that ruby has a bug in how the array works and how threads are garbage collected. When the current Ruby thread locking primitives operate on threads, they tend to store idle ones in arrays. As the existing thread locking mechanisms pull the threads off the array they never get garbage collected and that causes a nasty leak. > > At the time I was testing this, me and Bradley Taylor narrowed the problem down and produced these two scripts: > > http://pastie.caboo.se/10194 > http://pastie.caboo.se/10317 > > The first one shows the leak by using Mutex (with graph), the second showed proper GC operation by using Sync (with graph). Still wasn't enough because several high profile idiots on ruby-lang tried to claim the test was invalid but couldn't offer a reason why the first script leaked and the second didn't. > > Later, after much arguing, calling me an idiot, debating the merits of OS memory allocation, and other stupidities, we find out that Eric Mahurin fixed the whole problem a year ago and it was missed: > > http://blade.nagaokgaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/5861 > > Thankfully, there's smart cool people like mentalguy who can make improvements and provide them as gems. What mentalguy did is re-create all of the Ruby thread locking gear in a C extension called fastthread. With fastthread we can provide a modest speed boost as well as fix the memory leaks Ruby has by just including a gem. He's pushing for it to become the new thread locking api in Ruby, so hopefully he can get it in without much fuss. > > I'm telling people that you have to use fastthread, but it's still external so if you run into problems or don't see an improvements then you don't have to run it. Mongrel has fastthread as a gem dependency, but it will run it only if it's installed. So, you can install it, try it out, and then remove the gem if it's a problem. > > And that's the whole story. Enjoy! Thanks for the explanation! Joe From cronald at gmail.com Sat Jan 6 11:59:40 2007 From: cronald at gmail.com (Paul King) Date: Sat, 6 Jan 2007 16:59:40 +0000 Subject: [Mongrel] Mongrel/Rails weird problem with methods Message-ID: <2939187c0701060859v75bd0238uc5588b90924192f6@mail.gmail.com> Hi Zed, > > NoMethodError in Profiles#change_interests > > private method `equal?' called for # > > On another box with the same mongrel gem versions, it works fine. A > > week later I'm asking in desperation, what have I broken?! > If it works in one place, but not in another, then you have to find out what the difference > is between the two systems. I think you've probably got a gem or a version of a gem in > one but not the other. Do a gem list on both and then diff the results. That'll tell you > what's different. Thanks for replying, I've finally gotten to the bottom of it. I've been using classifier (http://rubyforge.org/projects/classifier/) for some bayesian experiments, which requires libgsl. Seems that while rb-gsl (http://rb-gsl.rubyforge.org/) is installed, my models break! I've yet to work out why, but I also found that adding a stub to my model temporarily fixed the problem: def equal?( obj ) end Maybe someone else will find this helpful, thanks again :) - Paul From jdz99 at hotmail.com Tue Jan 9 17:46:15 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Tue, 09 Jan 2007 22:46:15 +0000 Subject: [Mongrel] Browser or Server error? Message-ID: I can view a website from Windows w / Mozilla or IE, but from an Apple using Safari I get this error in the log and can't view the site, Java and JavaScript are enable in the Safari Browser...I am using Mongrel w/ Apache (I'm not sure if I need to configure something on the server) Processing Base#index (for 26.19.21.70 at 2007-01-09 17:13:37) [GET] Session ID: edc91ef302b5e8ec845acf77c75840c3 Parameters: {"baseRelativePath"=>"/javascripts/dojo/"} ActionController::RoutingError (Recognition failed for "/javascripts/dojo/Storage_version6.swf"): /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/routing.rb:522:in `recognition_failed' /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/routing.rb:512:in `recognize!' /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/dispatcher.rb:38:in `dispatch' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:78:in `process' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:76:in `synchronize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:76:in `process' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:618:in `process_client' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:617:in `each' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:617:in `process_client' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `initialize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `new' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `initialize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `new' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:271:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:270:in `each' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:270:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:127:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 /usr/bin/mongrel_rails:18:in `load' /usr/bin/mongrel_rails:18 Thanks, Jim _________________________________________________________________ The MSN Entertainment Guide to Golden Globes is here. Get all the scoop. http://tv.msn.com/tv/globes2007/?icid=nctagline2 From me at seebq.com Tue Jan 9 18:00:32 2007 From: me at seebq.com (Charles Brian Quinn) Date: Tue, 9 Jan 2007 18:00:32 -0500 Subject: [Mongrel] versioning of win32 versus ruby gems In-Reply-To: <2F62845E-AAF2-4EF9-B543-B57C6F8D18A6@brainspl.at> References: <3a2de0cd0612211038s2b8c2c6fy3674ffdfa8439136@mail.gmail.com> <458AD72B.6050203@berkeley.edu> <3a2de0cd0612211113h7ed03674k7ebf877c5e93e9b0@mail.gmail.com> <2F62845E-AAF2-4EF9-B543-B57C6F8D18A6@brainspl.at> Message-ID: <3a2de0cd0701091500l239a83bcl2134c3d58ab4b27@mail.gmail.com> Ezra, I found this cap plugin you posted to be extremely useful, ccing Capistrano list, where I know you've posted about it too. I have a patch, adding the options as a params hash for readability. My cursory googling..err..searching could not reveal where this capistrano "Gem" plugin resides. main difference is this method: def install(packages, source=nil, version=nil) is now: def install(packages, options={}) so you can do: gem.select 'mysql', :version => '2.7', :platform => 'ruby', :extra_params => '-- --with-mysql-config' or: gem.select 'mongrel', :version => '0.3.13.4' Here's the diff, (email formatting is horrible), or point me to an svn for latest to build a patch $ diff cap_gem_plugin.rb cap_gem_plugin_cbq.rb 39,41c36,40 < def install(packages, source=nil, version=nil) < sudo "#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # < {source ? '--source='+source : nil } #{packages.to_a.join(' ')}" --- > # def install(packages, source=nil, version=nil) > def install(packages, options={}) > sudo "#{GEM_INSTALL} #{options[:version] ? '-v '+options[:version].to_s : nil} " + > "#{options[:source] ? '--source='+options[:source] : nil } " + > "#{packages.to_a.join(' ')}" 63c59,60 < def select(package, source=nil, version=nil, platform='ruby') --- > # def select(package, source=nil, version=nil, platform='ruby') > def select(package, options={}) 65,66c62,65 < cmd="#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # < {package} #{source ? '--source='+source : nil }" --- > cmd="#{GEM_INSTALL} #{options[:version] ? '-v '+options[:version].to_s : nil} " + > "#{package} " + > "#{options[:source] ? '--source='+options[:source] : nil } " + > "#{options[:extra_params] ? options[:extra_params] : nil}" 70c69 < when /\s(\d+).*\(#{platform}\)/ --- > when /\s(\d+).*\(#{options[:platform]}\)/ Thanks! -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com 678.389.9462 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml On 12/21/06, Ezra Zygmuntowicz wrote: > On Dec 21, 2006, at 11:13 AM, Charles Brian Quinn wrote: > > Thanks Steven, > > > > This is using Jamis' net/ssh library and using: > > > > sudo cmd do |channel, stream, data| > > data.each_line do | line | > > > > to regex match lines and type in input. this could work, but i was > > hoping for bash or something simpler.... > > > > Guess that means it's time to move my all of my shell scripts over to > > ruby (except for the one that installs ruby) ;-) > > > > Thanks! > > > Charles- > > You and me both. I didn't want to spend the time writing bash > scripts for this when I need to do it on tons of machines anyway. So > the script he linked to is actually a capistrano plugin. Take the > file and put it somewhere in your load path and then require it from > a capistrano recipe file and then you can use it like this: > > > require 'cap_gem' > > task :install_gems, :roles => :app do > gem.select 'mongrel' , 'http://mongrel.rubyforge.org/releases' > gem.install 'mongrel', 'http://mongrel.rubyforge.org/releases' , > '1.0' > end > > select will select the most recent versions for the current platform > and install it. install will install a specific version but won't > auto select from a menu. So is there are two or more versions of a > gem then you want to use select. > > Here is the more current version of the plugin for cap. This one > supports the --source option. > > require 'rubygems' > require 'capistrano' > # Installs within Capistrano as the plugin _gem_. > # Prefix all calls to the library with gem. > # Manages installing gems and versioned gems. > module Gem > > # Default install command > # > # * doesn't install documentation > # * installs all required dependencies automatically. > # > GEM_INSTALL="gem install -y --no-rdoc" > > # Upgrade the *gem* system to the latest version. Runs via *sudo* > def update_system > sudo "gem update --system" > end > > # Updates all the installed gems to the latest version. Runs via > *sudo*. > # Don't use this command if any of the gems require a version > selection. > def upgrade > sudo "gem update --no-rdoc" > end > > # Removes old versions of gems from installation area. > def cleanup > sudo "gem cleanup" > end > > # Installs the gems detailed in +packages+, selecting version > +version+ if > # specified. > # > # +packages+ can be a single string or an array of strings. > # > def install(packages, source=nil, version=nil) > sudo "#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > {source ? '--source='+source : nil } #{packages.to_a.join(' ')}" > end > > def uninstall(package) > sudo "gem uninstall #{package}" do |channel, stream, data| > data.each_line do |line| > if line =~ /\[Yn\]/ > channel.send_data "Y\n" > end > end > end > end > > # Auto selects a gem from a list and installs it. > # > # *gem* has no mechanism on the command line of disambiguating > builds for > # different platforms, and instead asks the user. This method has > the necessary > # conversation to select the +version+ relevant to +platform+ (or > the one nearest > # the top of the list if you don't specify +version+). > def select(package, source=nil, version=nil, platform='ruby') > selections={} > cmd="#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > {package} #{source ? '--source='+source : nil }" > sudo cmd do |channel, stream, data| > data.each_line do | line | > case line > when /\s(\d+).*\(#{platform}\)/ > if selections[channel[:host]].nil? > selections[channel[:host]]=$1.dup+"\n" > logger.info "Selecting #$&", "#{stream} :: #{channel[:host]}" > end > when /\s\d+\./ > # Discard other selections from data stream > when /^>/ > channel.send_data selections[channel[:host]] > logger.debug line, "#{stream} :: #{channel[:host]}" > else > logger.info line, "#{stream} :: #{channel[:host]}" > end > end > end > end > > end > > Capistrano.plugin :gem, Gem > > > Cheers- > -- Ezra Zygmuntowicz-- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From michael.dauria at gmail.com Tue Jan 9 18:08:51 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Tue, 9 Jan 2007 18:08:51 -0500 Subject: [Mongrel] Browser or Server error? In-Reply-To: References: Message-ID: <1907e2ca0701091508pd0aee9aq9eccbbb5ce20b907@mail.gmail.com> The following file exists in your web servers root? /javascripts/dojo/Storage_version6.swf On 1/9/07, Jim Douglas wrote: > > I can view a website from Windows w / Mozilla or IE, but from an Apple > using > Safari I get > this error in the log and can't view the site, > > Java and JavaScript are enable in the Safari Browser...I am using Mongrel > w/ > Apache > > (I'm not sure if I need to configure something on the server) > > Processing Base#index (for 26.19.21.70 at 2007-01-09 17:13:37) [GET] > Session ID: edc91ef302b5e8ec845acf77c75840c3 > Parameters: {"baseRelativePath"=>"/javascripts/dojo/"} > > > ActionController::RoutingError (Recognition failed for > "/javascripts/dojo/Storage_version6.swf"): > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5 > /lib/action_controller/routing.rb:522:in > `recognition_failed' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5 > /lib/action_controller/routing.rb:512:in > `recognize!' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/dispatcher.rb:38:in > `dispatch' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:78:in > `process' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:76:in > `synchronize' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:76:in > `process' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:618:in > `process_client' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:617:in `each' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:617:in > `process_client' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `run' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in > `initialize' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `new' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `run' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in > `initialize' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `new' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `run' > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:271:in > `run' > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:270:in > `each' > > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:270:in > `run' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:127:in > `run' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in > `run' > /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 > /usr/bin/mongrel_rails:18:in `load' > /usr/bin/mongrel_rails:18 > > Thanks, > Jim > > _________________________________________________________________ > The MSN Entertainment Guide to Golden Globes is here. Get all the scoop. > http://tv.msn.com/tv/globes2007/?icid=nctagline2 > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070109/1d916973/attachment.html From ezmobius at gmail.com Tue Jan 9 18:18:17 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Tue, 9 Jan 2007 15:18:17 -0800 Subject: [Mongrel] versioning of win32 versus ruby gems In-Reply-To: <3a2de0cd0701091500l239a83bcl2134c3d58ab4b27@mail.gmail.com> References: <3a2de0cd0612211038s2b8c2c6fy3674ffdfa8439136@mail.gmail.com> <458AD72B.6050203@berkeley.edu> <3a2de0cd0612211113h7ed03674k7ebf877c5e93e9b0@mail.gmail.com> <2F62845E-AAF2-4EF9-B543-B57C6F8D18A6@brainspl.at> <3a2de0cd0701091500l239a83bcl2134c3d58ab4b27@mail.gmail.com> Message-ID: <00CF4C73-69EA-4DCC-A8F9-45CE5D9BCF7D@brainspl.at> Hey Charles- Cool I'm glad you like it. It definitely needed a cleanup of the params and your patch looks really nice. Unfortunately email ate the formatting and I can't use it :/ Can you send me a copy of the entire file in its new state? You can send it to me directly if you like. I really need to package this thing up with a few other goodies I have and release it. Thanks- -Ezra On Jan 9, 2007, at 3:00 PM, Charles Brian Quinn wrote: > Ezra, I found this cap plugin you posted to be extremely useful, ccing > Capistrano list, where I know you've posted about it too. I have a > patch, adding the options as a params hash for readability. My > cursory googling..err..searching could not reveal where this > capistrano "Gem" plugin resides. > > main difference is this method: > > def install(packages, source=nil, version=nil) > > is now: > > def install(packages, options={}) > > so you can do: > > gem.select 'mysql', :version => '2.7', :platform => 'ruby', > :extra_params => '-- --with-mysql-config' > > or: > > gem.select 'mongrel', :version => '0.3.13.4' > > Here's the diff, (email formatting is horrible), or point me to an svn > for latest to build a patch > > $ diff cap_gem_plugin.rb cap_gem_plugin_cbq.rb > 39,41c36,40 > < def install(packages, source=nil, version=nil) > < sudo "#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > < {source ? '--source='+source : nil } #{packages.to_a.join(' ')}" > --- >> # def install(packages, source=nil, version=nil) >> def install(packages, options={}) >> sudo "#{GEM_INSTALL} #{options[:version] ? '-v '+options >> [:version].to_s : nil} " + >> "#{options[:source] ? '--source='+options[:source] : >> nil } " + >> "#{packages.to_a.join(' ')}" > 63c59,60 > < def select(package, source=nil, version=nil, platform='ruby') > --- >> # def select(package, source=nil, version=nil, platform='ruby') >> def select(package, options={}) > 65,66c62,65 > < cmd="#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > < {package} #{source ? '--source='+source : nil }" > --- >> cmd="#{GEM_INSTALL} #{options[:version] ? '-v '+options >> [:version].to_s : nil} " + >> "#{package} " + >> "#{options[:source] ? '--source='+options[:source] : nil } >> " + >> "#{options[:extra_params] ? options[:extra_params] : nil}" > 70c69 > < when /\s(\d+).*\(#{platform}\)/ > --- >> when /\s(\d+).*\(#{options[:platform]}\)/ > > > Thanks! > -- > Charles Brian Quinn > self-promotion: www.seebq.com > highgroove studios: www.highgroove.com > slingshot hosting: www.slingshothosting.com > 678.389.9462 > > Ruby on Rails Bootcamp at the Big Nerd Ranch > Intensive Ruby on Rails Training: > http://www.bignerdranch.com/classes/ruby.shtml > > On 12/21/06, Ezra Zygmuntowicz wrote: >> On Dec 21, 2006, at 11:13 AM, Charles Brian Quinn wrote: >>> Thanks Steven, >>> >>> This is using Jamis' net/ssh library and using: >>> >>> sudo cmd do |channel, stream, data| >>> data.each_line do | line | >>> >>> to regex match lines and type in input. this could work, but i was >>> hoping for bash or something simpler.... >>> >>> Guess that means it's time to move my all of my shell scripts >>> over to >>> ruby (except for the one that installs ruby) ;-) >>> >>> Thanks! >> >> >> Charles- >> >> You and me both. I didn't want to spend the time writing bash >> scripts for this when I need to do it on tons of machines anyway. So >> the script he linked to is actually a capistrano plugin. Take the >> file and put it somewhere in your load path and then require it from >> a capistrano recipe file and then you can use it like this: >> >> >> require 'cap_gem' >> >> task :install_gems, :roles => :app do >> gem.select 'mongrel' , 'http://mongrel.rubyforge.org/releases' >> gem.install 'mongrel', 'http://mongrel.rubyforge.org/releases' , >> '1.0' >> end >> >> select will select the most recent versions for the current platform >> and install it. install will install a specific version but won't >> auto select from a menu. So is there are two or more versions of a >> gem then you want to use select. >> >> Here is the more current version of the plugin for cap. This one >> supports the --source option. >> >> require 'rubygems' >> require 'capistrano' >> # Installs within Capistrano as the plugin _gem_. >> # Prefix all calls to the library with gem. >> # Manages installing gems and versioned gems. >> module Gem >> >> # Default install command >> # >> # * doesn't install documentation >> # * installs all required dependencies automatically. >> # >> GEM_INSTALL="gem install -y --no-rdoc" >> >> # Upgrade the *gem* system to the latest version. Runs via *sudo* >> def update_system >> sudo "gem update --system" >> end >> >> # Updates all the installed gems to the latest version. Runs via >> *sudo*. >> # Don't use this command if any of the gems require a version >> selection. >> def upgrade >> sudo "gem update --no-rdoc" >> end >> >> # Removes old versions of gems from installation area. >> def cleanup >> sudo "gem cleanup" >> end >> >> # Installs the gems detailed in +packages+, selecting version >> +version+ if >> # specified. >> # >> # +packages+ can be a single string or an array of strings. >> # >> def install(packages, source=nil, version=nil) >> sudo "#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # >> {source ? '--source='+source : nil } #{packages.to_a.join(' ')}" >> end >> >> def uninstall(package) >> sudo "gem uninstall #{package}" do |channel, stream, data| >> data.each_line do |line| >> if line =~ /\[Yn\]/ >> channel.send_data "Y\n" >> end >> end >> end >> end >> >> # Auto selects a gem from a list and installs it. >> # >> # *gem* has no mechanism on the command line of disambiguating >> builds for >> # different platforms, and instead asks the user. This method has >> the necessary >> # conversation to select the +version+ relevant to +platform+ (or >> the one nearest >> # the top of the list if you don't specify +version+). >> def select(package, source=nil, version=nil, platform='ruby') >> selections={} >> cmd="#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # >> {package} #{source ? '--source='+source : nil }" >> sudo cmd do |channel, stream, data| >> data.each_line do | line | >> case line >> when /\s(\d+).*\(#{platform}\)/ >> if selections[channel[:host]].nil? >> selections[channel[:host]]=$1.dup+"\n" >> logger.info "Selecting #$&", "#{stream} :: #{channel >> [:host]}" >> end >> when /\s\d+\./ >> # Discard other selections from data stream >> when /^>/ >> channel.send_data selections[channel[:host]] >> logger.debug line, "#{stream} :: #{channel[:host]}" >> else >> logger.info line, "#{stream} :: #{channel[:host]}" >> end >> end >> end >> end >> >> end >> >> Capistrano.plugin :gem, Gem >> >> >> Cheers- >> -- Ezra Zygmuntowicz-- Lead Rails Evangelist >> -- ez at engineyard.com >> -- Engine Yard, Serious Rails Hosting >> -- (866) 518-YARD (9273) >> >> >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users >> > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From gtomei at blurb.com Tue Jan 9 18:10:49 2007 From: gtomei at blurb.com (Greg Tomei) Date: Tue, 9 Jan 2007 15:10:49 -0800 Subject: [Mongrel] Browser or Server error? In-Reply-To: References: Message-ID: <859190D5-EF7B-476F-B7A0-9062250829A5@blurb.com> On Jan 9, 2007, at 2:46 PM, Jim Douglas wrote: > > ActionController::RoutingError (Recognition failed for > "/javascripts/dojo/Storage_version6.swf"): Jim, this is the Rails equivalent of a 404 Page Not Found error - most likely not a Mongrel problem. It is probably some difference in how the browser is running the javascript. I am not sure why you would receive this message in one browser but not another. I see you are doing something involving the Dojo Javascripting framework. This inconsistency makes me think that Safari is executing a script differently which results in a request for this file. I would check whether the file present in your Rails app's public/javascripts/dojo folder, and more importantly what are browsers that do not behave doing or requesting that does not result in this error. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070109/c17392f6/attachment.html From jdz99 at hotmail.com Tue Jan 9 18:38:58 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Tue, 09 Jan 2007 23:38:58 +0000 Subject: [Mongrel] Browser or Server error? In-Reply-To: <1907e2ca0701091508pd0aee9aq9eccbbb5ce20b907@mail.gmail.com> Message-ID: >From: "Michael D'Auria" >Reply-To: mongrel-users at rubyforge.org >To: mongrel-users at rubyforge.org >Subject: Re: [Mongrel] Browser or Server error? >Date: Tue, 9 Jan:08:51 -0500 > >The following file exists in your web servers root? >/javascripts/dojo/Storage_version6.swf No, that file doesn't, but when I removed the dojo library reference from the page everything worked fine, prototye references and other javascript functionality... ...so I posted to the dojo list...hopefully they have the answer. I would hate to NOT be able to use dojo, but for now that seems to be the case. Jim > >On 1/9/07, Jim Douglas wrote: >> >>I can view a website from Windows w / Mozilla or IE, but from an Apple >>using >>Safari I get >>this error in the log and can't view the site, >> >>Java and JavaScript are enable in the Safari Browser...I am using Mongrel >>w/ >>Apache >> >>(I'm not sure if I need to configure something on the server) >> >>Processing Base#index (for 26.19.21.70 at:13:37) [GET] >>Session ID: edc91ef302b5e8ec845acf77c75840c3 >>Parameters: {"baseRelativePath"=>"/javascripts/dojo/"} >> >> >>ActionController::RoutingError (Recognition failed for >>"/javascripts/dojo/Storage_version6.swf"): >> >>/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5 >>/lib/action_controller/routing.rb:522:in >>`recognition_failed' >> >>/usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5 >>/lib/action_controller/routing.rb:512:in >>`recognize!' >> /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/dispatcher.rb:38:in >>`dispatch' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:78:in >>`process' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:76:in >>`synchronize' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/rails.rb:76:in >>`process' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:618:in >>`process_client' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:617:in `each' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:617:in >>`process_client' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `run' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in >>`initialize' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `new' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:736:in `run' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in >>`initialize' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `new' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel.rb:720:in `run' >> >>/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:271:in >>`run' >> >>/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:270:in >>`each' >> >>/usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/configurator.rb:270:in >>`run' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:127:in >>`run' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/lib/mongrel/command.rb:211:in >>`run' >> /usr/lib/ruby/gems/1.8/gems/mongrel-1.0/bin/mongrel_rails:243 >> /usr/bin/mongrel_rails:18:in `load' >> /usr/bin/mongrel_rails:18 >> >>Thanks, >>Jim >> >>_________________________________________________________________ >>The MSN Entertainment Guide to Golden Globes is here. Get all the scoop. >>http://tv.msn.com/tv/globes2007/?icid=nctagline2 >> >>_______________________________________________ >>Mongrel-users mailing list >>Mongrel-users at rubyforge.org >>http://rubyforge.org/mailman/listinfo/mongrel-users >> >_______________________________________________ >Mongrel-users mailing list >Mongrel-users at rubyforge.org >http://rubyforge.org/mailman/listinfo/mongrel-users _________________________________________________________________ Type your favorite song.? Get a customized station.? Try MSN Radio powered by Pandora. http://radio.msn.com/?icid=T002MSN03A07001 From mongrel at philip.pjkh.com Wed Jan 10 17:21:46 2007 From: mongrel at philip.pjkh.com (Philip Hallstrom) Date: Wed, 10 Jan 2007 16:21:46 -0600 (CST) Subject: [Mongrel] Anyway to "dynamically" start/stop mongrel based on web traffic? Message-ID: <20070110161246.V19992@bravo.pjkh.com> Hey all - I've got a question that I haven't seen addressed anywhere and was wondering if anyone has put any thought into it or not... Here's my setup... I have several *small* sites running apache/mongrel. Each has a single mongrel instance. Most don't get any traffic (no one reads my blog :). And I was thinking, I could host a couple of more sites/projects without worrying about ram if I could find a way have all my mongrels be off until a request came in... then apache (or some other server) could block until it could get mongrel started, then keep processing the request. Then I could either kill off the mongrel later if no traffic was coming in. Or perhaps mongrel itself could stay running, but unload (and free the ram) of rails until a request came in, then load it back up for awhile until traffic stopped and unload it... So.. I guess I'm wondering if anyone's done anything like this or if it is possible and if so what the best way to go about it might be? I'd be willing to help (if I can, but not sure how likely that is :) It would be nice to have my little apps that get little traffic not suck up so much ram while "idle".. -philip From jason at indelicate.net Wed Jan 10 17:43:38 2007 From: jason at indelicate.net (Jason LaRiviere) Date: Wed, 10 Jan 2007 16:43:38 -0600 Subject: [Mongrel] Anyway to "dynamically" start/stop mongrel based on web traffic? In-Reply-To: <20070110161246.V19992@bravo.pjkh.com> References: <20070110161246.V19992@bravo.pjkh.com> Message-ID: <20070110224337.GC13348@indelicate.net> Philip Hallstrom wrote: > Then I could either kill off the mongrel later if no traffic was coming > in. > > Or perhaps mongrel itself could stay running, but unload (and free the > ram) of rails until a request came in, then load it back up for awhile > until traffic stopped and unload it... What you're talking about is inetd functionality for a rails process. If you're on a sane unix, you could probably make that happen. Take a look at /etc/inetd.conf, or your version thereof. Whether it is a good idea or not, well, that's another matter. I'm inclined to say not. :-) -- GPG/PGP key ID: 0x3A410DBD | http://pgp.mit.edu 7B3F 4505 7D9A 7FDE 83C9 52C2 4909 59B9 3A41 0DBD From mongrel at philip.pjkh.com Wed Jan 10 18:34:48 2007 From: mongrel at philip.pjkh.com (Philip Hallstrom) Date: Wed, 10 Jan 2007 17:34:48 -0600 (CST) Subject: [Mongrel] Anyway to "dynamically" start/stop mongrel based on web traffic? In-Reply-To: <20070110224337.GC13348@indelicate.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> Message-ID: <20070110173039.B19992@bravo.pjkh.com> > Philip Hallstrom wrote: >> Then I could either kill off the mongrel later if no traffic was coming >> in. >> >> Or perhaps mongrel itself could stay running, but unload (and free the >> ram) of rails until a request came in, then load it back up for awhile >> until traffic stopped and unload it... > > What you're talking about is inetd functionality for a rails process. If > you're on a sane unix, you could probably make that happen. Take a look > at /etc/inetd.conf, or your version thereof. Kind of... my understanding of inetd though is that it listens on the port, accepts the connection, spawns the process and the process talks via stdin/out till done, then exits. What I want is a front-end webserver that realizes mongrel isn't running, holds the connection while it starts it, then continues as normal. I can kill the mongrel off later somehow... Basically I want dynamically spawned FCGI processes, but I've used FCGI before which is why I'm now using mongrel :) An ugly brute force would be to simply watch apache's logs for a 503 error and if seen start up mongrel, but that means one user is gonna get a broken page... I don't know enough about mongrel/rails/ruby to know if mongrel can unload the majority of that 30mb it's using, but still keep on listening, but if someone (Zed? :) wanted to give me some pointers I'd love to give it a try :) -philip From filipe at icewall.org Thu Jan 11 05:01:59 2007 From: filipe at icewall.org (Filipe) Date: Thu, 11 Jan 2007 08:01:59 -0200 (BRST) Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070110224337.GC13348@indelicate.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> Message-ID: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello! My name is Filipe and I'm from the Debian ruby-extras team. Some time ago, Jens Kraemer created packages for mongrel and gem plugin. Now, me and gwolf joined forces with him and we are working to create oficial debian packages for mongrel. So, we have some favors to ask from you (the mongrel developers), as those favors are not big things: * Could you please upload tar.gz files together with your gems files? * In this tar, could the files be with the current date, not in year 1969? :D tar complains a lot about this... * When release candidates are released, can you append something like "~rc1" to the tar file? This help debian auto tools to check new releases. * Finally, I got this great idea for Mongrel. All you have to do is completely change the internal processing, add 200 more methods to the HTTP parser, and... no. Just joking. Just the other 3 would be great! The Debian ruby-extras team has a page[1] dedicated to upstream developers, where those and other things that help *nix distributions are described. Regards, filipe lautert filipe { AT } icewall.org Linux User #279798 Jabber lautert at jabber.ru [1] http://pkg-ruby-extras.alioth.debian.org/upstream-devs.html -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFFpgscmKFbPqa6Qj4RAs5RAJ0XKjRilbzRwvo3hsRjkhtF34WrlQCfRGph cZrSi+wlMbkCVFJvwhOJWi4= =Ah68 -----END PGP SIGNATURE----- From _ at whats-your.name Thu Jan 11 14:49:38 2007 From: _ at whats-your.name (carmen) Date: Thu, 11 Jan 2007 14:49:38 -0500 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> Message-ID: <20070111194938.GJ8972@replic.net> On Thu Jan 11, 2007 at 08:01:59AM -0200, Filipe wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > > Hello! > > My name is Filipe and I'm from the Debian ruby-extras team. is it possible Zed could trademark Mongrel so it could be renamed IceBeast? From kylekochis at gmail.com Thu Jan 11 18:34:36 2007 From: kylekochis at gmail.com (Kyle Kochis) Date: Thu, 11 Jan 2007 16:34:36 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070111194938.GJ8972@replic.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070111194938.GJ8972@replic.net> Message-ID: <6a7034b0701111534h22209faajb70773a254b49155@mail.gmail.com> LOL or IceDog. Sounds like a good idea Filipe. I use Debian quite a bit but always install ruby from source and use gems for all my extras like mongrel. But for those that are afraid of compiling or want an easy way to uninstall, apt-get is great (why would you uninstall mongrel though?) . On 1/11/07, carmen <_ at whats-your.name> wrote: > On Thu Jan 11, 2007 at 08:01:59AM -0200, Filipe wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > > > Hello! > > > > My name is Filipe and I'm from the Debian ruby-extras team. > > is it possible Zed could trademark Mongrel so it could be renamed IceBeast? > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From joevandyk at gmail.com Thu Jan 11 21:31:55 2007 From: joevandyk at gmail.com (Joe Van Dyk) Date: Thu, 11 Jan 2007 18:31:55 -0800 Subject: [Mongrel] mongrel_cluster question Message-ID: Hi, I have a few different servers that all share the same Rails application directory (via NFS). I want to start mongrels on each one. But I need to make sure that the PID files (and maybe others?) don't get overwritten. Would using the --pid option work? Can I use that option with "mongrel_rails cluster::start"? Joe From joevandyk at gmail.com Thu Jan 11 21:34:03 2007 From: joevandyk at gmail.com (Joe Van Dyk) Date: Thu, 11 Jan 2007 18:34:03 -0800 Subject: [Mongrel] mongrel_cluster question In-Reply-To: References: Message-ID: Nevermind, looks like there's an option in mongrel_cluster.yml for where to stick the .pid file. On 1/11/07, Joe Van Dyk wrote: > Hi, > > I have a few different servers that all share the same Rails > application directory (via NFS). I want to start mongrels on each > one. But I need to make sure that the PID files (and maybe others?) > don't get overwritten. > > Would using the --pid option work? Can I use that option with > "mongrel_rails cluster::start"? > > Joe > From me at seebq.com Fri Jan 12 01:32:19 2007 From: me at seebq.com (Charles Brian Quinn) Date: Fri, 12 Jan 2007 01:32:19 -0500 Subject: [Mongrel] [Capistrano] Re: versioning of win32 versus ruby gems In-Reply-To: <00CF4C73-69EA-4DCC-A8F9-45CE5D9BCF7D@brainspl.at> References: <3a2de0cd0612211038s2b8c2c6fy3674ffdfa8439136@mail.gmail.com> <458AD72B.6050203@berkeley.edu> <3a2de0cd0612211113h7ed03674k7ebf877c5e93e9b0@mail.gmail.com> <2F62845E-AAF2-4EF9-B543-B57C6F8D18A6@brainspl.at> <3a2de0cd0701091500l239a83bcl2134c3d58ab4b27@mail.gmail.com> <00CF4C73-69EA-4DCC-A8F9-45CE5D9BCF7D@brainspl.at> Message-ID: <3a2de0cd0701112232v2a7f34edh970910af6fbeab30@mail.gmail.com> Here ya go Ezra, good stuff. documented it a tad and provided an example with the new options hash. -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com 678.389.9462 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml On 1/9/07, Ezra Zygmuntowicz wrote: > > Hey Charles- > > Cool I'm glad you like it. It definitely needed a cleanup of the > params and your patch looks really nice. Unfortunately email ate the > formatting and I can't use it :/ Can you send me a copy of the entire > file in its new state? You can send it to me directly if you like. I > really need to package this thing up with a few other goodies I have > and release it. > > Thanks- > -Ezra > > > > On Jan 9, 2007, at 3:00 PM, Charles Brian Quinn wrote: > > > Ezra, I found this cap plugin you posted to be extremely useful, ccing > > Capistrano list, where I know you've posted about it too. I have a > > patch, adding the options as a params hash for readability. My > > cursory googling..err..searching could not reveal where this > > capistrano "Gem" plugin resides. > > > > main difference is this method: > > > > def install(packages, source=nil, version=nil) > > > > is now: > > > > def install(packages, options={}) > > > > so you can do: > > > > gem.select 'mysql', :version => '2.7', :platform => 'ruby', > > :extra_params => '-- --with-mysql-config' > > > > or: > > > > gem.select 'mongrel', :version => '0.3.13.4' > > > > Here's the diff, (email formatting is horrible), or point me to an svn > > for latest to build a patch > > > > $ diff cap_gem_plugin.rb cap_gem_plugin_cbq.rb > > 39,41c36,40 > > < def install(packages, source=nil, version=nil) > > < sudo "#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > > < {source ? '--source='+source : nil } #{packages.to_a.join(' ')}" > > --- > >> # def install(packages, source=nil, version=nil) > >> def install(packages, options={}) > >> sudo "#{GEM_INSTALL} #{options[:version] ? '-v '+options > >> [:version].to_s : nil} " + > >> "#{options[:source] ? '--source='+options[:source] : > >> nil } " + > >> "#{packages.to_a.join(' ')}" > > 63c59,60 > > < def select(package, source=nil, version=nil, platform='ruby') > > --- > >> # def select(package, source=nil, version=nil, platform='ruby') > >> def select(package, options={}) > > 65,66c62,65 > > < cmd="#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > > < {package} #{source ? '--source='+source : nil }" > > --- > >> cmd="#{GEM_INSTALL} #{options[:version] ? '-v '+options > >> [:version].to_s : nil} " + > >> "#{package} " + > >> "#{options[:source] ? '--source='+options[:source] : nil } > >> " + > >> "#{options[:extra_params] ? options[:extra_params] : nil}" > > 70c69 > > < when /\s(\d+).*\(#{platform}\)/ > > --- > >> when /\s(\d+).*\(#{options[:platform]}\)/ > > > > > > Thanks! > > -- > > Charles Brian Quinn > > self-promotion: www.seebq.com > > highgroove studios: www.highgroove.com > > slingshot hosting: www.slingshothosting.com > > 678.389.9462 > > > > Ruby on Rails Bootcamp at the Big Nerd Ranch > > Intensive Ruby on Rails Training: > > http://www.bignerdranch.com/classes/ruby.shtml > > > > On 12/21/06, Ezra Zygmuntowicz wrote: > >> On Dec 21, 2006, at 11:13 AM, Charles Brian Quinn wrote: > >>> Thanks Steven, > >>> > >>> This is using Jamis' net/ssh library and using: > >>> > >>> sudo cmd do |channel, stream, data| > >>> data.each_line do | line | > >>> > >>> to regex match lines and type in input. this could work, but i was > >>> hoping for bash or something simpler.... > >>> > >>> Guess that means it's time to move my all of my shell scripts > >>> over to > >>> ruby (except for the one that installs ruby) ;-) > >>> > >>> Thanks! > >> > >> > >> Charles- > >> > >> You and me both. I didn't want to spend the time writing bash > >> scripts for this when I need to do it on tons of machines anyway. So > >> the script he linked to is actually a capistrano plugin. Take the > >> file and put it somewhere in your load path and then require it from > >> a capistrano recipe file and then you can use it like this: > >> > >> > >> require 'cap_gem' > >> > >> task :install_gems, :roles => :app do > >> gem.select 'mongrel' , 'http://mongrel.rubyforge.org/releases' > >> gem.install 'mongrel', 'http://mongrel.rubyforge.org/releases' , > >> '1.0' > >> end > >> > >> select will select the most recent versions for the current platform > >> and install it. install will install a specific version but won't > >> auto select from a menu. So is there are two or more versions of a > >> gem then you want to use select. > >> > >> Here is the more current version of the plugin for cap. This one > >> supports the --source option. > >> > >> require 'rubygems' > >> require 'capistrano' > >> # Installs within Capistrano as the plugin _gem_. > >> # Prefix all calls to the library with gem. > >> # Manages installing gems and versioned gems. > >> module Gem > >> > >> # Default install command > >> # > >> # * doesn't install documentation > >> # * installs all required dependencies automatically. > >> # > >> GEM_INSTALL="gem install -y --no-rdoc" > >> > >> # Upgrade the *gem* system to the latest version. Runs via *sudo* > >> def update_system > >> sudo "gem update --system" > >> end > >> > >> # Updates all the installed gems to the latest version. Runs via > >> *sudo*. > >> # Don't use this command if any of the gems require a version > >> selection. > >> def upgrade > >> sudo "gem update --no-rdoc" > >> end > >> > >> # Removes old versions of gems from installation area. > >> def cleanup > >> sudo "gem cleanup" > >> end > >> > >> # Installs the gems detailed in +packages+, selecting version > >> +version+ if > >> # specified. > >> # > >> # +packages+ can be a single string or an array of strings. > >> # > >> def install(packages, source=nil, version=nil) > >> sudo "#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > >> {source ? '--source='+source : nil } #{packages.to_a.join(' ')}" > >> end > >> > >> def uninstall(package) > >> sudo "gem uninstall #{package}" do |channel, stream, data| > >> data.each_line do |line| > >> if line =~ /\[Yn\]/ > >> channel.send_data "Y\n" > >> end > >> end > >> end > >> end > >> > >> # Auto selects a gem from a list and installs it. > >> # > >> # *gem* has no mechanism on the command line of disambiguating > >> builds for > >> # different platforms, and instead asks the user. This method has > >> the necessary > >> # conversation to select the +version+ relevant to +platform+ (or > >> the one nearest > >> # the top of the list if you don't specify +version+). > >> def select(package, source=nil, version=nil, platform='ruby') > >> selections={} > >> cmd="#{GEM_INSTALL} #{version ? '-v '+version.to_s : nil} # > >> {package} #{source ? '--source='+source : nil }" > >> sudo cmd do |channel, stream, data| > >> data.each_line do | line | > >> case line > >> when /\s(\d+).*\(#{platform}\)/ > >> if selections[channel[:host]].nil? > >> selections[channel[:host]]=$1.dup+"\n" > >> logger.info "Selecting #$&", "#{stream} :: #{channel > >> [:host]}" > >> end > >> when /\s\d+\./ > >> # Discard other selections from data stream > >> when /^>/ > >> channel.send_data selections[channel[:host]] > >> logger.debug line, "#{stream} :: #{channel[:host]}" > >> else > >> logger.info line, "#{stream} :: #{channel[:host]}" > >> end > >> end > >> end > >> end > >> > >> end > >> > >> Capistrano.plugin :gem, Gem > >> > >> > >> Cheers- > >> -- Ezra Zygmuntowicz-- Lead Rails Evangelist > >> -- ez at engineyard.com > >> -- Engine Yard, Serious Rails Hosting > >> -- (866) 518-YARD (9273) > >> > >> > >> _______________________________________________ > >> Mongrel-users mailing list > >> Mongrel-users at rubyforge.org > >> http://rubyforge.org/mailman/listinfo/mongrel-users > >> > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > > --~--~---------~--~----~------------~-------~--~----~ > To unsubscribe from this group, send email to capistrano-unsubscribe at googlegroups.com > For more options, visit this group at http://groups.google.com/group/capistrano > -~----------~----~----~----~------~----~------~--~--- > > -------------- next part -------------- A non-text attachment was scrubbed... Name: cap_gem_plugin_cbq.rb Type: text/x-ruby-script Size: 3302 bytes Desc: not available Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070112/3b82ccae/attachment.bin From kraemer at webit.de Fri Jan 12 05:02:58 2007 From: kraemer at webit.de (Jens Kraemer) Date: Fri, 12 Jan 2007 11:02:58 +0100 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <6a7034b0701111534h22209faajb70773a254b49155@mail.gmail.com> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070111194938.GJ8972@replic.net> <6a7034b0701111534h22209faajb70773a254b49155@mail.gmail.com> Message-ID: <20070112100258.GJ7007@cordoba.webit.de> On Thu, Jan 11, 2007 at 04:34:36PM -0700, Kyle Kochis wrote: > LOL or IceDog. > Sounds like a good idea Filipe. I use Debian quite a bit but always > install ruby from source and use gems for all my extras like mongrel. > But for those that are afraid of compiling or want an easy way to > uninstall, apt-get is great (why would you uninstall mongrel though?) not only for uninstalling, but also for people who have to maintain more than one or two servers. Having the complete rails stack available via apt just makes life much easier for them. The whole system is kept up-to-date by regular apt-updates anyway, so not having to resort to another packaging system for Rails on production systems is a good thing. Besides that, it's just a waste of resources to compile anything on *each* production machine in case of an upgrade. Your average web server shouldn't even need to have a compiler installed, imho. I've never heard of someone compiling tomcat or java on a live machine... Jens -- webit! Gesellschaft f?r neue Medien mbH www.webit.de Dipl.-Wirtschaftsingenieur Jens Kr?mer kraemer at webit.de Schnorrstra?e 76 Tel +49 351 46766 0 D-01069 Dresden Fax +49 351 46766 66 From kylekochis at gmail.com Fri Jan 12 11:09:33 2007 From: kylekochis at gmail.com (Kyle Kochis) Date: Fri, 12 Jan 2007 09:09:33 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112100258.GJ7007@cordoba.webit.de> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070111194938.GJ8972@replic.net> <6a7034b0701111534h22209faajb70773a254b49155@mail.gmail.com> <20070112100258.GJ7007@cordoba.webit.de> Message-ID: <6a7034b0701120809n5c12317amf1169182cea3dc02@mail.gmail.com> Jens, Good point, at least on the first two paragraphs but I must respectfully (yet enthusiastically) disagree on the last point: > Besides that, it's just a waste of resources to compile anything on > *each* production machine in case of an upgrade. Your average web server > shouldn't even need to have a compiler installed, imho. I've never heard > of someone compiling tomcat or java on a live machine... As a user of Debian (it is my preferred Linux Distro although I am starting to shift towards the BSD's), it is a pain in the butt to use Ruby1.8.2 or 1.6 and get everything like gems and rails working properly. Take a look at http://mongrel.rubyforge.org/docs/debian-sarge.html and http://lists.rubyonrails.org/pipermail/rails/2006-May/037763.html. The issue mentioned in both of these articles are VERY easy to avoid: curl, tar, cd ./configure make and finally make install. Not only that but since most VPS/Dedicated servers that host only one or maybe up to 5 (busy) sites that I set up at least don't need java, tomcat, php or anything else except what helps with their ruby needs. Additionally, I find that Debians speed on updating Ruby's packages is not very good when there is a new security or bugfix version out. This goes for every other distro i've seen as well so I am not bashing Debian, I am just trying to show that a compiler can be an important thing on a production server. Additionally, I use nginx as I have found it to be great for running with ruby on mongrel but currently the unstable and testing branches of debian still have version 0.4.13-2 and because nginx updates constantly it's latest stable version is 0.5.6. I'm not the kind of guy that likes to wait a year or so for it to be updated in debian again. same goes with Mongrel. If you have Ruby you should RubyGems and if you have that then it is SO easy to get mongrel. I have nothing against debian adding mongrel to apt but I personally will never use it. One last point: Like any debian guy, I care about security and want to have the latest patches and regularly do apt-get update and upgrade. But because I manage a few high traffic sites that use ruby I also must have plan if one (or more) of the sites get exploited because of a new found security issue in ruby (or anything else for that matter). Perhaps there are no new versions out that address this issue but after some searching I find the root of the problem and make a patch. So I use that patch to compile a secure version of that once exploited software. PLEASE: I do not want to start a flame war here and I really do like debian and apt but I have to disagree with the philosophy of never needing a compiler. thanks for listening to my rampling. From kraemer at webit.de Fri Jan 12 12:43:16 2007 From: kraemer at webit.de (Jens Kraemer) Date: Fri, 12 Jan 2007 18:43:16 +0100 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <6a7034b0701120809n5c12317amf1169182cea3dc02@mail.gmail.com> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070111194938.GJ8972@replic.net> <6a7034b0701111534h22209faajb70773a254b49155@mail.gmail.com> <20070112100258.GJ7007@cordoba.webit.de> <6a7034b0701120809n5c12317amf1169182cea3dc02@mail.gmail.com> Message-ID: <20070112174316.GC5755@cordoba.webit.de> On Fri, Jan 12, 2007 at 09:09:33AM -0700, Kyle Kochis wrote: > Jens, > Good point, at least on the first two paragraphs but I must > respectfully (yet enthusiastically) disagree on the last point: > > > Besides that, it's just a waste of resources to compile anything on > > *each* production machine in case of an upgrade. Your average web server > > shouldn't even need to have a compiler installed, imho. I've never heard > > of someone compiling tomcat or java on a live machine... > > As a user of Debian (it is my preferred Linux Distro although I am > starting to shift towards the BSD's), it is a pain in the butt to use > Ruby1.8.2 or 1.6 and get everything like gems and rails working > properly. Take a look at > http://mongrel.rubyforge.org/docs/debian-sarge.html and > http://lists.rubyonrails.org/pipermail/rails/2006-May/037763.html. The > issue mentioned in both of these articles are VERY easy to avoid: > curl, tar, cd ./configure make and finally make install. I don't really want to warm up that old 'Debian+Ruby sucks' discussion, however I can't resist to comment on these 'issues'. It's a known fact that a stable Debian lags somewhat behind the rest of the world in terms of software versions, so if you pick it you have to take that into account and be prepared to backport something if you want to live on the edge *and* stay on the Debian way of managing your software. I know, not everybody is in the position to pick *his* distro every time, and yes, Debian can give people a hard time in the beginning. For the issues mentioned in the Mail you link to - the real bug here is with rubygems which doesn't fail if compiling a c extension fails, but happily ignores the error. So people think Mongrel installed correctly and blame Debian for it not working. If you saw the real error at gem install time, everybody could guess he needs a compiler and ruby-dev to compile things. [..] > One last point: Like any debian guy, I care about security and want to > have the latest patches and regularly do apt-get update and upgrade. > But because I manage a few high traffic sites that use ruby I also > must have plan if one (or more) of the sites get exploited because of > a new found security issue in ruby (or anything else for that matter). > Perhaps there are no new versions out that address this issue but > after some searching I find the root of the problem and make a patch. > So I use that patch to compile a secure version of that once exploited > software. you have some good points here and I really agree with you on the security patch thing. In fact, that's why I initially started maintaining my own set of ruby/mongrel debian packages. The point is I do this on one machine that is *not* a production system, and then just do an apt-get upgrade on the live servers. Having Mongrel officially in debian is just one step further, and makes it way easier to get started with maintaining your own mongrel packages. Maybe that's only me, but I really prefer to do the whole patch-and- compile-part of the story only once. I take care for three and a half servers running Rails apps on Mongrel. That's not much but even then I have better things to do than e.g. to manually patch and install Ruby 4 times when the next cgi.rb security leak arises. Imho, that's DRY applied to systems administration :-) cheers, Jens -- webit! Gesellschaft f?r neue Medien mbH www.webit.de Dipl.-Wirtschaftsingenieur Jens Kr?mer kraemer at webit.de Schnorrstra?e 76 Tel +49 351 46766 0 D-01069 Dresden Fax +49 351 46766 66 From filipe at icewall.org Fri Jan 12 13:06:42 2007 From: filipe at icewall.org (Filipe) Date: Fri, 12 Jan 2007 16:06:42 -0200 (BRST) Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112174316.GC5755@cordoba.webit.de> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070111194938.GJ8972@replic.net> <6a7034b0701111534h22209faajb70773a254b49155@mail.gmail.com> <20070112100258.GJ7007@cordoba.webit.de> <6a7034b0701120809n5c12317amf1169182cea3dc02@mail.gmail.com> <20070112174316.GC5755@cordoba.webit.de> Message-ID: On Fri, 12 Jan 2007, Jens Kraemer wrote: > On Fri, Jan 12, 2007 at 09:09:33AM -0700, Kyle Kochis wrote: > > It's a known fact that a stable Debian lags somewhat behind the rest of > the world in terms of software versions, so if you pick it you have to > take that into account and be prepared to backport something if you want > to live on the edge *and* stay on the Debian way of managing your > software. I know, not everybody is in the position to pick *his* distro > every time, and yes, Debian can give people a hard time in the > beginning. So is backports. If you want to stay using the debian's stable version of an package, you just point your mirros to security and wait for developers to make security changes. But if you want touse new version, you can find a lot of things at debian backports. Mongrel package will not made it into etch - just for lenny. So we want to create backports of it to etch. > > For the issues mentioned in the Mail you link to - the real bug here is > with rubygems which doesn't fail if compiling a c extension fails, but > happily ignores the error. So people think Mongrel installed correctly > and blame Debian for it not working. If you saw the real error at gem > install time, everybody could guess he needs a compiler and ruby-dev to > compile things. hum..... apt-get install gcc ruby1.8-dev should solve it, no? > > [..] > >> One last point: Like any debian guy, I care about security and want to >> have the latest patches and regularly do apt-get update and upgrade. >> But because I manage a few high traffic sites that use ruby I also >> must have plan if one (or more) of the sites get exploited because of >> a new found security issue in ruby (or anything else for that matter). >> Perhaps there are no new versions out that address this issue but >> after some searching I find the root of the problem and make a patch. >> So I use that patch to compile a secure version of that once exploited >> software. > > you have some good points here and I really agree with you on the > security patch thing. > > In fact, that's why I initially started maintaining my own set of > ruby/mongrel debian packages. The point is I do this on one machine that > is *not* a production system, and then just do an apt-get upgrade on the > live servers. > > Having Mongrel officially in debian is just one step further, and makes > it way easier to get started with maintaining your own mongrel packages. After etch, there are a lot of things that ruby-extras team is planning to ruby in Debian. You can expect to see more packages and softwares and more compatibility. For example, one package that is being worked is ruby-full (or something like this), that installs... hum... full ruby :D So, we just ask some help for upstream developers, like create .tar.gz files, not only gems. > > Maybe that's only me, but I really prefer to do the whole patch-and- > compile-part of the story only once. I take care for three and a half > servers running Rails apps on Mongrel. That's not much but even then I > have better things to do than e.g. to manually patch and install Ruby 4 > times when the next cgi.rb security leak arises. > > Imho, that's DRY applied to systems administration :-) Me too! Do it once and let the rest of the world get it :D > filipe lautert filipe { AT } icewall.org Linux User #279798 Jabber lautert at jabber.ru From zedshaw at zedshaw.com Fri Jan 12 13:07:16 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Fri, 12 Jan 2007 10:07:16 -0800 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> Message-ID: <20070112100716.e7fa89b8.zedshaw@zedshaw.com> On Thu, 11 Jan 2007 08:01:59 -0200 (BRST) Filipe wrote: I finally have time to answer this... > So, we have some favors to ask from you (the mongrel developers), as > those favors are not big things: > > * Could you please upload tar.gz files together with your gems files? As an open source contributor, I know you feel like donating some time to make this happen. If you write the rake file task and patch that creates the tar.gz with the proper version number and puts it into pkg/ then I'll run that task for you and upload the file. That way you get control over how you like it packaged rather than me doing it 20 times until you say it's nice. Otherwise, I tag each release in svn. Maybe you cold convince the debian build system to use that. Should be easier as well since you don't have to troll a download page. > * In this tar, could the files be with the current date, not in year > 1969? :D tar complains a lot about this... I believe only rubygems does this because it uses a ruby version of tar. > * When release candidates are released, can you append something like > "~rc1" to the tar file? This help debian auto tools to check new > releases. There's also a problem with how Rake and/or rubygems likes its version numbers. It won't accept ~rc1 style endings for various design reasons. > * Finally, I got this great idea for Mongrel. All you have to do is > completely change the internal processing, add 200 more methods to the > HTTP parser, and... no. Just joking. Just the other 3 would be great! Ha! > The Debian ruby-extras team has a page[1] dedicated to upstream > developers, where those and other things that help *nix distributions > are described. I'll give you guys a slight clue though. Mongrel is packaged on lots of other operating systems. So far OSX, SuSE, FreeBSD, Win32, Fedora and probably more I don't know anything about. Not a single one of them asked me to change the project setup to accommodate their build systems. OSX asked me to change the license but that's it. If Debian has to ask people to change their projects, then maybe there's something wrong with Debian's build system. I know Debian folks can *never* admit there might be something wrong, but just consider it. There might just be some improvement you could make to be as capable as the other OS out there. Just a thought. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From zedshaw at zedshaw.com Fri Jan 12 13:11:05 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Fri, 12 Jan 2007 10:11:05 -0800 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> Message-ID: <20070112101105.64f46a26.zedshaw@zedshaw.com> On Thu, 11 Jan 2007 08:01:59 -0200 (BRST) Filipe wrote: > > Hello! > > My name is Filipe and I'm from the Debian ruby-extras team. Oh! One more condition I *have* to insist on. If you guys carve the damn package up into a billion other little packages and then shove the files around into a thousand locations then I'm gonna scream. At least if you do that, man up and update the Mongrel Debian documentation on the Mongrel site. I'll be really pissed if I'm supporting poor Debian users because you decided to rip my project to shreds. It's fine if you put stuff in new locations, but document it. Dammit document it. Feel free to contact me off list for help or questions. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From filipe at icewall.org Fri Jan 12 13:53:39 2007 From: filipe at icewall.org (Filipe) Date: Fri, 12 Jan 2007 16:53:39 -0200 (BRST) Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112100716.e7fa89b8.zedshaw@zedshaw.com> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On Fri, 12 Jan 2007, Zed A. Shaw wrote: > On Thu, 11 Jan 2007 08:01:59 -0200 (BRST) > Filipe wrote: > > I finally have time to answer this... > >> So, we have some favors to ask from you (the mongrel developers), as >> those favors are not big things: >> >> * Could you please upload tar.gz files together with your gems files? > > As an open source contributor, I know you feel like donating some time to make this happen. If you write the rake file task and patch that creates the tar.gz with the proper version number and puts it into pkg/ then I'll run that task for you and upload the file. That way you get control over how you like it packaged rather than me doing it 20 times until you say it's nice. Ok, I will. But it is a simple tar.gz with the same content of data.tar.gz from the gem. > > Otherwise, I tag each release in svn. Maybe you cold convince the debian build system to use that. Should be easier as well since you don't have to troll a download page. After etch I can raise this subject. Now, the core developers are going crazy :/ > >> * In this tar, could the files be with the current date, not in year >> 1969? :D tar complains a lot about this... > > I believe only rubygems does this because it uses a ruby version of tar. Strange. I'll go up with this and see why rubygems or ruby do this. Thanks for the path. > >> * When release candidates are released, can you append something like >> "~rc1" to the tar file? This help debian auto tools to check new >> releases. > > There's also a problem with how Rake and/or rubygems likes its version numbers. It won't accept ~rc1 style endings for various design reasons. Hum... then -rc1? :D Well, I take a look at this when generating the rake task. > >> * Finally, I got this great idea for Mongrel. All you have to do is >> completely change the internal processing, add 200 more methods to the >> HTTP parser, and... no. Just joking. Just the other 3 would be great! > > Ha! > >> The Debian ruby-extras team has a page[1] dedicated to upstream >> developers, where those and other things that help *nix distributions >> are described. > > I'll give you guys a slight clue though. Mongrel is packaged on lots of other operating systems. So far OSX, SuSE, FreeBSD, Win32, Fedora and probably more I don't know anything about. Not a single one of them asked me to change the project setup to accommodate their build systems. OSX asked me to change the license but that's it. > > If Debian has to ask people to change their projects, then maybe there's something wrong with Debian's build system. I know Debian folks can *never* admit there might be something wrong, but just consider it. There might just be some improvement you could make to be as capable as the other OS out there. Hey, I can make packages with the actual format of the files. But I need to admit it: creating packages from gems give me a lot of extra work. The reason is that in Debian we try not to touch the original source, like in [1]. We just download it, then apply patches (if needed) and compile it. But well, there can be other ways. We just need time (a lot of) and will (lots and lots of) to propose it and get it aproved. Debian is a lot bureaucratic. And maybe people from OSX, SuSE, FreeBSD, Win32, Fedora, Gentoo (they have some packages too) can benefit from the tar file too, don 't you think? I don't know how they build systems works, so I cannot speak for them. The big problem for debian ruby-extra team is that we are trying to bind diferrents worlds: one that is a lot conservative (debian) and one that is fast and exciting (ruby)! It gives a lot of trouble. But still being cool. > > Just a thought. > Thanks for listen and for the chance to write the task. filipe lautert filipe { AT } icewall.org Linux User #279798 Jabber lautert at jabber.ru 1. http://ftp.br.debian.org/debian/pool/main/libx/libxml-ruby/libxml-ruby_0.3.8.4.orig.tar.gz From filipe at icewall.org Fri Jan 12 14:06:38 2007 From: filipe at icewall.org (Filipe) Date: Fri, 12 Jan 2007 17:06:38 -0200 (BRST) Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112101105.64f46a26.zedshaw@zedshaw.com> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112101105.64f46a26.zedshaw@zedshaw.com> Message-ID: On Fri, 12 Jan 2007, Zed A. Shaw wrote: > On Thu, 11 Jan 2007 08:01:59 -0200 (BRST) > Filipe wrote: > >> >> Hello! >> >> My name is Filipe and I'm from the Debian ruby-extras team. > > Oh! One more condition I *have* to insist on. If you guys carve the damn package up into a billion other little packages and then shove the files around into a thousand locations then I'm gonna scream. At least if you do that, man up and update the Mongrel Debian documentation on the Mongrel site. Well.... at the moment, we just thought of two (2!!!!) packages: one called "mongrel" (ooooooohhh) and one called libgemsplugin-ruby . I think we don't need more packages, don't you? Your patch to cgi is already in debian ruby package, so we don't need to package it. And maybe in the future we can create new packages for fastthread, mongrel_cluster, mongrel_service, etc. Those should by different packages because they are already distinct gems. And I can update the page about mongrel in debian. I'll do it when we finish our work. > > I'll be really pissed if I'm supporting poor Debian users because you decided to rip my project to shreds. > > It's fine if you put stuff in new locations, but document it. Dammit document it. We are documenting it, take it easy :D I already start to write the man page for mongrel_rails. And when the packages are ready, any problems with then can be redirect to our mailling-list (debian-ruby at lists.debian.org). > > Feel free to contact me off list for help or questions. Thanks! Good weekend! filipe lautert filipe { AT } icewall.org Linux User #279798 Jabber lautert at jabber.ru From jw at innerewut.de Fri Jan 12 15:32:38 2007 From: jw at innerewut.de (Jonathan Weiss) Date: Fri, 12 Jan 2007 21:32:38 +0100 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: <45A7F066.40201@innerewut.de> > And maybe people from OSX, SuSE, FreeBSD, Win32, Fedora, Gentoo (they have > some packages too) can benefit from the tar file too, don 't you think? > I don't know how they build systems works, so I cannot speak for them. On FreeBSD I just grab the gem and install it for the user. On deinstall the system does a gem uninstall. This way bringing in new gem to the FreeBSD ports tree is quite easy in contracst to grab a tar and do a manual install through the package system. > > filipe lautert > Regards, Jonathan -- Jonathan Weiss http://blog.innerewut.de From jbaty at fusionary.com Fri Jan 12 16:14:06 2007 From: jbaty at fusionary.com (Jack Baty) Date: Fri, 12 Jan 2007 16:14:06 -0500 Subject: [Mongrel] Content-Length: 0 Message-ID: <2A51C9C7-AF8D-43C2-A1B2-126993C5CA15@fusionary.com> While trying to debug a goofy XML loading issue in IE, I've found that Mongrel (latest) returns Content-Type: 0 with every request on a particular (CentOS 4) server, yet not on my local (OS X) box. These both access identical Rails apps. This seems like a clue, but thought I'd ask here if for some reason this is expected behavior. Both running Ruby 1.8.4. Both return identical HTML when asked. Thanks. Local machine... $ curl -I http://macbookpro:3000/ HTTP/1.1 200 OK Connection: close Date: Fri, 12 Jan 2007 21:00:46 GMT Set-Cookie: _session_id=2b9dd56af3a66538082088ad31ee085a; path=/ Status: 200 OK Cache-Control: no-cache Server: Mongrel 1.0 Content-Type: text/html; charset=utf-8 Content-Length: 4160 Server... $ curl -I 127.0.0.1:8260 HTTP/1.1 200 OK Connection: close Date: Fri, 12 Jan 2007 20:52:08 GMT Set-Cookie: _session_id=5afad9b6ad80750c5c47f0eb08af318c; path=/ Status: 200 OK Cache-Control: no-cache Server: Mongrel 1.0 Content-Type: text/html; charset=utf-8 Content-Length: 0 -- ------------------------------------------------------------------------ -------- Jack Baty http://jackbaty.com/ (616) 822-5800 Fusionary http://fusionary.com/ (616) 454-2357 820 Monroe N.W. Suite 212 Grand Rapids, MI 49503 From _ at whats-your.name Fri Jan 12 16:39:27 2007 From: _ at whats-your.name (carmen) Date: Fri, 12 Jan 2007 16:39:27 -0500 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: <20070112213927.GC8585@replic.net> > Gentoo (they have > some packages too) can benefit from the tar file too, don 't you think? > I don't know how they build systems works, so I cannot speak for them. the ebuild is almost totally empty, besides this line: inherit ruby gems im thinking they could proably factor this line into the eclass, since presumably rubyforge has a naming convention: SRC_URI="http://mongrel.rubyforge.org/releases/gems/${P}.gem" you might wnat to look into something similar. i like to think of the package manager as a wrapper, not an un-networked custom unwrapper/rewrapper and hope everything ends up back in the same box (and usually with competing version numbers and optional modules it doesnt) From _ at whats-your.name Fri Jan 12 16:54:33 2007 From: _ at whats-your.name (carmen) Date: Fri, 12 Jan 2007 16:54:33 -0500 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112213927.GC8585@replic.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> <20070112213927.GC8585@replic.net> Message-ID: <20070112215433.GE8585@replic.net> > you might wnat to look into something similar. i like to think of the package manager as a wrapper, not an un-networked custom unwrapper/rewrapper and hope everything ends up back in the same box (and usually with competing version numbers and optional modules it doesnt) the other important reason for hooking into gems, besides maintainer sanity, is to allow the user to mix and match between installation methods. what happens when the user installed mongrel bypassing gems, then installs camping? im pretty sure it installs mongrel again, and then when they get a bug they dont even know which version is being used.. From _ at whats-your.name Fri Jan 12 16:43:33 2007 From: _ at whats-your.name (carmen) Date: Fri, 12 Jan 2007 16:43:33 -0500 Subject: [Mongrel] Content-Length: 0 In-Reply-To: <2A51C9C7-AF8D-43C2-A1B2-126993C5CA15@fusionary.com> References: <2A51C9C7-AF8D-43C2-A1B2-126993C5CA15@fusionary.com> Message-ID: <20070112214333.GD8585@replic.net> On Fri Jan 12, 2007 at 04:14:06PM -0500, Jack Baty wrote: > While trying to debug a goofy XML loading issue in IE, I've found > that Mongrel (latest) returns Content-Type: 0 with every request on a > particular (CentOS 4) server, yet not on my local (OS X) box. These > both access identical Rails apps. This seems like a clue, but thought > I'd ask here if for some reason this is expected behavior. Both > running Ruby 1.8.4. Both return identical HTML when asked. odd. you can't totally trust curl though. are yo using curl on the same machine in both examples? it often returns the wrong Content-Type (eg completely at odds with what firefox and ngrep show) ive noticed my Camping Problem!s are padded with (65535 - errorlength) nothingness, which makes the error really hard to find in ngrep.. > > Thanks. > > > Local machine... > > $ curl -I http://macbookpro:3000/ > HTTP/1.1 200 OK > Connection: close > Date: Fri, 12 Jan 2007 21:00:46 GMT > Set-Cookie: _session_id=2b9dd56af3a66538082088ad31ee085a; path=/ > Status: 200 OK > Cache-Control: no-cache > Server: Mongrel 1.0 > Content-Type: text/html; charset=utf-8 > Content-Length: 4160 > > > Server... > > $ curl -I 127.0.0.1:8260 > HTTP/1.1 200 OK > Connection: close > Date: Fri, 12 Jan 2007 20:52:08 GMT > Set-Cookie: _session_id=5afad9b6ad80750c5c47f0eb08af318c; path=/ > Status: 200 OK > Cache-Control: no-cache > Server: Mongrel 1.0 > Content-Type: text/html; charset=utf-8 > Content-Length: 0 > > > > > -- > ------------------------------------------------------------------------ > -------- > Jack Baty http://jackbaty.com/ (616) 822-5800 > Fusionary http://fusionary.com/ (616) 454-2357 > 820 Monroe N.W. Suite 212 > Grand Rapids, MI 49503 > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From jbaty at fusionary.com Fri Jan 12 17:02:47 2007 From: jbaty at fusionary.com (Jack Baty) Date: Fri, 12 Jan 2007 17:02:47 -0500 Subject: [Mongrel] Content-Length: 0 In-Reply-To: <20070112214333.GD8585@replic.net> References: <2A51C9C7-AF8D-43C2-A1B2-126993C5CA15@fusionary.com> <20070112214333.GD8585@replic.net> Message-ID: On Jan 12, 2007, at 4:43 PM, carmen wrote: > On Fri Jan 12, 2007 at 04:14:06PM -0500, Jack Baty wrote: >> While trying to debug a goofy XML loading issue in IE, I've found >> that Mongrel (latest) returns Content-Type: 0 with every request on a >> particular (CentOS 4) server, yet not on my local (OS X) box. These >> both access identical Rails apps. This seems like a clue, but thought >> I'd ask here if for some reason this is expected behavior. Both >> running Ruby 1.8.4. Both return identical HTML when asked. > > odd. you can't totally trust curl though. are yo using curl on the > same machine in both examples? it often returns the wrong Content- > Type (eg completely at odds with what firefox and ngrep show) I'm using 2 different copies of curl, since I can only access mongrel from a local address on the server. And of course I meant "Content- Length" not "Content-Type", sorry. -- ------------------------------------------------------------------------ -------- Jack Baty http://jackbaty.com/ (616) 822-5800 Fusionary http://fusionary.com/ (616) 454-2357 820 Monroe N.W. Suite 212 Grand Rapids, MI 49503 From _ at whats-your.name Fri Jan 12 17:07:08 2007 From: _ at whats-your.name (carmen) Date: Fri, 12 Jan 2007 17:07:08 -0500 Subject: [Mongrel] The Gentoo/FreeBSD Plan - reloaded In-Reply-To: <20070112215433.GE8585@replic.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> <20070112213927.GC8585@replic.net> <20070112215433.GE8585@replic.net> Message-ID: <20070112220708.GF8585@replic.net> > the other important reason for hooking into gems, besides maintainer sanity, is to allow the user to mix and match between installation methods. what happens when the user installed mongrel bypassing gems, then installs camping? im pretty sure it installs mongrel again, and then when they get a bug they dont even know which version is being used.. the Gentoo method isnt perfect - it fails in the inverse scenario where youve installed everything via gems, then want to install something through portage that depends on installed gems (stuff gets reinstalled). the other problem is its tied to hardcoded version numbers in the ebuild filenames. theres no way for it to discover that newer versions of the gems exist. does freeBSD solve either of these problems? From jason at indelicate.net Fri Jan 12 18:11:07 2007 From: jason at indelicate.net (Jason LaRiviere) Date: Fri, 12 Jan 2007 17:11:07 -0600 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112100716.e7fa89b8.zedshaw@zedshaw.com> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: <20070112231106.GE13348@indelicate.net> Zed A. Shaw wrote: > > I'll give you guys a slight clue though. Mongrel is packaged on lots > of other operating systems. So far OSX, SuSE, FreeBSD, Win32, Fedora > and probably more I don't know anything about. Not a single one of them > asked me to change the project setup to accommodate their build systems. > OSX asked me to change the license but that's it. > > If Debian has to ask people to change their projects, then maybe there's > something wrong with Debian's build system. I know Debian folks can > *never* admit there might be something wrong, but just consider it. > There might just be some improvement you could make to be as capable as > the other OS out there. > > Just a thought. Agreed. I'm the maintainer for the (unmentioned) OpenBSD port as well, and this struck me as a little ridiculous straight away. From thewoolleyman at gmail.com Sat Jan 13 06:25:40 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Sat, 13 Jan 2007 04:25:40 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On 1/12/07, Filipe wrote: > On Fri, 12 Jan 2007, Zed A. Shaw wrote: > >> * When release candidates are released, can you append something like > >> "~rc1" to the tar file? This help debian auto tools to check new > >> releases. > > > > There's also a problem with how Rake and/or rubygems likes its version numbers. It won't accept ~rc1 style endings for various design reasons. > > Hum... then -rc1? :D Well, I take a look at this when generating the rake > task. I *THINK* this is not the rubygems standard. See this: http://rubygems.org/read/chapter/16 I also *THINK* these constraints are due to the way RubyGems allows specification of variable gem version, for example, "> 0.1.0" or "= "1.0.1". If they allowed people to put random character strings in version numbers that logic couldn't work. That brings up a couple of questions that I'd like to know the answers to: 1. Why does debian or apt need to distinguish between release candidates? Is this automatically tied to -dev packages or something? 2. How are rubygems supposed to indicate release candidates, or beta or whatever you call something that is pre-release? -- Chad From filipe at icewall.org Mon Jan 15 08:05:55 2007 From: filipe at icewall.org (Filipe) Date: Mon, 15 Jan 2007 11:05:55 -0200 (BRST) Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On Sat, 13 Jan 2007, Chad Woolley wrote: > On 1/12/07, Filipe wrote: >> On Fri, 12 Jan 2007, Zed A. Shaw wrote: >>>> * When release candidates are released, can you append something like >>>> "~rc1" to the tar file? This help debian auto tools to check new >>>> releases. >>> >>> There's also a problem with how Rake and/or rubygems likes its version numbers. It won't accept ~rc1 style endings for various design reasons. >> >> Hum... then -rc1? :D Well, I take a look at this when generating the rake >> task. > > I *THINK* this is not the rubygems standard. See this: > > http://rubygems.org/read/chapter/16 > > I also *THINK* these constraints are due to the way RubyGems allows > specification of variable gem version, for example, "> 0.1.0" or "= > "1.0.1". If they allowed people to put random character strings in > version numbers that logic couldn't work. Well.... but rubygems doesn't defines the way to versioning release candidates. Actual release candidate 1 is called mongrel-1.0.gem. So, how will be called release candidate 2? mongrel-1.0.1.gem? Or it will have the same name? > > That brings up a couple of questions that I'd like to know the answers to: > > 1. Why does debian or apt need to distinguish between release > candidates? Is this automatically tied to -dev packages or something? No, it's just because we've a file called watch, with this content: http://mongrel.rubyforge.org/releases/gems/mongrel-([0-9\.]*)\.gem And a tool that checks the site and remind me that there is a new version. Ow, and the package version in debian always has the same version than upstream. So I thought it is someway stranger to have a release candidate package called "1.0". > 2. How are rubygems supposed to indicate release candidates, or beta > or whatever you call something that is pre-release? Don't know. Rubygems policy doesn't say anything about this. At least points 5 and 6... it just says that "Any public release of a gem should have a different version. Normally that means incrementing the build number.". filipe lautert filipe { AT } icewall.org Linux User #279798 Jabber lautert at jabber.ru From filipe at icewall.org Mon Jan 15 08:29:39 2007 From: filipe at icewall.org (Filipe) Date: Mon, 15 Jan 2007 11:29:39 -0200 (BRST) Subject: [Mongrel] The Gentoo/FreeBSD Plan - reloaded In-Reply-To: <20070112220708.GF8585@replic.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> <20070112213927.GC8585@replic.net> <20070112215433.GE8585@replic.net> <20070112220708.GF8585@replic.net> Message-ID: On Fri, 12 Jan 2007, carmen wrote: >>>the ebuild is almost totally empty, besides this line: >>> >>>.inherit ruby gems >>> >>>im thinking they could proably factor this line into the eclass, since presumably rubyforge has a naming convention: >>>SRC_URI="http://mongrel.rubyforge.org/releases/gems/${P}.gem" yes, it has. Mongrel is a litle diferent from other projects, but still it has a naming convention. >>> >>>you might wnat to look into something similar. i like to think of the package manager as a wrapper, not an un-networked custom unwrapper/rewrapper and >>>hope everything ends up back in the same box (and usually with competing version numbers and optional modules it doesnt) >>> >>> >> the other important reason for hooking into gems, besides maintainer sanity, is to allow the user to mix and match between installation methods. what happens when the user installed mongrel bypassing gems, then installs camping? im pretty sure it installs mongrel again, and then when they get a bug they dont even know which version is being used.. Yes, it reinstalls. But the way I think is this: if I'm a user and want to get along with debian version of mongrel, that's fine. But if I don't like it (and I hate debian's packages), I can install everything from rubygems and be happy too. But now, mix the two methods really means trouble for me. > > the Gentoo method isnt perfect - it fails in the inverse scenario where youve installed everything via gems, then want to install something through portage that depends on installed gems (stuff gets reinstalled). the other problem is its tied to hardcoded version numbers in the ebuild filenames. theres no way for it to discover that newer versions of the gems exist. does freeBSD solve either of these problems? Well... my watch file again: http://mongrel.rubyforge.org/releases/gems/mongrel-([0-9\.]*)\.gem Maybe it helps. filipe lautert filipe { AT } icewall.org Linux User #279798 Jabber lautert at jabber.ru From thewoolleyman at gmail.com Mon Jan 15 11:45:59 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Mon, 15 Jan 2007 09:45:59 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On 1/15/07, Filipe wrote: > On Sat, 13 Jan 2007, Chad Woolley wrote: > > >> Hum... then -rc1? :D Well, I take a look at this when generating the rake > >> task. > > > > I *THINK* this is not the rubygems standard. See this: > > > > http://rubygems.org/read/chapter/16 ... > > 1. Why does debian or apt need to distinguish between release > > candidates? Is this automatically tied to -dev packages or something? > > No, it's just because we've a file called watch, with this content: > > http://mongrel.rubyforge.org/releases/gems/mongrel-([0-9\.]*)\.gem > > And a tool that checks the site and remind me that there is a new > version. > > Ow, and the package version in debian always has the same version than > upstream. So I thought it is someway stranger to have a release > candidate package called "1.0". I do agree this is rather strange, but it's not unheard of. In any case, I don't think it's appropriate for a packaging system to try to enforce constraints on the versioning standards of the the software it packages. See this for all the various flavors of versioning standards: http://en.wikipedia.org/wiki/Version#Software_versioning_schemes Some of these allow identification of pre-release or beta versions while still conforming to the RubyGems standard. For example, the Linux versioning approach (odd numbers for development releases, even for stable) would be compatible: http://en.wikipedia.org/wiki/Version#Odd-numbered_versions_for_development_releases HOWEVER, the linux approach WOULD cause problems when you consider that RubyGems own version specification approach is primitive - you can only say things like "> x.y" or "<= x.y" I'll point this thread out to the RubyGems list, I'm curious what they would have to say. At a minimum, I think the RubyGems versioning standard docs could use some clarification. -- Chad From wyhaines at gmail.com Mon Jan 15 12:05:07 2007 From: wyhaines at gmail.com (Kirk Haines) Date: Mon, 15 Jan 2007 10:05:07 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On 1/15/07, Chad Woolley wrote: > > I'll point this thread out to the RubyGems list, I'm curious what they > would have to say. At a minimum, I think the RubyGems versioning > standard docs could use some clarification. I imagine that what is said will reduce down to something like this: "Provide a patch that retains the ability to selectively require certain versions or version ranges, yet provides the version specification freedom that you think should exist, and we'll consider it." Kirk Haines From thewoolleyman at gmail.com Mon Jan 15 15:15:33 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Mon, 15 Jan 2007 13:15:33 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On 1/15/07, Kirk Haines wrote: > On 1/15/07, Chad Woolley wrote: > > > > > I'll point this thread out to the RubyGems list, I'm curious what they > > would have to say. At a minimum, I think the RubyGems versioning > > standard docs could use some clarification. > > I imagine that what is said will reduce down to something like this: > "Provide a patch that retains the ability to selectively require > certain versions or version ranges, yet provides the version > specification freedom that you think should exist, and we'll consider > it." You are probably right. However, the RubyGems "Rational Versioning Policy" ( http://rubygems.org/read/chapter/7 ) doesn't seem to account for the beta/release candidate phase of the development cycle for a post-1.0 release. It looks like the best you can do is to assume that any x.0.0 release is a release candidate, and should be treated as such. However, there's still no standard way for a gem developer to indicate that a given post-x.0.0 version is now REALLY finished, and should be safe for widespread use. -- Chad From wyhaines at gmail.com Mon Jan 15 15:39:31 2007 From: wyhaines at gmail.com (Kirk Haines) Date: Mon, 15 Jan 2007 13:39:31 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On 1/15/07, Chad Woolley wrote: > You are probably right. However, the RubyGems "Rational Versioning > Policy" ( http://rubygems.org/read/chapter/7 ) doesn't seem to account > for the beta/release candidate phase of the development cycle for a > post-1.0 release. It looks like the best you can do is to assume that > any x.0.0 release is a release candidate, and should be treated as > such. However, there's still no standard way for a gem developer to > indicate that a given post-x.0.0 version is now REALLY finished, and > should be safe for widespread use. Nope, and I doubt that there ever will be. Everybody does versioning differently, so all a person can ever really do is look at the project information and then judge the version number in the context of the other project information. And given that, the gems versioning support is a compromise position that provides some flexibility in choosing how to assign version numbers while still providing a useful capability to select specific versions or ranges of versions. I'd welcome even more capability in that regard, personally, but it's hardly a show stopper. After all, is a version like 1.0-rc9 really any more informative than 0.3.13.4? Kirk Haines From thewoolleyman at gmail.com Mon Jan 15 20:42:47 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Mon, 15 Jan 2007 18:42:47 -0700 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: On 1/15/07, Kirk Haines wrote: > On 1/15/07, Chad Woolley wrote: > > > You are probably right. However, the RubyGems "Rational Versioning > > Policy" ( http://rubygems.org/read/chapter/7 ) doesn't seem to account > > for the beta/release candidate phase of the development cycle for a > > post-1.0 release. It looks like the best you can do is to assume that > > any x.0.0 release is a release candidate, and should be treated as > > such. However, there's still no standard way for a gem developer to > > indicate that a given post-x.0.0 version is now REALLY finished, and > > should be safe for widespread use. > > Nope, and I doubt that there ever will be. Everybody does versioning > differently, so all a person can ever really do is look at the project > information and then judge the version number in the context of the > other project information. Here's the answer I got on the RubyGems developer list: http://rubyforge.org/pipermail/rubygems-developers/2007-January/002443.html "The typical workaround is to not post release-candidate gems to Rubyforge, and instead host them on a separate gem server." A reasonable answer, especially since it's so easy to set up a local gem server, and point to that on your RubyForge project page (or even host the gem files directly on your RubyForge account). -- Chad From ripta.pasay at lunarpages.com Wed Jan 17 02:26:58 2007 From: ripta.pasay at lunarpages.com (ripta.pasay at lunarpages.com) Date: Tue, 16 Jan 2007 23:26:58 -0800 (PST) Subject: [Mongrel] mongrel cluster (+ Apache 2.2.4 + proxy balancer) not redirecting correctly Message-ID: <37715.127.0.0.1.1169018818.squirrel@lunarpages.com> I'm in the process of setting up a mongrel cluster at the moment, and I'm running into a bit of an issue. Even worse is that I'm not sure whether this is a mongrel thing, or an Apache thing. While I'm inclined to think that this might be a balancer thing, I decided there was a higher chance hearing back from mongrel-users than from apache-users, so I'd try this list first. So, I'm using mongrel 0.3.13.4 with cluster 0.2.1 running rails 1.1.6 on ruby 1.8.5, and the following Apache (v2.2.4) configuration for the virtual host (domain and usernames changed): ServerName server.domain.com:443 ServerAdmin me at domain.com DocumentRoot /home/desq/deployment/current #RequestHeader set X_FORWARDED_PROTO 'https' Options FollowSymLinks AllowOverride None Order allow,deny Allow from all BalancerMember http://127.0.0.1:3000 BalancerMember http://127.0.0.1:3001 RewriteEngine On RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f RewriteCond %{SCRIPT_FILENAME} !maintenance.html RewriteRule ^/$ /index.html [QSA] RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} [P,QSA,L] CustomLog logs/desq-access.log common ErrorLog logs/desq-error.log SSLEngine on SSLCertificateFile /home/user/ssl.crt SSLCertificateKeyFile /home/user/ssl.key ServerName server.domain.com Redirect permanent / https://server.domain.com Also, the cluster YML file: --- port: 3000 pid_file: log/mongrel.pid servers: 2 address: 127.0.0.1 cwd: /home/user/deployment/current user: user group: user environment: production Now (almost) everything works perfectly. Sessions are great, requests are passed on, spread between the instances of mongrel. Sadly, HTTP redirects are not correctly passed somewhere. If I were to connect to the mongrel instances on port 3000 or 3001 directly, the HTTP redirects are correctly processed. With the balancer, it's not. For example, if going to https://server.domain.com:3000/admin/home redirects to https://server.domain.com:3000/users/login (works without balancer), then going to https://server.domain.com/admin/home redirects to https://server.domain.comusers/login (missing the "/" between the host name and the request URI, thus not working with balancer). I would appreciate any comments or suggestions on how to further hunt this issue down. Cheers, -RP From francois.beausoleil at gmail.com Wed Jan 17 09:37:53 2007 From: francois.beausoleil at gmail.com (Francois Beausoleil) Date: Wed, 17 Jan 2007 09:37:53 -0500 Subject: [Mongrel] mongrel cluster (+ Apache 2.2.4 + proxy balancer) not redirecting correctly In-Reply-To: <37715.127.0.0.1.1169018818.squirrel@lunarpages.com> References: <37715.127.0.0.1.1169018818.squirrel@lunarpages.com> Message-ID: <41d5fadf0701170637u4ee7017alcb233839ee5bd6e5@mail.gmail.com> Hi ! 2007/1/17, ripta.pasay at lunarpages.com : > > > BalancerMember http://127.0.0.1:3000 > BalancerMember http://127.0.0.1:3001 > I also have these directives in my Apache config file. Try them on: ProxyPass /images ! ProxyPass /stylesheets ! ProxyPass /javascripts ! ProxyPass / balancer://weputuplights/ ProxyPassReverse / balancer://weputuplights/ > I am inclined to say that your problem is related to ProxyPassReverse. See http://httpd.apache.org/docs/2.2/en/mod/mod_proxy.html#proxypassreverse Hope that helps ! -- Fran?ois Beausoleil http://blog.teksol.info/ http://piston.rubyforge.org/ From singhi.surendra at gmail.com Wed Jan 17 10:08:36 2007 From: singhi.surendra at gmail.com (Surendra Singhi) Date: Wed, 17 Jan 2007 20:38:36 +0530 Subject: [Mongrel] mongrel cluster (+ Apache 2.2.4 + proxy balancer) not redirecting correctly In-Reply-To: <37715.127.0.0.1.1169018818.squirrel@lunarpages.com> References: <37715.127.0.0.1.1169018818.squirrel@lunarpages.com> Message-ID: Hi, On 1/17/07, ripta.pasay at lunarpages.com wrote: > > > ServerAdmin me at domain.com > DocumentRoot /home/desq/deployment/current > #RequestHeader set X_FORWARDED_PROTO 'https' > > > Options FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > > > > BalancerMember http://127.0.0.1:3000 > BalancerMember http://127.0.0.1:3001 > RewriteEngine On > > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > > RewriteRule ^/$ /index.html [QSA] > > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} > [P,QSA,L] > > CustomLog logs/desq-access.log common > ErrorLog logs/desq-error.log > > SSLEngine on > SSLCertificateFile /home/user/ssl.crt > SSLCertificateKeyFile /home/user/ssl.key > > > > ServerName server.domain.com > Redirect permanent / https://server.domain.com > I have heard missing backslashes can cause many problems, try adding it '/', i.e., https://server.domain.com/ Also, it will help to add it to the end of directories. DocumentRoot /home/desq/deployment/current/ HTH. -- Surendra Singhi http://ssinghi.kreeti.com, http://www.kreeti.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070117/7d323ee0/attachment.html From singhi.surendra at gmail.com Wed Jan 17 13:11:57 2007 From: singhi.surendra at gmail.com (Surendra Singhi) Date: Wed, 17 Jan 2007 23:41:57 +0530 Subject: [Mongrel] mongrel memory usage ballooning and process stomping Message-ID: Hi, I have mongrel 0.3.14, with ruby 1.8.5, rails 1.1.6 and mongrel cluster 0.2.1, on debian sage 3.1 with apache 2.0, and fastthread 0.6.1. I am load balancing 3 mongrel processes using the random port trick. When I start mongrel the processes have about 60MB, but after some hour of usage the memory ballons upto more than 180MB and the site becomes terribly slow. Forcing me to restart mongrel cluster. Also, it reports me 9 mongrel processes instead of three. I am not able to understand why that's happening. Are really 9 mongrel processes started instead of three? Please help. Thanks. ssinghi at galle1:~$ ps aux|grep mongrel ssinghi 18252 6.6 20.2 198464 183200 ? S 05:47 17:09 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P log/mongrel.8002.pid -c /home/ssinghi/test.com/current ssinghi 18257 0.0 20.2 198464 183200 ? S 05:47 0:00 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P log/mongrel.8002.pid -c /home/ssinghi/test.com/current ssinghi 18258 0.0 20.2 198464 183200 ? S 05:47 0:00 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P log/mongrel.8002.pid -c /home/ssinghi/test.com/current ssinghi 18276 6.6 20.3 199324 184576 ? S 05:47 17:07 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P log/mongrel.8000.pid -c /home/ssinghi/test.com/current ssinghi 18279 6.4 20.4 200772 185528 ? S 05:47 16:37 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P log/mongrel.8001.pid -c /home/ssinghi/test.com/current ssinghi 18283 0.0 20.3 199324 184576 ? S 05:47 0:00 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P log/mongrel.8000.pid -c /home/ssinghi/test.com/current ssinghi 18284 0.0 20.3 199324 184576 ? S 05:47 0:00 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P log/mongrel.8000.pid -c /home/ssinghi/test.com/current ssinghi 18285 0.0 20.4 200772 185528 ? S 05:47 0:00 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P log/mongrel.8001.pid -c /home/ssinghi/test.com/current ssinghi 18286 0.0 20.4 200772 185528 ? S 05:47 0:00 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P log/mongrel.8001.pid -c /home/ssinghi/test.com/current ssinghi 19556 0.0 0.0 1820 572 pts/0 R+ 10:06 0:00 grep mongrel My mongrel_cluster.yml file has cwd: /home/ssinghi/test.com/current port: "8000" environment: production address: 127.0.0.1 pid_file: log/mongrel.pid servers: 3 -- Surendra Singhi http://ssinghi.kreeti.com, http://www.kreeti.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070117/013a243a/attachment-0001.html From michael.biven at gmail.com Wed Jan 17 13:36:24 2007 From: michael.biven at gmail.com (Michael Biven) Date: Wed, 17 Jan 2007 13:36:24 -0500 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: Message-ID: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> How are the mongrel started (cron, launchd, etc)? I had something similar happen to me, but I think it was from the cluster being started by root instead of the user I wanted to start it. It gave me an extra set of mongrel processes running that mongrel_rails cluster::stop wouldn't stop. Michael B. On 1/17/07, Surendra Singhi wrote: > Hi, > I have mongrel 0.3.14, with ruby 1.8.5, rails 1.1.6 and mongrel cluster > 0.2.1, on debian sage 3.1 with apache 2.0, and fastthread 0.6.1. > I am load balancing 3 mongrel processes using the random port trick. > > When I start mongrel the processes have about 60MB, but after some hour of > usage the memory ballons upto more than 180MB and the site becomes terribly > slow. Forcing me to restart mongrel cluster. > > Also, it reports me 9 mongrel processes instead of three. I am not able to > understand why that's happening. Are really 9 mongrel processes started > instead of three? > > Please help. Thanks. -- Michael Biven michael.biven at gmail.com http://biven.org From ezmobius at gmail.com Wed Jan 17 14:34:03 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Wed, 17 Jan 2007 11:34:03 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: Some linux distros have weird reporting of processes. I have seen it where top or ps will report 3 mongrels for each one that is really running. And looking at your output you can see that each set of three mongrels reported have the same port number. This means that you really only have 3 mongrels running because only one can be running per port at a time. As far as the memory usage goes, that sounds like a classic memory leak in your rails app. I have seen mongrel balloon like that when people add an extra :include directive to a find that ends up loading a ton of extra records into memory. If you are loading more then a few hundred ActiveRecords into memory on any one page then that will surely cause memory to ballon like this. A little more info about your app and what it does woudl help debug. Are you using Rmagcik? Are you useing send_file or send_data to stream out large content? Cheers- -Ezra On Jan 17, 2007, at 10:36 AM, Michael Biven wrote: > How are the mongrel started (cron, launchd, etc)? I had something > similar happen to me, but I think it was from the cluster being > started by root instead of the user I wanted to start it. It gave me > an extra set of mongrel processes running that mongrel_rails > cluster::stop wouldn't stop. > > Michael B. > > On 1/17/07, Surendra Singhi wrote: >> Hi, >> I have mongrel 0.3.14, with ruby 1.8.5, rails 1.1.6 and mongrel >> cluster >> 0.2.1, on debian sage 3.1 with apache 2.0, and fastthread 0.6.1. >> I am load balancing 3 mongrel processes using the random port trick. >> >> When I start mongrel the processes have about 60MB, but after >> some hour of >> usage the memory ballons upto more than 180MB and the site becomes >> terribly >> slow. Forcing me to restart mongrel cluster. >> >> Also, it reports me 9 mongrel processes instead of three. I am not >> able to >> understand why that's happening. Are really 9 mongrel processes >> started >> instead of three? >> >> Please help. Thanks. > > -- > Michael Biven > michael.biven at gmail.com > http://biven.org > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From jgeiger at gmail.com Wed Jan 17 14:42:46 2007 From: jgeiger at gmail.com (Joey Geiger) Date: Wed, 17 Jan 2007 13:42:46 -0600 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: <466af3440701171142v52a66e5clc15562893caf6fa7@mail.gmail.com> Is there anything you can do to force garbage collection in a case like this? (loading in a few hundred records, or using send_file, send_data?) I already went through my application and removed RMagick (now using mini-magick) but I'm still having monit restart a mongrel instance every day (running 12, get maybe 2-4 restarts a day, even at odd times like 2am, when there's little use on the site) Any help apprecaited. Thanks. > As far as the memory usage goes, that sounds like a classic memory > leak in your rails app. I have seen mongrel balloon like that when > people add an extra :include directive to a find that ends up loading > a ton of extra records into memory. If you are loading more then a > few hundred ActiveRecords into memory on any one page then that will > surely cause memory to ballon like this. > > A little more info about your app and what it does woudl help debug. > Are you using Rmagcik? Are you useing send_file or send_data to > stream out large content? From jbaty at fusionary.com Wed Jan 17 15:08:52 2007 From: jbaty at fusionary.com (Jack Baty) Date: Wed, 17 Jan 2007 15:08:52 -0500 Subject: [Mongrel] Content-Length: 0 In-Reply-To: References: <2A51C9C7-AF8D-43C2-A1B2-126993C5CA15@fusionary.com> <20070112214333.GD8585@replic.net> Message-ID: <829057A5-08CF-42B4-81A5-9992007CA41B@fusionary.com> >> On Fri Jan 12, 2007 at 04:14:06PM -0500, Jack Baty wrote: >>> While trying to debug a goofy XML loading issue in IE, I've found >>> that Mongrel (latest) returns Content-Type: 0 with every request >>> on a >>> particular (CentOS 4) server, yet not on my local (OS X) box. These >>> both access identical Rails apps. This seems like a clue, but >>> thought >>> I'd ask here if for some reason this is expected behavior. Both >>> running Ruby 1.8.4. Both return identical HTML when asked. For the record, I solved the problem by disabling compression (via Apache's mod_deflate) for XML. Not sure the Content-Length had anything to do with it. Rails-generated XML would fail, but identical static XML files worked fine. I still don't get it, but fixed is fixed and that's alright by me. -- ------------------------------------------------------------------------ -------- Jack Baty http://jackbaty.com/ (616) 822-5800 Fusionary http://fusionary.com/ (616) 454-2357 820 Monroe N.W. Suite 212 Grand Rapids, MI 49503 From mwhitt89 at gmail.com Wed Jan 17 16:45:50 2007 From: mwhitt89 at gmail.com (Matthew Whittaker) Date: Wed, 17 Jan 2007 16:45:50 -0500 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: I am seeing this same problem on my debian production server. top shows the correct number of processes, but each mongrel instance and ruby running backgroundrb all are ballooning to 15% memory consumption within a day or two. The application is http:// myfreecopyright.com It may be in the code, but how do I troubleshoot this? Cheers -Matt On Jan 17, 2007, at 2:34 PM, Ezra Zygmuntowicz wrote: > > Some linux distros have weird reporting of processes. I have seen it > where top or ps will report 3 mongrels for each one that is really > running. And looking at your output you can see that each set of > three mongrels reported have the same port number. This means that > you really only have 3 mongrels running because only one can be > running per port at a time. > > As far as the memory usage goes, that sounds like a classic memory > leak in your rails app. I have seen mongrel balloon like that when > people add an extra :include directive to a find that ends up loading > a ton of extra records into memory. If you are loading more then a > few hundred ActiveRecords into memory on any one page then that will > surely cause memory to ballon like this. > > A little more info about your app and what it does woudl help debug. > Are you using Rmagcik? Are you useing send_file or send_data to > stream out large content? > > > Cheers- > -Ezra > > > > On Jan 17, 2007, at 10:36 AM, Michael Biven wrote: > >> How are the mongrel started (cron, launchd, etc)? I had something >> similar happen to me, but I think it was from the cluster being >> started by root instead of the user I wanted to start it. It gave me >> an extra set of mongrel processes running that mongrel_rails >> cluster::stop wouldn't stop. >> >> Michael B. >> >> On 1/17/07, Surendra Singhi wrote: >>> Hi, >>> I have mongrel 0.3.14, with ruby 1.8.5, rails 1.1.6 and mongrel >>> cluster >>> 0.2.1, on debian sage 3.1 with apache 2.0, and fastthread 0.6.1. >>> I am load balancing 3 mongrel processes using the random port trick. >>> >>> When I start mongrel the processes have about 60MB, but after >>> some hour of >>> usage the memory ballons upto more than 180MB and the site becomes >>> terribly >>> slow. Forcing me to restart mongrel cluster. >>> >>> Also, it reports me 9 mongrel processes instead of three. I am not >>> able to >>> understand why that's happening. Are really 9 mongrel processes >>> started >>> instead of three? >>> >>> Please help. Thanks. >> >> -- >> Michael Biven >> michael.biven at gmail.com >> http://biven.org >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users > > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From singhi.surendra at gmail.com Thu Jan 18 02:06:42 2007 From: singhi.surendra at gmail.com (Surendra Singhi) Date: Thu, 18 Jan 2007 12:36:42 +0530 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: Hi, First of all thanks everyone for their responses. On 1/18/07, Ezra Zygmuntowicz wrote: > > > Some linux distros have weird reporting of processes. I have seen > it > where top or ps will report 3 mongrels for each one that is really > running. And looking at your output you can see that each set of > three mongrels reported have the same port number. This means that > you really only have 3 mongrels running because only one can be > running per port at a time. The output of 'ps aefux' is below. Though I don't understand ps completely it seems that the one mongrel process spawns another child process, which in turns spawns a third one. ssinghi 22988 0.7 11.3 142900 102572 ? S 21:53 0:24 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P log/mon ssinghi 22998 0.0 11.3 142900 102572 ? S 21:54 0:00 \_ /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P log ssinghi 23000 0.0 11.3 142900 102572 ? S 21:54 0:00 \_ /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P ssinghi 22991 0.9 12.0 131192 108844 ? S 21:53 0:33 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P log/mon ssinghi 22996 0.0 12.0 131192 108844 ? S 21:54 0:00 \_ /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P log ssinghi 22997 0.0 12.0 131192 108844 ? S 21:54 0:00 \_ /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P ssinghi 22994 0.5 10.1 127980 92160 ? S 21:53 0:18 /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P log/mon ssinghi 22999 0.0 10.1 127980 92160 ? S 21:54 0:00 \_ /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P log ssinghi 23001 0.0 10.1 127980 92160 ? S 21:54 0:00 \_ /usr/bin/ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P As far as the memory usage goes, that sounds like a classic memory > leak in your rails app. I have seen mongrel balloon like that when > people add an extra :include directive to a find that ends up loading > a ton of extra records into memory. If you are loading more then a > few hundred ActiveRecords into memory on any one page then that will > surely cause memory to ballon like this. Yes, we are doing eager loading at many places, and there is a sitemap part where about 10,000 records are loaded. I will try to optimize those parts, and see if they make a difference. A little more info about your app and what it does woudl help debug. > Are you using Rmagcik? Yes we are using that. I will look into mini-magick. Joey thanks for that. Are you useing send_file or send_data to > stream out large content? We are streaming data for images. We are also using ferret and mediacloth. I guess, I need to investigate more on the above mentioned things. Thanks a lot. Surendra Singhi On Jan 17, 2007, at 10:36 AM, Michael Biven wrote: > > > How are the mongrel started (cron, launchd, etc)? I had something > > similar happen to me, but I think it was from the cluster being > > started by root instead of the user I wanted to start it. It gave me > > an extra set of mongrel processes running that mongrel_rails > > cluster::stop wouldn't stop. > > > > Michael B. > > > > On 1/17/07, Surendra Singhi wrote: > >> Hi, > >> I have mongrel 0.3.14, with ruby 1.8.5, rails 1.1.6 and mongrel > >> cluster > >> 0.2.1, on debian sage 3.1 with apache 2.0, and fastthread 0.6.1. > >> I am load balancing 3 mongrel processes using the random port trick. > >> > >> When I start mongrel the processes have about 60MB, but after > >> some hour of > >> usage the memory ballons upto more than 180MB and the site becomes > >> terribly > >> slow. Forcing me to restart mongrel cluster. > >> > >> Also, it reports me 9 mongrel processes instead of three. I am not > >> able to > >> understand why that's happening. Are really 9 mongrel processes > >> started > >> instead of three? > >> > >> Please help. Thanks. > > > > -- > > Michael Biven > > michael.biven at gmail.com > > http://biven.org > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Surendra Singhi http://ssinghi.kreeti.com, http://www.kreeti.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070118/9b203e83/attachment-0001.html From mwhitt89 at gmail.com Thu Jan 18 10:31:06 2007 From: mwhitt89 at gmail.com (Matthew Whittaker) Date: Thu, 18 Jan 2007 10:31:06 -0500 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: So in my application I am not using any of the mentioned culprits mentioned below which would cause the memory to balloon. Here is my setup: Debian 3.1 Rails 1.1.6 Ruby 1.8.5 Mongrel 0.3.18 Fastthread 0.6.1 Mongrel Cluster 0.2.1 Apache 2.2.3 Backgroundrb (can't find the version but it is the last one before 2.x) Here is ps: 3265 0.0 15.9 75380 62860 ? Sl Jan10 1:01 backgroundrb TERM=vt100 SHELL=/bin/bash 9577 0.0 12.0 59448 47520 ? Sl Jan15 0:20 /usr/bin/ ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8000 -a 127.0.0.1 -P log/mongrel.8000.pid -c 9580 0.0 10.4 53208 41012 ? Sl Jan15 0:11 /usr/bin/ ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8001 -a 127.0.0.1 -P log/mongrel.8001.pid -c 9584 0.0 12.0 59808 47536 ? Sl Jan15 0:09 /usr/bin/ ruby1.8 /usr/bin/mongrel_rails start -d -e production -p 8002 -a 127.0.0.1 -P log/mongrel.8002.pid -c You can see that mongrel has slowly crept up to almost 60K of memory usage and backgroundrb is at 75K. This app is not getting hammered and only has a steady usage. But every time I restart everything after a couple days everything creeps up to this high memory usage. I am not using eager loading, nor RMagick. Any ideas? How should I troubleshoot this. Thank you. Matt On Jan 17, 2007, at 2:34 PM, Ezra Zygmuntowicz wrote: > > Some linux distros have weird reporting of processes. I have seen it > where top or ps will report 3 mongrels for each one that is really > running. And looking at your output you can see that each set of > three mongrels reported have the same port number. This means that > you really only have 3 mongrels running because only one can be > running per port at a time. > > As far as the memory usage goes, that sounds like a classic memory > leak in your rails app. I have seen mongrel balloon like that when > people add an extra :include directive to a find that ends up loading > a ton of extra records into memory. If you are loading more then a > few hundred ActiveRecords into memory on any one page then that will > surely cause memory to ballon like this. > > A little more info about your app and what it does woudl help debug. > Are you using Rmagcik? Are you useing send_file or send_data to > stream out large content? > > > Cheers- > -Ezra > > > > On Jan 17, 2007, at 10:36 AM, Michael Biven wrote: > >> How are the mongrel started (cron, launchd, etc)? I had something >> similar happen to me, but I think it was from the cluster being >> started by root instead of the user I wanted to start it. It gave me >> an extra set of mongrel processes running that mongrel_rails >> cluster::stop wouldn't stop. >> >> Michael B. >> >> On 1/17/07, Surendra Singhi wrote: >>> Hi, >>> I have mongrel 0.3.14, with ruby 1.8.5, rails 1.1.6 and mongrel >>> cluster >>> 0.2.1, on debian sage 3.1 with apache 2.0, and fastthread 0.6.1. >>> I am load balancing 3 mongrel processes using the random port trick. >>> >>> When I start mongrel the processes have about 60MB, but after >>> some hour of >>> usage the memory ballons upto more than 180MB and the site becomes >>> terribly >>> slow. Forcing me to restart mongrel cluster. >>> >>> Also, it reports me 9 mongrel processes instead of three. I am not >>> able to >>> understand why that's happening. Are really 9 mongrel processes >>> started >>> instead of three? >>> >>> Please help. Thanks. >> >> -- >> Michael Biven >> michael.biven at gmail.com >> http://biven.org >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users > > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From ezmobius at gmail.com Thu Jan 18 14:59:24 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Thu, 18 Jan 2007 11:59:24 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: Hi~ On Jan 17, 2007, at 11:06 PM, Surendra Singhi wrote: > Hi, > > First of all thanks everyone for their responses. > > On 1/18/07, Ezra Zygmuntowicz wrote: > > Some linux distros have weird reporting of processes. I > have seen it > where top or ps will report 3 mongrels for each one that is really > running. And looking at your output you can see that each set of > three mongrels reported have the same port number. This means that > you really only have 3 mongrels running because only one can be > running per port at a time. > > The output of 'ps aefux' is below. Though I don't understand ps > completely it seems that the one mongrel process spawns another > child process, which in turns spawns a third one. > Yes I have seen this before and it is nothing to worry about, even though it shows 9 mongrels you really only have 3 running. > > As far as the memory usage goes, that sounds like a classic > memory > leak in your rails app. I have seen mongrel balloon like that when > people add an extra :include directive to a find that ends up loading > a ton of extra records into memory. If you are loading more then a > few hundred ActiveRecords into memory on any one page then that will > surely cause memory to ballon like this. > > Yes, we are doing eager loading at many places, and there is a > sitemap part > where about 10,000 records are loaded. I will try to optimize those > parts, and see > if they make a difference. This is one of your biggest problems right here. Its easy to return thousands of records from an AR query. But AR objects are expensive in terms of cpu and memory usage to construct. Working with 10,000 records at once is a sure fire way to leak tons of memory and make your mongrels unstable. Try to work with smaller sets of data. I have yet to ever see a legitimate use case where you want to display 10k records on one web page ;) Use pagination or whatever you need to do to work with smaller sets of data. There is a paginating_find plugin that is useful and there is a gem called Paginator that I highly recommend over the stock rails paginator. > > A little more info about your app and what it does woudl > help debug. > Are you using Rmagcik? > > Yes we are using that. I will look into mini-magick. Joey thanks > for that. > Mini magick is very nice. But also look at ImageScience. If you are only using rmagick for thumbnailing, resizing and cropping then image science is much better. Its about 5 times faster and it doesn't leak any memory. Highly recommended. > Are you useing send_file or send_data to > stream out large content? > > We are streaming data for images. Is this a convenience or a requirement? This should be avoided if at all possible. The way rails works with mongrel is that mongrel will not send the finished request to the client until rails has completely finished. WHat I mean is when you use send_data or send_file with mongrel;, raiuls will try to stream the data in chunks. But mongrel will just buffer these chunks into a StringIO until rails is completely finished and then mongrel will send the entire thing to the client. This means that every time you stream data like this, the entire image has to be loaded into ram in mongrel before it will send it to the client. > > We are also using ferret and mediacloth. I don't think these two are the cause of any of your leaks. > > I guess, I need to investigate more on the above mentioned things. > Thanks a lot. > > Surendra Singhi > From what you have said the thing I worry about the most is loading 10k AR objects into memory. That is not going to scale and will cause you no end of problems. Work with smaller sets. Switch to ImageScience if you can or at least to mini magick. If image Science will do everything you need to do then use it above all other options. Hope that helps. Cheers- -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From jgeiger at gmail.com Thu Jan 18 15:28:50 2007 From: jgeiger at gmail.com (Joey Geiger) Date: Thu, 18 Jan 2007 14:28:50 -0600 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> Is mongrel not releasing the memory used for these operations? I need to use send_file to stream some static images (4k max) (approved, declined, etc) which rails then turns into new cached images. This allows a group of people to get the current status of an item via html email with images. It's a neat hack, but I'd like to make it better. >But mongrel will just buffer these chunks into a StringIO >until rails is completely finished and then mongrel will send the >entire thing to the client. This means that every time you stream >data like this, the entire image has to be loaded into ram in mongrel >before it will send it to the client. From zedshaw at zedshaw.com Thu Jan 18 19:07:27 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 18 Jan 2007 16:07:27 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> Message-ID: <20070118160727.28fbbb2b.zedshaw@zedshaw.com> On Thu, 18 Jan 2007 14:28:50 -0600 "Joey Geiger" wrote: > Is mongrel not releasing the memory used for these operations? I need > to use send_file to stream some static images (4k max) (approved, > declined, etc) which rails then turns into new cached images. This > allows a group of people to get the current status of an item via html > email with images. It's a neat hack, but I'd like to make it better. > > > >But mongrel will just buffer these chunks into a StringIO > >until rails is completely finished and then mongrel will send the > >entire thing to the client. This means that every time you stream > >data like this, the entire image has to be loaded into ram in mongrel > >before it will send it to the client. No, first off, doing it this way is incredibly bad simply because you're holding up rails while you send the files. No matter how big the size this is a waste. Look at using X-Sendfile headers to get the web server to do this for you. Second, "mongrel" seems to be said in place of "whatever ruby stuff i'm currently running". I think this comes from people who are used to saying "Apache" when they mean "all my php stuff" or "tomcat" when they mean "all my java stuff". In those environments the whole stack is also mostly the web server and the web servers are gigantic usually in comparison to whatever you wrote. In the case of Mongrel, the "web server" is just a very tiny little piece of the whole stack. It's literally like %1 of the total code in the system. To really start thinking clearly about what you're using you have to start thinking in terms of "mongrel+rails+[my included libs]" to find your problems. This is also true in the PHP and Java worlds, but it's not as important. Third, Remember, *LOTS* of people run mongrel without memory leaks. I'd put out that there's easily thousands of mongrels running without leaks. If *YOU* are seeing leaks *YOU* are doing something wrong. Sorry to be harsh, but first thing people jump at is Mongrel and then we find out they're doing 10-20 really dumb things they should check on first. Always assume that what you've got sucks, then after you've ruled out all possible potential problems with what you've written then start looking at the "m+r+[mil]" stack as potential causes. Finally, if you're doing the image generation and sending via a consistent URL, it wouldn't be hard to write a Mongrel handler that dealt with this work without touching rails at all. Take a look at lib/mongrel/handlers.rb for tons of examples. Hope that helps. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From ezmobius at gmail.com Thu Jan 18 16:15:31 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Thu, 18 Jan 2007 13:15:31 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> Message-ID: On Jan 18, 2007, at 12:28 PM, Joey Geiger wrote: > Is mongrel not releasing the memory used for these operations? I need > to use send_file to stream some static images (4k max) (approved, > declined, etc) which rails then turns into new cached images. This > allows a group of people to get the current status of an item via html > email with images. It's a neat hack, but I'd like to make it better. For small 4k images that you cache after the first time they are streamed then I would not worry about it. Those should be fine. And mongrel+ruby does its bet to release memory used in this way. It's when you are constantly streaming data without caching it, that can cause slow memory buildups and the only way to reclaim the mem is to restart the mongrels. This is not entirely mongrels fault though. Ruby is pretty bad at releasing memory once it has it. Especially if you are swamping it so the GC can't keep up. But 4k and cached I think should be fine. Are you experiencing leaks? -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From jgeiger at gmail.com Thu Jan 18 17:14:43 2007 From: jgeiger at gmail.com (Joey Geiger) Date: Thu, 18 Jan 2007 16:14:43 -0600 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> Message-ID: <466af3440701181414w5143a978ua39b21b0bf60b51e@mail.gmail.com> Zed: Sorry not blaming you and your app. I guess that came across wrong. Without mongrel right now, I'd be somewhat screwed from an ease of use standpoint. Right now, my hands are fairly tied with the use of x-sendfile and headers since I'm actually double proxying my application (Apache 1.3 -> nginx(localhost:8000) -> mongrel_cluster(localhost:8001-4)). Nginx serves any static images that rails creates back to apache. (Anyone know how to get ProxyPass ! /images/ to work on 1.3? :) I do believe that it is my app that's having issues, but it's not to the point where it's threatening the stability of my system. I have monit watching the mongrels, so they will restart when they use too much memory. The flowchart for part of it is something like this: user submits a comment (comment id 5) system notifies 5 editors via html email that there is a new comment inside the email, there is an showing the status editor1 views the email the controller does a send_file("images/pending.png") and caches it as (/status_image/5.png) editor1 sees the status as pending and moves to another email editor2 views the email, sees the status as pending and approves the comment controller removes the cached image (/status_image/5.png) editor3 now views the email the controller does a send_file("images/approved.png") and caches it as (/status_image/5.png) editor3 now sees the comment has been approved and moves on editor1 comes back to view the comment and now sees that it has been approved and moves on While I'm caching the images, the application has to do this a bunch of times, and re-do it each time the status of the item is changed, so each of the editors sees the freshest status. So it's not a big hit and restart every time, but I think over the course of a few days, it builds up, and the process is restarted. I'm learning this day by day as I go on, so I'm always open to suggestions. On 1/18/07, Ezra Zygmuntowicz wrote: > > On Jan 18, 2007, at 12:28 PM, Joey Geiger wrote: > > > Is mongrel not releasing the memory used for these operations? I need > > to use send_file to stream some static images (4k max) (approved, > > declined, etc) which rails then turns into new cached images. This > > allows a group of people to get the current status of an item via html > > email with images. It's a neat hack, but I'd like to make it better. > > > For small 4k images that you cache after the first time they are > streamed then I would not worry about it. Those should be fine. And > mongrel+ruby does its bet to release memory used in this way. It's > when you are constantly streaming data without caching it, that can > cause slow memory buildups and the only way to reclaim the mem is to > restart the mongrels. This is not entirely mongrels fault though. > Ruby is pretty bad at releasing memory once it has it. Especially if > you are swamping it so the GC can't keep up. > > But 4k and cached I think should be fine. Are you experiencing leaks? > > > > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From zedshaw at zedshaw.com Thu Jan 18 20:44:19 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 18 Jan 2007 17:44:19 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <466af3440701181414w5143a978ua39b21b0bf60b51e@mail.gmail.com> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <466af3440701181228hcc4535x3adb6ddadcb6f543@mail.gmail.com> <466af3440701181414w5143a978ua39b21b0bf60b51e@mail.gmail.com> Message-ID: <20070118174419.6f3a5739.zedshaw@zedshaw.com> On Thu, 18 Jan 2007 16:14:43 -0600 "Joey Geiger" wrote: > Zed: Sorry not blaming you and your app. I guess that came across > wrong. Without mongrel right now, I'd be somewhat screwed from an ease > of use standpoint. Oh hey man, it's quite all right to blame mongrel. Just shooting you some device that works for me when debugging a problem. It just works better when you blame what you got first, then start fanning out. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From lists at lastonepicked.com Thu Jan 18 19:44:12 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Thu, 18 Jan 2007 16:44:12 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: I'm interested in trying ImageScience but I can't get FreeImage, the processing lib, to build on MacOS X 10.4 (Intel). Has anyone had luck? I tried building from source and using DarwinPorts, both no dice: gonzo:~/Unix/Sources/imagescience_stuff/FreeImage hunter$ sudo port install freeimage ---> Building freeimage with target all Error: Target com.apple.build returned: shell command "cd "/opt/local/ var/db/dports/build/ _opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dp orts_graphics_freeimage/work/FreeImage" && make all" returned error 2 Command output: Source/FreeImage/BitmapAccess.cpp:813: error: expected `;' before 'TAGMAP' Source/FreeImage/BitmapAccess.cpp:821: error: 'strcmp' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:825: error: 'FreeImage_GetTagCount' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:825: error: 'WORD' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:825: error: 'FreeImage_TagDataWidth' cannot be used as a function Source/FreeImage/BitmapAccess.cpp:825: error: 'FreeImage_GetTagLength' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:839: error: 'WORD' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:858: error: 'TAGMAP' is not a class or namespace Source/FreeImage/BitmapAccess.cpp:858: error: 'iterator' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:858: error: expected `;' before 'i' Source/FreeImage/BitmapAccess.cpp:859: error: 'i' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:869: error: 'TAGMAP' is not a class or namespace Source/FreeImage/BitmapAccess.cpp:869: error: 'iterator' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:869: error: expected `;' before 'i' Source/FreeImage/BitmapAccess.cpp:869: error: 'i' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:874: error: type '' argument given to 'delete', expected pointer Source/FreeImage/BitmapAccess.cpp: In function 'BOOL FreeImage_GetMetadata(FREE_IMAGE_MDMODEL, FIBITMAP*, const char*, FITAG**)': Source/FreeImage/BitmapAccess.cpp:887: error: 'TAGMAP' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:887: error: 'tagmap' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:891: error: 'METADATAMAP' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:891: error: 'metadata' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:891: error: 'struct FREEIMAGEHEADER' has no member named 'metadata' Source/FreeImage/BitmapAccess.cpp: In function 'unsigned int FreeImage_GetMetadataCount(FREE_IMAGE_MDMODEL, FIBITMAP*)': Source/FreeImage/BitmapAccess.cpp:912: error: 'TAGMAP' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:912: error: 'tagmap' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:915: error: 'METADATAMAP' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:915: error: 'metadata' was not declared in this scope Source/FreeImage/BitmapAccess.cpp:915: error: 'struct FREEIMAGEHEADER' has no member named 'metadata' make[1]: *** [Source/FreeImage/BitmapAccess.o-ppc] Error 1 make: *** [all] Error 2 On Jan 18, 2007, at 11:59 AM, Ezra Zygmuntowicz wrote: > Mini magick is very nice. But also look at ImageScience. If you are > only using rmagick for thumbnailing, resizing and cropping then image > science is much better. Its about 5 times faster and it doesn't leak > any memory. Highly recommended. From mental at rydia.net Thu Jan 18 19:51:23 2007 From: mental at rydia.net (MenTaLguY) Date: Thu, 18 Jan 2007 19:51:23 -0500 Subject: [Mongrel] [ANN] fastthread 0.6.2 Message-ID: <1169167883.18237.20.camel@localhost.localdomain> It looks like I got too creative in 0.6.1 and consequently ran afoul of a bug in the Ruby interpreter. 0.6.2 works around the bug and should be entirely stable at this point. Thanks to Young Hyun for his help in coming up with test cases. == what? fastthread is a Ruby library which provides a faster (and non-memory-leaking) C implementation of the concurrency primitives from stdlib's thread.rb. It aims to be 100% compatible with thread.rb's public API. So, how much faster? In the single-threaded case, fastthread's version of Mutex#lock and Mutex#synchronize are comparable in performance to Thread.critical= and Thread.exclusive. With multiple threads, it has an additional advantage over Thread.critical in that entering a critical section doesn't suspend any other threads unless they're competing for the same lock. (Compare that to Thread.critical, which stops all other threads dead!) I know a lot of folks have been avoiding stdlib's Mutex because all the method calls killed performance. But no more, with fastthread! Why use Thread.critical when you can use the real thing? == how? Simply require 'fastthread' in addition to 'thread'. If you want to make fastthread optional (recommended!), do it this way: require 'thread' begin require 'fastthread' rescue LoadError end This way, your program will still work on systems that don't have (or don't need -- e.g. JRuby) fastthread, but you still get a performance boost on systems where it's available. == where? Gem: http://moonbase.rydia.net/software/optimized-locking/fastthread-0.6.2.gem Tarball: http://moonbase.rydia.net/software/optimized-locking/fastthread-0.6.2.tgz fastthread is also available on Rubyforge (and therefore the main gems repository), courtesy of the Mongrel project: https://rubyforge.org/frs/?group_id=1306 -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070118/a16cfbd6/attachment.bin From lists at lastonepicked.com Thu Jan 18 20:02:46 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Thu, 18 Jan 2007 17:02:46 -0800 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: <1169167883.18237.20.camel@localhost.localdomain> References: <1169167883.18237.20.camel@localhost.localdomain> Message-ID: <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> Sorry, for those of us that don't know, how does this relate to Mongrel? I'm not really clear on that from your message. Sounds cool though. On Jan 18, 2007, at 4:51 PM, MenTaLguY wrote: > It looks like I got too creative in 0.6.1 and consequently ran > afoul of > a bug in the Ruby interpreter. 0.6.2 works around the bug and > should be > entirely stable at this point. > > Thanks to Young Hyun for his help in coming up with test cases. > > == what? > > fastthread is a Ruby library which provides a faster (and > non-memory-leaking) C implementation of the concurrency primitives > from > stdlib's thread.rb. It aims to be 100% compatible with thread.rb's > public API. > > So, how much faster? In the single-threaded case, fastthread's > version > of Mutex#lock and Mutex#synchronize are comparable in performance to > Thread.critical= and Thread.exclusive. With multiple threads, it > has an > additional advantage over Thread.critical in that entering a critical > section doesn't suspend any other threads unless they're competing for > the same lock. (Compare that to Thread.critical, which stops all > other > threads dead!) > > I know a lot of folks have been avoiding stdlib's Mutex because all > the > method calls killed performance. But no more, with fastthread! > Why use > Thread.critical when you can use the real thing? > > == how? > > Simply require 'fastthread' in addition to 'thread'. If you want to > make fastthread optional (recommended!), do it this way: > > require 'thread' > begin > require 'fastthread' > rescue LoadError > end > > This way, your program will still work on systems that don't have (or > don't need -- e.g. JRuby) fastthread, but you still get a performance > boost on systems where it's available. > > == where? > > Gem: > http://moonbase.rydia.net/software/optimized-locking/ > fastthread-0.6.2.gem > > Tarball: > http://moonbase.rydia.net/software/optimized-locking/ > fastthread-0.6.2.tgz > > fastthread is also available on Rubyforge (and therefore the main gems > repository), courtesy of the Mongrel project: > > https://rubyforge.org/frs/?group_id=1306 > > -mental > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From rsanheim at gmail.com Thu Jan 18 20:15:24 2007 From: rsanheim at gmail.com (Rob Sanheim) Date: Thu, 18 Jan 2007 19:15:24 -0600 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> References: <1169167883.18237.20.camel@localhost.localdomain> <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> Message-ID: On 1/18/07, Hunter Hillegas wrote: > Sorry, for those of us that don't know, how does this relate to Mongrel? > > I'm not really clear on that from your message. > > Sounds cool though. > Fastthread is used in Mongrel, I believe, to avoid some memory leaks w/i Ruby. From gwolf at gwolf.org Thu Jan 18 20:11:15 2007 From: gwolf at gwolf.org (Gunnar Wolf) Date: Thu, 18 Jan 2007 19:11:15 -0600 Subject: [Mongrel] The Gentoo/FreeBSD Plan - reloaded In-Reply-To: <20070112220708.GF8585@replic.net> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> <20070112213927.GC8585@replic.net> <20070112215433.GE8585@replic.net> <20070112220708.GF8585@replic.net> Message-ID: <20070119011115.GD6461@gwolf.org> carmen dijo [Fri, Jan 12, 2007 at 05:07:08PM -0500]: > > > the other important reason for hooking into gems, besides > > maintainer sanity, is to allow the user to mix and match between > > installation methods. what happens when the user installed mongrel > > bypassing gems, then installs camping? im pretty sure it installs > > mongrel again, and then when they get a bug they dont even know > > which version is being used.. > > the Gentoo method isnt perfect - it fails in the inverse scenario > where youve installed everything via gems, then want to install > something through portage that depends on installed gems (stuff gets > reinstalled). the other problem is its tied to hardcoded version > numbers in the ebuild filenames. theres no way for it to discover > that newer versions of the gems exist. does freeBSD solve either of > these problems? I agree with your points... But anyway, that's one of the reasons Debian is so different from Gentoo/FreeBSD (with their source-based packaging systems). Yes, it would be unfair to plainly state that we pursue an unbreakable system while you don't, and it would surely lead to a flamefest ;-) Just please take a look at the two following pages, which explain the rationale behind our requests: http://pkg-ruby-extras.alioth.debian.org/rubygems.html http://pkg-ruby-extras.alioth.debian.org/upstream-devs.html Greetings, -- Gunnar Wolf - gwolf at gwolf.org - (+52-55)5623-0154 / 1451-2244 PGP key 1024D/8BB527AF 2001-10-23 Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF From mental at rydia.net Thu Jan 18 20:16:32 2007 From: mental at rydia.net (MenTaLguY) Date: Thu, 18 Jan 2007 20:16:32 -0500 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> References: <1169167883.18237.20.camel@localhost.localdomain> <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> Message-ID: <1169169392.18237.22.camel@localhost.localdomain> On Thu, 2007-01-18 at 17:02 -0800, Hunter Hillegas wrote: > Sorry, for those of us that don't know, how does this relate to Mongrel? > > I'm not really clear on that from your message. fastthread resolves the memory problems that Mongrel has when using stdlib's Mutex. It's actually a dependency for the Mongrel gem now. -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070118/f2134a21/attachment.bin From gwolf at gwolf.org Thu Jan 18 20:13:17 2007 From: gwolf at gwolf.org (Gunnar Wolf) Date: Thu, 18 Jan 2007 19:13:17 -0600 Subject: [Mongrel] The Gentoo/FreeBSD Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> <20070112213927.GC8585@replic.net> <20070112215433.GE8585@replic.net> <20070112220708.GF8585@replic.net> Message-ID: <20070119011317.GE6461@gwolf.org> Filipe dijo [Mon, Jan 15, 2007 at 11:29:39AM -0200]: > > > the Gentoo method isnt perfect - it fails in the inverse scenario > > where youve installed everything via gems, then want to install > > something through portage that depends on installed gems (stuff > > gets reinstalled). the other problem is its tied to hardcoded > > version numbers in the ebuild filenames. theres no way for it to > > discover that newer versions of the gems exist. does freeBSD solve > > either of these problems? > > Well... my watch file again: > http://mongrel.rubyforge.org/releases/gems/mongrel-([0-9\.]*)\.gem Oh, so _there_ it is :) Ok, Zed, forget my rant about not having the files accessible ;-) -- Gunnar Wolf - gwolf at gwolf.org - (+52-55)5623-0154 / 1451-2244 PGP key 1024D/8BB527AF 2001-10-23 Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF From lists at lastonepicked.com Thu Jan 18 20:28:09 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Thu, 18 Jan 2007 17:28:09 -0800 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: <1169169392.18237.22.camel@localhost.localdomain> References: <1169167883.18237.20.camel@localhost.localdomain> <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> <1169169392.18237.22.camel@localhost.localdomain> Message-ID: <240D436C-23B6-4FCA-BD0F-3C5C026841A8@lastonepicked.com> Got it, thanks. So, we should upgrade our fastthread to your latest version then, right? On Jan 18, 2007, at 5:16 PM, MenTaLguY wrote: >> Sorry, for those of us that don't know, how does this relate to >> Mongrel? >> >> I'm not really clear on that from your message. > > fastthread resolves the memory problems that Mongrel has when using > stdlib's Mutex. It's actually a dependency for the Mongrel gem now. > > -mental > __________ From jason at joyent.com Thu Jan 18 20:10:57 2007 From: jason at joyent.com (Jason A. Hoffman) Date: Thu, 18 Jan 2007 17:10:57 -0800 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> References: <1169167883.18237.20.camel@localhost.localdomain> <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> Message-ID: On Jan 18, 2007, at 5:02 PM, Hunter Hillegas wrote: > Sorry, for those of us that don't know, how does this relate to > Mongrel? > > I'm not really clear on that from your message. > > Sounds cool though. > Hi Hunter, Read the following http://rubyforge.org/pipermail/mongrel-users/2007-January/002645.html Regards, Jason From gwolf at gwolf.org Thu Jan 18 20:00:07 2007 From: gwolf at gwolf.org (Gunnar Wolf) Date: Thu, 18 Jan 2007 19:00:07 -0600 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: <20070112100716.e7fa89b8.zedshaw@zedshaw.com> References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: <20070119010007.GC6461@gwolf.org> Zed A. Shaw dijo [Fri, Jan 12, 2007 at 10:07:16AM -0800]: > I finally have time to answer this... I don't ;-) I'm in the middle of a high workload cycle - Anyway, thanks to Filipe for finally posting this. He has been pestering me over and over to upload my work to the Debian SVN repository so more people can work on the packaging until I get time to take it again :) > > So, we have some favors to ask from you (the mongrel developers), as > > those favors are not big things: > > > > * Could you please upload tar.gz files together with your gems files? > > As an open source contributor, I know you feel like donating some > time to make this happen. If you write the rake file task and patch > that creates the tar.gz with the proper version number and puts it > into pkg/ then I'll run that task for you and upload the file. That > way you get control over how you like it packaged rather than me > doing it 20 times until you say it's nice. It's quite easy: The Gem file, as you surely know, is just an uncompressed tar containing the metadata and a data.tar.gz, which contains your work. What I do is to rename your .gem to .tar and compress it, so I work with the closest I can get to the ideal "pristine sources" .orig.tar.gz - Our build process then becomes: (of course, this is an automated process, but still) - Extract Mongrel tarball (and discardable metadata) from the .orig.tar.gz (your renamed Gem), and add a debian/ directory where the packaging information is stored - Extract data.tar.gz, creating your whole structure - Patch your files with whatever modifiations we have to apply (which are stored in debian/patches and applied via the dpatch framework) - Build the package So... Well, it works correctly, but implies a couple extra steps - This is fine by itself, but if somebody outside our team needs to work on the package (say, to do some urgent QA work), I expect him to have a "WTF" look for some minutes ;-) > Otherwise, I tag each release in svn. Maybe you cold convince the > debian build system to use that. Should be easier as well since you > don't have to troll a download page. Umh... I prefer working against something as close as possible to the "pristine sources" ideal. Taking one file from you, and having that as our reference. The Gem file works, although suboptimally Another of our tools tracks upstream new versions by looking at URLs with some regex magic on them. AFAICT, we cannot automate this step as it is now. > > * In this tar, could the files be with the current date, not in year > > 1969? :D tar complains a lot about this... > > I believe only rubygems does this because it uses a ruby version of tar. Ok, so we should ask them for a bugfix - I'm relatively new to Ruby culture. What's this Ruby tar's name? > > * When release candidates are released, can you append something like > > "~rc1" to the tar file? This help debian auto tools to check new > > releases. > > There's also a problem with how Rake and/or rubygems likes its > version numbers. It won't accept ~rc1 style endings for various > design reasons. Nah, I agree here with Zed - We can accomodate your version number changes. We cannot expect everybody on the Free Software world to agree on a versioning standard! The ~rc1 notation is _very_ Debian-centric - and very seldom used, IMHO. > > The Debian ruby-extras team has a page[1] dedicated to upstream > > developers, where those and other things that help *nix distributions > > are described. > > I'll give you guys a slight clue though. Mongrel is packaged on > lots of other operating systems. So far OSX, SuSE, FreeBSD, Win32, > Fedora and probably more I don't know anything about. Not a single > one of them asked me to change the project setup to accommodate > their build systems. OSX asked me to change the license but that's > it. > > If Debian has to ask people to change their projects, then maybe > there's something wrong with Debian's build system. I know Debian > folks can *never* admit there might be something wrong, but just > consider it. There might just be some improvement you could make to > be as capable as the other OS out there. Yes, I understand your point here. Only that we know how to do things better ;-) No, really - I guess that every Linux distribution you quoted would prefer you shipping an orig.tar.gz (call it whatever you want), as the "pristine sources" religion was _started_ by the RedHat people and all... We can all accomodate. Debian does, however, have one uniqueness factor: Being a completely distributed and volunteer project, we put a lot of emphasis on things being as standard and automatic as possible, for the sake of our colleagues :) Thanks a lot, anyway! -- Gunnar Wolf - gwolf at gwolf.org - (+52-55)5623-0154 / 1451-2244 PGP key 1024D/8BB527AF 2001-10-23 Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF From gwolf at gwolf.org Thu Jan 18 20:39:16 2007 From: gwolf at gwolf.org (Gunnar Wolf) Date: Thu, 18 Jan 2007 19:39:16 -0600 Subject: [Mongrel] The Debian Plan - reloaded In-Reply-To: References: <20070110161246.V19992@bravo.pjkh.com> <20070110224337.GC13348@indelicate.net> <20070112100716.e7fa89b8.zedshaw@zedshaw.com> Message-ID: <20070119013916.GF6461@gwolf.org> Chad Woolley dijo [Mon, Jan 15, 2007 at 01:15:33PM -0700]: > > I imagine that what is said will reduce down to something like this: > > "Provide a patch that retains the ability to selectively require > > certain versions or version ranges, yet provides the version > > specification freedom that you think should exist, and we'll consider > > it." > > You are probably right. However, the RubyGems "Rational Versioning > Policy" ( http://rubygems.org/read/chapter/7 ) doesn't seem to account > for the beta/release candidate phase of the development cycle for a > post-1.0 release. It looks like the best you can do is to assume that > any x.0.0 release is a release candidate, and should be treated as > such. However, there's still no standard way for a gem developer to > indicate that a given post-x.0.0 version is now REALLY finished, and > should be safe for widespread use. Would not make too much sense, still - What one author considers to be 1.0-ready will still be 0.1-like for another author's standards. No, the only thing worth requesting is IMHO to keep sanity - Debian introduced the useful-but-for-me-still-worth-avoiding ~ syntax, made to accomodate some upstream strange practices - The ~ character sorts version-wise just before the exact version number preceding it. So you have: 0.99 < 1.0~beta1 < 1.0~beta3 < 1.0~beta3~almost < 1.0 Greetings :) -- Gunnar Wolf - gwolf at gwolf.org - (+52-55)5623-0154 / 1451-2244 PGP key 1024D/8BB527AF 2001-10-23 Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF From lists at lastonepicked.com Thu Jan 18 21:31:32 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Thu, 18 Jan 2007 18:31:32 -0800 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: References: <1169167883.18237.20.camel@localhost.localdomain> <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> Message-ID: <0E9D4A3E-04E5-41B5-87E1-7165070E0AF4@lastonepicked.com> Thanks Jason, I missed that the first time around. Hunter On Jan 18, 2007, at 5:10 PM, Jason A. Hoffman wrote: > > On Jan 18, 2007, at 5:02 PM, Hunter Hillegas wrote: > >> Sorry, for those of us that don't know, how does this relate to >> Mongrel? >> >> I'm not really clear on that from your message. >> >> Sounds cool though. >> > > Hi Hunter, > > Read the following > > http://rubyforge.org/pipermail/mongrel-users/2007-January/002645.html > > Regards, Jason > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From mental at rydia.net Thu Jan 18 21:34:07 2007 From: mental at rydia.net (MenTaLguY) Date: Thu, 18 Jan 2007 21:34:07 -0500 Subject: [Mongrel] [ANN] fastthread 0.6.2 In-Reply-To: <240D436C-23B6-4FCA-BD0F-3C5C026841A8@lastonepicked.com> References: <1169167883.18237.20.camel@localhost.localdomain> <2B0A4131-87FC-4952-9A21-65322D1CF5F0@lastonepicked.com> <1169169392.18237.22.camel@localhost.localdomain> <240D436C-23B6-4FCA-BD0F-3C5C026841A8@lastonepicked.com> Message-ID: <1169174047.18237.25.camel@localhost.localdomain> On Thu, 2007-01-18 at 17:28 -0800, Hunter Hillegas wrote: > Got it, thanks. So, we should upgrade our fastthread to your latest > version then, right? Highly, highly recommended, yes. Versions earlier than 0.6 won't work with the newest RubyGems, and 0.6.2 is the first really stable 0.6.x. -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070118/897fd31c/attachment.bin From michael.dauria at gmail.com Fri Jan 19 10:33:29 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Fri, 19 Jan 2007 10:33:29 -0500 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: <1907e2ca0701190733x43a54b00ye85e025b13a6e07f@mail.gmail.com> Hunter, I would just install it without using ports, you can check out the image_science page for info on how to compile with specific Mac OSX tips. On 1/18/07, Hunter Hillegas wrote: > > I'm interested in trying ImageScience but I can't get FreeImage, the > processing lib, to build on MacOS X 10.4 (Intel). Has anyone had luck? > > I tried building from source and using DarwinPorts, both no dice: > > gonzo:~/Unix/Sources/imagescience_stuff/FreeImage hunter$ sudo port > install freeimage > ---> Building freeimage with target all > Error: Target com.apple.build returned: shell command "cd "/opt/local/ > var/db/dports/build/ > _opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dp > orts_graphics_freeimage/work/FreeImage" && make all" returned error 2 > Command output: Source/FreeImage/BitmapAccess.cpp:813: error: > expected `;' before 'TAGMAP' > Source/FreeImage/BitmapAccess.cpp:821: error: 'strcmp' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:825: error: 'FreeImage_GetTagCount' > was not declared in this scope > Source/FreeImage/BitmapAccess.cpp:825: error: 'WORD' was not declared > in this scope > Source/FreeImage/BitmapAccess.cpp:825: error: > 'FreeImage_TagDataWidth' cannot be used as a function > Source/FreeImage/BitmapAccess.cpp:825: error: > 'FreeImage_GetTagLength' was not declared in this scope > Source/FreeImage/BitmapAccess.cpp:839: error: 'WORD' was not declared > in this scope > Source/FreeImage/BitmapAccess.cpp:858: error: 'TAGMAP' is not a class > or namespace > Source/FreeImage/BitmapAccess.cpp:858: error: 'iterator' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:858: error: expected `;' before 'i' > Source/FreeImage/BitmapAccess.cpp:859: error: 'i' was not declared in > this scope > Source/FreeImage/BitmapAccess.cpp:869: error: 'TAGMAP' is not a class > or namespace > Source/FreeImage/BitmapAccess.cpp:869: error: 'iterator' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:869: error: expected `;' before 'i' > Source/FreeImage/BitmapAccess.cpp:869: error: 'i' was not declared in > this scope > Source/FreeImage/BitmapAccess.cpp:874: error: type '' > argument given to 'delete', expected pointer > Source/FreeImage/BitmapAccess.cpp: In function 'BOOL > FreeImage_GetMetadata(FREE_IMAGE_MDMODEL, FIBITMAP*, const char*, > FITAG**)': > Source/FreeImage/BitmapAccess.cpp:887: error: 'TAGMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:887: error: 'tagmap' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:891: error: 'METADATAMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:891: error: 'metadata' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:891: error: 'struct > FREEIMAGEHEADER' has no member named 'metadata' > Source/FreeImage/BitmapAccess.cpp: In function 'unsigned int > FreeImage_GetMetadataCount(FREE_IMAGE_MDMODEL, FIBITMAP*)': > Source/FreeImage/BitmapAccess.cpp:912: error: 'TAGMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:912: error: 'tagmap' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:915: error: 'METADATAMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:915: error: 'metadata' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:915: error: 'struct > FREEIMAGEHEADER' has no member named 'metadata' > make[1]: *** [Source/FreeImage/BitmapAccess.o-ppc] Error 1 > make: *** [all] Error 2 > > > On Jan 18, 2007, at 11:59 AM, Ezra Zygmuntowicz wrote: > > > Mini magick is very nice. But also look at ImageScience. If you are > > only using rmagick for thumbnailing, resizing and cropping then image > > science is much better. Its about 5 times faster and it doesn't leak > > any memory. Highly recommended. > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070119/f83a700a/attachment.html From hip at lan-attack.ch Fri Jan 19 11:04:58 2007 From: hip at lan-attack.ch (Philippe Jayet) Date: Fri, 19 Jan 2007 17:04:58 +0100 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> Message-ID: <45B0EC2A.7000800@lan-attack.ch> Hi all, Ezra Zygmuntowicz wrote: > Mini magick is very nice. But also look at ImageScience. If you are > only using rmagick for thumbnailing, resizing and cropping then image > science is much better. Its about 5 times faster and it doesn't leak > any memory. Highly recommended. I've created a Debian package for ImageScience. It is not well tested but works for me. If anyone is interested, I can upload it somewhere. Philippe J. From lists at lastonepicked.com Fri Jan 19 11:39:25 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Fri, 19 Jan 2007 08:39:25 -0800 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <1907e2ca0701190733x43a54b00ye85e025b13a6e07f@mail.gmail.com> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <1907e2ca0701190733x43a54b00ye85e025b13a6e07f@mail.gmail.com> Message-ID: Yeah, I tried building it myself but got a similar compile error. I'm on Intel but I assume that it works with both arches. I'll go back and check it again... The OS X instructions weren't working for me. On Jan 19, 2007, at 7:33 AM, Michael D'Auria wrote: > Hunter, > > I would just install it without using ports, you can check out the > image_science page for info on how to compile with specific Mac OSX > tips. > > > On 1/18/07, Hunter Hillegas wrote: I'm > interested in trying ImageScience but I can't get FreeImage, the > processing lib, to build on MacOS X 10.4 (Intel). Has anyone had luck? > > I tried building from source and using DarwinPorts, both no dice: > > gonzo:~/Unix/Sources/imagescience_stuff/FreeImage hunter$ sudo port > install freeimage > ---> Building freeimage with target all > Error: Target com.apple.build returned: shell command "cd "/opt/local/ > var/db/dports/build/ > _opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_ > dp > orts_graphics_freeimage/work/FreeImage" && make all" returned error 2 > Command output: Source/FreeImage/BitmapAccess.cpp:813: error: > expected `;' before 'TAGMAP' > Source/FreeImage/BitmapAccess.cpp:821: error: 'strcmp' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:825: error: 'FreeImage_GetTagCount' > was not declared in this scope > Source/FreeImage/BitmapAccess.cpp:825: error: 'WORD' was not declared > in this scope > Source/FreeImage/BitmapAccess.cpp:825: error: > 'FreeImage_TagDataWidth' cannot be used as a function > Source/FreeImage/BitmapAccess.cpp:825: error: > 'FreeImage_GetTagLength' was not declared in this scope > Source/FreeImage/BitmapAccess.cpp:839: error: 'WORD' was not declared > in this scope > Source/FreeImage/BitmapAccess.cpp:858: error: 'TAGMAP' is not a class > or namespace > Source/FreeImage/BitmapAccess.cpp:858: error: 'iterator' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:858: error: expected `;' before 'i' > Source/FreeImage/BitmapAccess.cpp:859: error: 'i' was not declared in > this scope > Source/FreeImage/BitmapAccess.cpp:869: error: 'TAGMAP' is not a class > or namespace > Source/FreeImage/BitmapAccess.cpp:869: error: 'iterator' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:869: error: expected `;' before 'i' > Source/FreeImage/BitmapAccess.cpp:869: error: 'i' was not declared in > this scope > Source/FreeImage/BitmapAccess.cpp:874: error: type '' > argument given to 'delete', expected pointer > Source/FreeImage/BitmapAccess.cpp: In function 'BOOL > FreeImage_GetMetadata(FREE_IMAGE_MDMODEL, FIBITMAP*, const char*, > FITAG**)': > Source/FreeImage/BitmapAccess.cpp:887: error: 'TAGMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:887: error: 'tagmap' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:891: error: 'METADATAMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:891: error: 'metadata' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:891: error: 'struct > FREEIMAGEHEADER' has no member named 'metadata' > Source/FreeImage/BitmapAccess.cpp: In function 'unsigned int > FreeImage_GetMetadataCount(FREE_IMAGE_MDMODEL, FIBITMAP*)': > Source/FreeImage/BitmapAccess.cpp:912: error: 'TAGMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:912: error: 'tagmap' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:915: error: 'METADATAMAP' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:915: error: 'metadata' was not > declared in this scope > Source/FreeImage/BitmapAccess.cpp:915: error: 'struct > FREEIMAGEHEADER' has no member named 'metadata' > make[1]: *** [Source/FreeImage/BitmapAccess.o-ppc] Error 1 > make: *** [all] Error 2 > > > On Jan 18, 2007, at 11:59 AM, Ezra Zygmuntowicz wrote: > > > Mini magick is very nice. But also look at ImageScience. If you are > > only using rmagick for thumbnailing, resizing and cropping then > image > > science is much better. Its about 5 times faster and it doesn't leak > > any memory. Highly recommended. > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From hip at lan-attack.ch Fri Jan 19 11:41:40 2007 From: hip at lan-attack.ch (Philippe Jayet) Date: Fri, 19 Jan 2007 17:41:40 +0100 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <45B0EC2A.7000800@lan-attack.ch> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <45B0EC2A.7000800@lan-attack.ch> Message-ID: <45B0F4C4.6080401@lan-attack.ch> This is the fixed version ... Philippe Jayet wrote: > I've created a Debian package for ImageScience. It is not well tested > but works for me. If anyone is interested, I can upload it somewhere. The package is for FreeImage, the ImageScience dependency ! Philippe J. From bsiggelkow at mac.com Fri Jan 19 12:05:08 2007 From: bsiggelkow at mac.com (Bill Siggelkow) Date: Fri, 19 Jan 2007 12:05:08 -0500 Subject: [Mongrel] Mongrel::Uploads.check() not returning status Message-ID: <0A5A6CA1-6663-4BEB-A3E0-4F9C8F8E74CF@mac.com> I am trying to get the mongrel upload progress working and am having some problems. I am using Rails 1.1.6 and the latest install of mongrel. I created the config/mongrel_upload_progress.conf per the instructions ... it looks like this ... uri "/", :handler => plugin("/handlers/upload", :path_info => '/listings/ add_photo'), :frequency => 1, :in_front => true Then I start mongrel like this ... mongrel_rails start -d -p 3000 -S config/mongrel_upload_progress.conf In my controller's progress method I call ... @status = Mongrel::Uploads.check(params[:upload_id]) However, @status is always nil. Any ideas? The upload_id is properly being sent. The file does upload; but the progress bar just goes from 0% to 100% once the upload is finished. Thanks. Bill Siggelkow AIM: siggelkowb -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070119/802d4ce1/attachment.html From gwolf at gwolf.org Fri Jan 19 12:52:44 2007 From: gwolf at gwolf.org (Gunnar Wolf) Date: Fri, 19 Jan 2007 11:52:44 -0600 Subject: [Mongrel] mongrel memory usage ballooning and process stomping In-Reply-To: <45B0EC2A.7000800@lan-attack.ch> References: <7ec7b4220701171036s463a4433i8be263ea85bf5360@mail.gmail.com> <45B0EC2A.7000800@lan-attack.ch> Message-ID: <20070119175244.GA27313@gwolf.org> Philippe Jayet dijo [Fri, Jan 19, 2007 at 05:04:58PM +0100]: > Ezra Zygmuntowicz wrote: > > Mini magick is very nice. But also look at ImageScience. If you are > > only using rmagick for thumbnailing, resizing and cropping then image > > science is much better. Its about 5 times faster and it doesn't leak > > any memory. Highly recommended. > > I've created a Debian package for ImageScience. It is not well tested > but works for me. If anyone is interested, I can upload it somewhere. Hi, Philippe sent this message at the Mongrel list - Debian Ruby guys, any takers interested in it? Greetings, -- Gunnar Wolf - gwolf at gwolf.org - (+52-55)5623-0154 / 1451-2244 PGP key 1024D/8BB527AF 2001-10-23 Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070119/d7f0af16/attachment.bin From lists at lastonepicked.com Fri Jan 19 15:46:43 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Fri, 19 Jan 2007 12:46:43 -0800 Subject: [Mongrel] Rails Deploy Files - Remove? Message-ID: <7A2F6B27-4C5E-4948-9547-CBA3532DC2B6@lastonepicked.com> So, now that we're using Mongrel and not the horrid FCGI, do I really need these files in my Rails apps: dispatch.fcgi dispatch.cgi .htaccess ?? The .htaccess file has rules for rewriting that look FCGI based. For Mongrel, I do my Apache re-writing in my config file, right? is there a reason to include these files at this point? Hunter From jason at joyent.com Fri Jan 19 15:58:51 2007 From: jason at joyent.com (Jason A. Hoffman) Date: Fri, 19 Jan 2007 12:58:51 -0800 Subject: [Mongrel] Rails Deploy Files - Remove? In-Reply-To: <7A2F6B27-4C5E-4948-9547-CBA3532DC2B6@lastonepicked.com> References: <7A2F6B27-4C5E-4948-9547-CBA3532DC2B6@lastonepicked.com> Message-ID: On Jan 19, 2007, at 12:46 PM, Hunter Hillegas wrote: > So, now that we're using Mongrel and not the horrid FCGI, do I really > need these files in my Rails apps: > > dispatch.fcgi > dispatch.cgi > .htaccess > > ?? > > The .htaccess file has rules for rewriting that look FCGI based. For > Mongrel, I do my Apache re-writing in my config file, right? > > is there a reason to include these files at this point? > > Hunter Hi Hunter, You don't need them. Regards, Jason From turnip at turnipspatch.com Fri Jan 19 18:08:16 2007 From: turnip at turnipspatch.com (Jonathan Leighton) Date: Fri, 19 Jan 2007 23:08:16 +0000 Subject: [Mongrel] Rails Deploy Files - Remove? In-Reply-To: References: <7A2F6B27-4C5E-4948-9547-CBA3532DC2B6@lastonepicked.com> Message-ID: <1169248096.27405.1.camel@localhost.localdomain> On Fri, 2007-01-19 at 12:58 -0800, Jason A. Hoffman wrote: > On Jan 19, 2007, at 12:46 PM, Hunter Hillegas wrote: > > > So, now that we're using Mongrel and not the horrid FCGI, do I really > > need these files in my Rails apps: > > > > dispatch.fcgi > > dispatch.cgi > > .htaccess > > > > ?? > > > > The .htaccess file has rules for rewriting that look FCGI based. For > > Mongrel, I do my Apache re-writing in my config file, right? > > > > is there a reason to include these files at this point? > > > > Hunter > > > Hi Hunter, > > You don't need them. > > Regards, Jason Also, the .htaccess can cause problems if you are, for instance, proxying through Apache and serving /public statically (for caching) -- Jonathan Leighton, Web Developer Portfolio: http://jonathanleighton.com/ Personal: http://turnipspatch.com/ From jdz99 at hotmail.com Sat Jan 20 14:43:31 2007 From: jdz99 at hotmail.com (Jim Douglas) Date: Sat, 20 Jan 2007 19:43:31 +0000 Subject: [Mongrel] startup script at bootup Message-ID: How I can start mongrel apache in the order it must be started after a re-boot automatically? I am using "mongrel_rails cluster::start" in a script after a login...like this... cd /home/sa/workspace/studio mongrel_rails cluster::start /usr/local/apache2/bin/apachectl start Thanks, Jim _________________________________________________________________ Type your favorite song.? Get a customized station.? Try MSN Radio powered by Pandora. http://radio.msn.com/?icid=T002MSN03A07001 From msoulier at digitaltorque.ca Sun Jan 21 12:05:52 2007 From: msoulier at digitaltorque.ca (Michael P. Soulier) Date: Sun, 21 Jan 2007 12:05:52 -0500 Subject: [Mongrel] logging to stdout Message-ID: <20070121170551.GA23212@tigger.digitaltorque.ca> Hey, I'm using mongrel supervised via runit. I'd like to capture mongrel logs with svlogd, which just requires logging to stdout/stderr. But, the Rails app is logging in its own log directory. Is there a way to make both mongrel and Rails log to stdout/stderr? Thanks, Mike -- Michael P. Soulier "Any intelligent fool can make things bigger and more complex... It takes a touch of genius - and a lot of courage to move in the opposite direction." --Albert Einstein -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070121/d01d729a/attachment.bin From michael.dauria at gmail.com Sun Jan 21 14:57:17 2007 From: michael.dauria at gmail.com (Michael D'Auria) Date: Sun, 21 Jan 2007 14:57:17 -0500 Subject: [Mongrel] logging to stdout In-Reply-To: <20070121170551.GA23212@tigger.digitaltorque.ca> References: <20070121170551.GA23212@tigger.digitaltorque.ca> Message-ID: <1907e2ca0701211157g495ea26eg552e869ccc5911e3@mail.gmail.com> Chcek out the setting under config/environments/production.rb: # config.logger = SyslogLogger.new That should be able to take care of it for ya. .: MIchael :. On 1/21/07, Michael P. Soulier wrote: > > Hey, > > I'm using mongrel supervised via runit. I'd like to capture mongrel logs > with > svlogd, which just requires logging to stdout/stderr. But, the Rails app > is > logging in its own log directory. > > Is there a way to make both mongrel and Rails log to stdout/stderr? > > Thanks, > Mike > -- > Michael P. Soulier > "Any intelligent fool can make things bigger and more complex... It > takes a touch of genius - and a lot of courage to move in the opposite > direction." --Albert Einstein > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070121/a5afff01/attachment-0001.html From eden.li at gmail.com Sun Jan 21 21:15:30 2007 From: eden.li at gmail.com (Eden Li) Date: Mon, 22 Jan 2007 10:15:30 +0800 Subject: [Mongrel] startup script at bootup In-Reply-To: References: Message-ID: <565dbdd40701211815j4a9627f6ybd4d61db2a5fe7e3@mail.gmail.com> Depends on what unix you're using. In Linux you should look at how your flavor handles /etc/init.d scripts. What does 'uname -a' say? On 1/21/07, Jim Douglas wrote: > > How I can start mongrel apache in the order it must be started after a > re-boot automatically? > > I am using "mongrel_rails cluster::start" in a script after a login...like > this... > > cd /home/sa/workspace/studio > mongrel_rails cluster::start > /usr/local/apache2/bin/apachectl start > > Thanks, > Jim > > _________________________________________________________________ > Type your favorite song. Get a customized station. Try MSN Radio powered > by Pandora. http://radio.msn.com/?icid=T002MSN03A07001 > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070122/5718c66c/attachment.html From schoenm at earthlink.net Sun Jan 21 22:52:26 2007 From: schoenm at earthlink.net (Michael A. Schoen) Date: Sun, 21 Jan 2007 19:52:26 -0800 Subject: [Mongrel] Mongrel 1.0 final? Message-ID: <45B434FA.4060709@earthlink.net> I see that the Mongrel 1.0 has been posted, but I haven't seen an announcement -- did the gem slip out by mistake, or is 1.0 final? From ezmobius at gmail.com Sun Jan 21 23:20:59 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Sun, 21 Jan 2007 20:20:59 -0800 Subject: [Mongrel] Mongrel 1.0 final? In-Reply-To: <45B434FA.4060709@earthlink.net> References: <45B434FA.4060709@earthlink.net> Message-ID: On Jan 21, 2007, at 7:52 PM, Michael A. Schoen wrote: > I see that the Mongrel 1.0 has been posted, but I haven't seen an > announcement -- did the gem slip out by mistake, or is 1.0 final? > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > It's final. I think Zed is waiting to do a mongrel 1.0.1 release in the next few days to fit with rails strict release versioning practices ;) Cheers- -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From rogelio.samour at gmail.com Mon Jan 22 00:20:19 2007 From: rogelio.samour at gmail.com (Rogelio J. Samour) Date: Sun, 21 Jan 2007 23:20:19 -0600 Subject: [Mongrel] startup script at bootup In-Reply-To: <565dbdd40701211815j4a9627f6ybd4d61db2a5fe7e3@mail.gmail.com> References: <565dbdd40701211815j4a9627f6ybd4d61db2a5fe7e3@mail.gmail.com> Message-ID: Jim: Follow Coda's setup... http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you IT will show you how to do exactly what you're needing... _if_ you're using Fedora (or any of the RedHat flavors), Debian, etc... HTH, -rjs- On 1/21/07, Eden Li wrote: > Depends on what unix you're using. In Linux you should look at how your > flavor handles /etc/init.d scripts. What does 'uname -a' say? > > > On 1/21/07, Jim Douglas wrote: > > > > How I can start mongrel apache in the order it must be started after a > > re-boot automatically? > > > > I am using "mongrel_rails cluster::start" in a script after a login...like > > this... > > > > cd /home/sa/workspace/studio > > mongrel_rails cluster::start > > /usr/local/apache2/bin/apachectl start > > > > Thanks, > > Jim > > > > > _________________________________________________________________ > > Type your favorite song. Get a customized station. Try MSN Radio powered > > by Pandora. http://radio.msn.com/?icid=T002MSN03A07001 > > > > > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070121/a88c2479/attachment.html From cremes.devlist at mac.com Mon Jan 22 20:27:35 2007 From: cremes.devlist at mac.com (cremes.devlist at mac.com) Date: Mon, 22 Jan 2007 19:27:35 -0600 Subject: [Mongrel] Want feedback on Mongrel patch for handling partial PUT requests Message-ID: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> By default, Mongrel will delete the HTTP request body and short circuit calling any handlers if a request is interrupted or incomplete. Unfortunately, this breaks any attempt to correctly handle a partial PUT. (BTW, PUT is *way* more efficient for uploads compared to POST which requires a MIME parsing step.) So, about a month ago I wrote up some patches to Mongrel 0.3.18 that allowed Mongrel to properly handle partial PUT requests. I sent the patch & tests to Zed for comment but never really heard back. It occurred to me that there might be a better way to handle things, so here's my second stab at writing a patch that I hope will be accepted into the Mongrel trunk. This patch was written against Mongrel 1.0. The original patch detected if the request was a PUT and ran various special case code. This approach makes handling partial or interrupted requests in a generic way and pushes the responsibility for accepting or rejecting them back onto the handler. If there's no chance this will be accepted into trunk, please let me know. I'd be happy to provide this as a "plugin" to monkey-patch mongrel for any people interested in this functionality. So, the patch touches three (3) classes and makes minor modifications. 1. class HttpHandler Adds a single method called #accept_partial_requests? which is false by default since most handlers do NOT want to handle a partial request. Those that do can simply override this method in the subclass. Used in HttpServer#process_client for determining if a handler should get called. 2. class HttpRequest Changes the logic in the #read_body method so it no longer deletes the TempFile and sets @body to nil as a "signal" that the request was interrupted. Adds a #attr_reader called #interrupted? for use outside the class along with the appropriate initialization statement (this is the new "signal"). Lastly, adds a method called #cleanup which essentially restores the original activity from #read_body and deletes the TempFile. 3. class HttpServer Some logic changes to the #process_client method which is the main workhorse of the class. It deletes the original statement that short circuits the loop ( break if request.body == nil) and instead pushes that check to the loop invoking all the handlers. The handler loop now checks each handler to verify #handler.accept_partial_requests? before passing a partial request to the handler. If it's a complete request, the original calling semantics apply. This means all existing handlers would continue to function as they did before. Only those handlers which specifically override #accept_partial_requests? will ever get called with a partial/malformed request. I'm a little concerned that these extra checks would be a performance drag in the general case. Any feedback on improvements here would be much appreciated. Lastly, the end of the method then calls #request.cleanup to delete any lingering TempFile. Anyway, enough talk... time for the code. It's all listed below, though currently *untested*. I want to get feedback from Zed and the group before I take the extra step of adding and testing all of this (though I expect it to pass all tests just like the original patch). Thanks for your attention. cr ---- code below ---- module Mongrel class HttpHandler # NEW def accept_partial_requests? false end end class HttpRequest # NEW attr_reader :interrupted? def initialize # original code plus... self.interrupted? = false end # modify #read_body so it does NOT delete the @body if an exception is raised. def read_body(remain, total) begin # write the odd sized chunk first @params.http_body = read_socket(remain % Const::CHUNK_SIZE) remain -= @body.write(@params.http_body) update_request_progress(remain, total) # then stream out nothing but perfectly sized chunks until remain <= 0 or @socket.closed? # ASSUME: we are writing to a disk and these writes always write the requested amount @params.http_body = read_socket(Const::CHUNK_SIZE) remain -= @body.write(@params.http_body) update_request_progress(remain, total) end rescue Object STDERR.puts "ERROR reading http body: #$!" $!.backtrace.join("\n") @socket.close rescue Object self.interrupted? = true # NEW end end # NEW # clean up any lingering temp files def cleanup @body.delete if @body.class == Tempfile && interrupted? end end class HttpServer def process_client(client) begin # deleted for brevity while nparsed < data.length nparsed = parser.execute(params, data, nparsed) if parser.finished? # deleted for brevity if handlers # deleted for brevity # select handlers that want more detailed request notification notifiers = handlers.select { |h| h.request_notify } request = HttpRequest.new(params, client, notifiers) # break if request.body == nil ---- REMOVED # request is good so far, continue processing the response response = HttpResponse.new(client) unless request.interrupted? # NEW statement modifier # Process each handler in registered order until we run out or one finalizes the response. if request.interrupted? handlers.each do |handler| handler.process(request, nil) if handler.accept_partial_requests end else # ORIGINAL logic handlers.each do |handler| handler.process(request, response) break if response.done or client.closed? end end # NEW # In the case of large file uploads the user could close the socket, so the request is in a # partial state. Clean up after it by removing any TempFile that may exist. request.cleanup if request.interrupted? # And finally, if nobody closed the response off, we finalize it. unless response.done or client.closed? response.finished end else # brevity! end break #done else # deleted for brevity end end rescue EOFError,Errno::ECONNRESET,Errno::EPIPE,Errno::EINVAL,Errno::EBADF # deleted for brevity end end end end From ezmobius at gmail.com Mon Jan 22 21:31:34 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Mon, 22 Jan 2007 18:31:34 -0800 Subject: [Mongrel] Want feedback on Mongrel patch for handling partial PUT requests In-Reply-To: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> References: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> Message-ID: I would like to play with this a bit as it changes the way the mongrel_upload_progress does a request_aborted to cleanup. That plugin relies on the @body being nil to work but I think that could be worked around in your approach. Can you please send an svn diff of this file? I don't feel like copy pasting all that jazz. Thanks -Ezra On Jan 22, 2007, at 5:27 PM, cremes.devlist at mac.com wrote: > By default, Mongrel will delete the HTTP request body and short > circuit calling any handlers if a request is interrupted or > incomplete. Unfortunately, this breaks any attempt to correctly > handle a partial PUT. (BTW, PUT is *way* more efficient for uploads > compared to POST which requires a MIME parsing step.) So, about a > month ago I wrote up some patches to Mongrel 0.3.18 that allowed > Mongrel to properly handle partial PUT requests. I sent the patch & > tests to Zed for comment but never really heard back. > > It occurred to me that there might be a better way to handle things, > so here's my second stab at writing a patch that I hope will be > accepted into the Mongrel trunk. This patch was written against > Mongrel 1.0. The original patch detected if the request was a PUT and > ran various special case code. This approach makes handling partial > or interrupted requests in a generic way and pushes the > responsibility for accepting or rejecting them back onto the handler. > > If there's no chance this will be accepted into trunk, please let me > know. I'd be happy to provide this as a "plugin" to monkey-patch > mongrel for any people interested in this functionality. > > So, the patch touches three (3) classes and makes minor modifications. > > 1. class HttpHandler > Adds a single method called #accept_partial_requests? which is false > by default since most handlers do NOT want to handle a partial > request. Those that do can simply override this method in the > subclass. Used in HttpServer#process_client for determining if a > handler should get called. > > 2. class HttpRequest > Changes the logic in the #read_body method so it no longer deletes > the TempFile and sets @body to nil as a "signal" that the request was > interrupted. Adds a #attr_reader called #interrupted? for use outside > the class along with the appropriate initialization statement (this > is the new "signal"). Lastly, adds a method called #cleanup which > essentially restores the original activity from #read_body and > deletes the TempFile. > > 3. class HttpServer > Some logic changes to the #process_client method which is the main > workhorse of the class. It deletes the original statement that short > circuits the loop ( break if request.body == nil) and instead pushes > that check to the loop invoking all the handlers. The handler loop > now checks each handler to verify #handler.accept_partial_requests? > before passing a partial request to the handler. If it's a complete > request, the original calling semantics apply. This means all > existing handlers would continue to function as they did before. Only > those handlers which specifically override #accept_partial_requests? > will ever get called with a partial/malformed request. > > I'm a little concerned that these extra checks would be a performance > drag in the general case. Any feedback on improvements here would be > much appreciated. > > Lastly, the end of the method then calls #request.cleanup to delete > any lingering TempFile. > > > Anyway, enough talk... time for the code. It's all listed below, > though currently *untested*. I want to get feedback from Zed and the > group before I take the extra step of adding and testing all of this > (though I expect it to pass all tests just like the original patch). > > Thanks for your attention. > > cr > > ---- code below ---- > > module Mongrel > class HttpHandler > # NEW > def accept_partial_requests? > false > end > end > > class HttpRequest > # NEW > attr_reader :interrupted? > > def initialize > # original code plus... > self.interrupted? = false > end > > # modify #read_body so it does NOT delete the @body if an > exception is raised. > def read_body(remain, total) > begin > # write the odd sized chunk first > @params.http_body = read_socket(remain % Const::CHUNK_SIZE) > > remain -= @body.write(@params.http_body) > > update_request_progress(remain, total) > > # then stream out nothing but perfectly sized chunks > until remain <= 0 or @socket.closed? > # ASSUME: we are writing to a disk and these writes always > write the requested amount > @params.http_body = read_socket(Const::CHUNK_SIZE) > remain -= @body.write(@params.http_body) > > update_request_progress(remain, total) > end > rescue Object > STDERR.puts "ERROR reading http body: #$!" > $!.backtrace.join("\n") > @socket.close rescue Object > self.interrupted? = true # NEW > end > end > > # NEW > # clean up any lingering temp files > def cleanup > @body.delete if @body.class == Tempfile && interrupted? > end > end > > > class HttpServer > def process_client(client) > begin > # deleted for brevity > > while nparsed < data.length > nparsed = parser.execute(params, data, nparsed) > > if parser.finished? > # deleted for brevity > > if handlers > # deleted for brevity > > # select handlers that want more detailed request > notification > notifiers = handlers.select { |h| h.request_notify } > request = HttpRequest.new(params, client, notifiers) > > # break if request.body == nil ---- REMOVED > > # request is good so far, continue processing the > response > response = HttpResponse.new(client) unless > request.interrupted? # NEW statement modifier > > # Process each handler in registered order until we > run out or one finalizes the response. > if request.interrupted? > handlers.each do |handler| > handler.process(request, nil) if > handler.accept_partial_requests > end > else > # ORIGINAL logic > handlers.each do |handler| > handler.process(request, response) > break if response.done or client.closed? > end > end > > # NEW > # In the case of large file uploads the user could > close the socket, so the request is in a > # partial state. Clean up after it by removing any > TempFile that may exist. > request.cleanup if request.interrupted? > > # And finally, if nobody closed the response off, we > finalize it. > unless response.done or client.closed? > response.finished > end > else > # brevity! > end > > break #done > else > # deleted for brevity > end > end > rescue > EOFError,Errno::ECONNRESET,Errno::EPIPE,Errno::EINVAL,Errno::EBADF > # deleted for brevity > end > end > end > end > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From zedshaw at zedshaw.com Tue Jan 23 00:48:21 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Mon, 22 Jan 2007 21:48:21 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released Message-ID: <20070122214821.4804e941.zedshaw@zedshaw.com> Alright folks, after nearly a month of pounding and beating up the Mongrel 1.0 RC1 release we're putting out the official 1.0.1 release. Read all about it at the (much funnier) news posting: http://mongrel.rubyforge.org/news.html For those people in a hurry, the gems should hit the mirrors and you can install using your usual commands. Refer the the above page for more help. I'm really happy with this release, but as usual shoot me bugs and we'll fix them up. There is already a planned release soon for a minor tweak to the win32 gem dependencies, but that won't impact anyone. ONE YEAR ALMOST EXACTLY I went and looked, and it seems I started working on Mongrel officially in January last year, with the site being posted on Feb 12th 2006. Seems kind of weird that it was a full year of development, but that's the reality of fast paced open source development. YOU FOLKS ROCK Thank you to everyone who's helped out and enjoyed being in on the jokes. I'm hoping to plan a few nice gestures for contributors and the faithful users. I'm planning unholy retribution for the non-believers ;-> I'm also going to write a few blog postings over the next month as a retrospective on Mongrel and what it's been like this last year. I think it'd be really cool if people on the list who benefit from Mongrel can thank the people who wrote docs, submitted patches, bugs, and got Mongrel to where it is now. And now, a break while the next big thing is planned. All suggestions welcome (even just "stay the course"). Have fun, and hopefully I'll meet people at the next RailsConf. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From zedshaw at zedshaw.com Tue Jan 23 01:09:13 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Mon, 22 Jan 2007 22:09:13 -0800 Subject: [Mongrel] Want feedback on Mongrel patch for handling partial PUT requests In-Reply-To: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> References: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> Message-ID: <20070122220913.27b15e09.zedshaw@zedshaw.com> On Mon, 22 Jan 2007 19:27:35 -0600 cremes.devlist at mac.com wrote: > By default, Mongrel will delete the HTTP request body and short > circuit calling any handlers if a request is interrupted or > incomplete. Unfortunately, this breaks any attempt to correctly > handle a partial PUT. (BTW, PUT is *way* more efficient for uploads > compared to POST which requires a MIME parsing step.) So, about a > month ago I wrote up some patches to Mongrel 0.3.18 that allowed > Mongrel to properly handle partial PUT requests. I sent the patch & > tests to Zed for comment but never really heard back. I'll take a look this weekend, but you really should have tests to go with this just to make sure I'm trying it the way you are trying it. Also, seeing how it can improve or change the upload progress problem (the fact that it sucks) would be a good first step. Otherwise, I'll look and get back to you. Sorry I didn't get in touch with you earlier. Just been busy. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From jason at joyent.com Mon Jan 22 22:18:16 2007 From: jason at joyent.com (Jason A. Hoffman) Date: Mon, 22 Jan 2007 19:18:16 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> On Jan 22, 2007, at 9:48 PM, Zed A. Shaw wrote: > I think it'd be really cool if people on the list who benefit from > Mongrel can thank the people who wrote docs, submitted patches, > bugs, and got Mongrel to where it is now. Great work Zed. And thank you Zed and thank you everyone who has made Mongrel what it is today. Very nice work. Regards, Jason From ezmobius at gmail.com Mon Jan 22 22:36:06 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Mon, 22 Jan 2007 19:36:06 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <9E15BC9D-3BC0-4BA5-A222-C09008EB0FF9@brainspl.at> On Jan 22, 2007, at 9:48 PM, Zed A. Shaw wrote: > Alright folks, after nearly a month of pounding and beating up the > Mongrel 1.0 > RC1 release we're putting out the official 1.0.1 release. > Rock \m/ Thanks for mongrel Zed! Cheers- -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From _ at whats-your.name Mon Jan 22 22:41:28 2007 From: _ at whats-your.name (carmen) Date: Mon, 22 Jan 2007 22:41:28 -0500 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> Message-ID: <20070123034128.GB941@replic.net> On Mon Jan 22, 2007 at 07:18:16PM -0800, Jason A. Hoffman wrote: > > On Jan 22, 2007, at 9:48 PM, Zed A. Shaw wrote: > > > I think it'd be really cool if people on the list who benefit from > > Mongrel can thank the people who wrote docs, submitted patches, > > bugs, and got Mongrel to where it is now. > > Great work Zed. > > And thank you Zed and thank you everyone who has made Mongrel what it > is today. Very nice work. yep thanks indeed. had a helluva time upgradeing to 1.0.1, but im certain it isnt zeds fault - lack of atomic gem file updates on mirrors/sources, and rubygems thinks /bin/install exists when it doesnt > > Regards, Jason > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From cremes.devlist at mac.com Mon Jan 22 22:59:51 2007 From: cremes.devlist at mac.com (cremes.devlist at mac.com) Date: Mon, 22 Jan 2007 21:59:51 -0600 Subject: [Mongrel] Want feedback on Mongrel patch for handling partial PUT requests In-Reply-To: References: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> Message-ID: <1AC06751-168C-4E79-BECD-0842B9CC86DD@mac.com> On Jan 22, 2007, at 8:31 PM, Ezra Zygmuntowicz wrote: > > I would like to play with this a bit as it changes the way the > mongrel_upload_progress does a request_aborted to cleanup. That > plugin relies on the @body being nil to work but I think that could > be worked around in your approach. > > Can you please send an svn diff of this file? I don't feel like copy > pasting all that jazz. > > Thanks > -Ezra > > > On Jan 22, 2007, at 5:27 PM, cremes.devlist at mac.com wrote: > >> By default, Mongrel will delete the HTTP request body and short >> circuit calling any handlers if a request is interrupted or >> incomplete. Unfortunately, this breaks any attempt to correctly >> handle a partial PUT. (BTW, PUT is *way* more efficient for uploads >> compared to POST which requires a MIME parsing step.) So, about a >> month ago I wrote up some patches to Mongrel 0.3.18 that allowed >> Mongrel to properly handle partial PUT requests. I sent the patch & >> tests to Zed for comment but never really heard back. >> (snip) I emailed the patches to Ezra. If anyone else wants them, please email me off list. I found a few bugs & problems after I actually typed this stuff in and ran it. Those bugs are fixed in the patches. cr From _ at whats-your.name Mon Jan 22 23:02:33 2007 From: _ at whats-your.name (carmen) Date: Mon, 22 Jan 2007 23:02:33 -0500 Subject: [Mongrel] [1.0.1] rubygems is a bug Message-ID: <20070123040233.GA21843@replic.net> heres a summary of the hassles i ran into when upgrading to 1.0.1, in case they occur to anyone else: (first try) gem update mongrel (1) Y (2) y y y (or thereabouts) ..everything appears to go fine. but mongy is giving _weird_ errors like this: Mon Jan 22 21:45:36 -0500 2007: ERROR: undefined method `request_uri' for # Mon Jan 22 21:50:11 -0500 2007: ERROR: undefined method `request_uri' for # apparently "you might have downloaded a broken copy from a partially updated mirror", so (second try) /usr/lib64/ruby/site_ruby/1.8/rubygems.rb:196:in `activate': can't activate mongrel (= 1.0), already activated mongrel-1.0.1] (Gem::Exception) apparently "you sometimes get weird errors because of the compiled gems" so uninstall all versions of mongrel (third try) same as previous 'activate' error, only this time with fastthread (fourth try) everything appears to go ok, but then this error: /usr/lib64/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require': no such file to load -- http11 (MissingSourceFile) (fifth try) trying again to inspect the logs closer. then notice this: make: /bin/install: Command not found make: *** [/usr/lib64/ruby/gems/1.8/gems/mongrel-1.0.1/lib/http11.so] Error 127 run 'eq b install', which searches gentoo's file metadata looking for anything that owns it. theres only a /usr/bin/install, and not wanting to figure out why gems thinks /bin/install should exist, i just symlink it in (sixth try) omg, it works. for each of the 6 tries above, the following inconconvenience also existed: it asked me what platform im on, twice. once for fastthread and once for mongrel. and the integers for the platform were differnet for both so i chose ruby (even tho its really posix/linux/bsd vs win32, you get offered a ruby option and a win32 option for the gem even tho the ruby one isnt pure ruby, its ruby+C, so maybe it shouldnt be named that?), so it seems rubygems not only can't do this: require "rbconfig" include Config if %w{darwin bsd linux mingw}.include? CONFIG["arch"] (select ruby option), it doesnt cache my choices.. thanks for wasting 35 of my minutes rubygems! i'd submit a patch, but now that mongrel is perfect, i can't imagine neednig rubygems again for anything.. cheers, and thanks again for a great web server C From cremes.devlist at mac.com Mon Jan 22 23:03:18 2007 From: cremes.devlist at mac.com (cremes.devlist at mac.com) Date: Mon, 22 Jan 2007 22:03:18 -0600 Subject: [Mongrel] Want feedback on Mongrel patch for handling partial PUT requests In-Reply-To: <20070122220913.27b15e09.zedshaw@zedshaw.com> References: <61CB6C29-B8BB-4116-95A2-48AFAA83A551@mac.com> <20070122220913.27b15e09.zedshaw@zedshaw.com> Message-ID: <25F9B15C-D7AB-4788-BF0A-73375F9103E7@mac.com> On Jan 23, 2007, at 12:09 AM, Zed A. Shaw wrote: > On Mon, 22 Jan 2007 19:27:35 -0600 > cremes.devlist at mac.com wrote: > >> By default, Mongrel will delete the HTTP request body and short >> circuit calling any handlers if a request is interrupted or >> incomplete. Unfortunately, this breaks any attempt to correctly >> handle a partial PUT. (BTW, PUT is *way* more efficient for uploads >> compared to POST which requires a MIME parsing step.) So, about a >> month ago I wrote up some patches to Mongrel 0.3.18 that allowed >> Mongrel to properly handle partial PUT requests. I sent the patch & >> tests to Zed for comment but never really heard back. > > I'll take a look this weekend, but you really should have tests to > go with this just to make sure I'm trying it the way you are trying > it. Here are the patches against Mongrel 1.0 plus a test file. -------------- next part -------------- A non-text attachment was scrubbed... Name: test_upload.rb Type: text/x-ruby-script Size: 7680 bytes Desc: not available Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070122/d93f08dc/attachment-0001.bin -------------- next part -------------- A non-text attachment was scrubbed... Name: handlers.diff Type: application/octet-stream Size: 267 bytes Desc: not available Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070122/d93f08dc/attachment-0002.obj -------------- next part -------------- A non-text attachment was scrubbed... Name: mongrel.diff Type: application/octet-stream Size: 2951 bytes Desc: not available Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070122/d93f08dc/attachment-0003.obj -------------- next part -------------- > Also, seeing how it can improve or change the upload progress > problem (the fact that it sucks) would be a good first step. That problem was a bit out of scope for me so I don't think this helps much. The common assumption is that people are using POST for uploads which this patch doesn't address at all. > Otherwise, I'll look and get back to you. Sorry I didn't get in > touch with you earlier. Just been busy. No problem; we're all busy! cr From mail at flydown.org Tue Jan 23 00:03:06 2007 From: mail at flydown.org (Michele) Date: Tue, 23 Jan 2007 06:03:06 +0100 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070123034128.GB941@replic.net> References: <20070122214821.4804e941.zedshaw@zedshaw.com> <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> <20070123034128.GB941@replic.net> Message-ID: Great work Zed! Thank you and thanks to everyone who contributed to this amazing piece of code! Best, - Michele -- Michele Finotto http://finotto.org/ http://16bugs.com/ On Jan 23, 2007, at 4:41 , carmen wrote: > On Mon Jan 22, 2007 at 07:18:16PM -0800, Jason A. Hoffman wrote: >> >> On Jan 22, 2007, at 9:48 PM, Zed A. Shaw wrote: >> >>> I think it'd be really cool if people on the list who benefit from >>> Mongrel can thank the people who wrote docs, submitted patches, >>> bugs, and got Mongrel to where it is now. >> >> Great work Zed. >> >> And thank you Zed and thank you everyone who has made Mongrel what it >> is today. Very nice work. > > yep thanks indeed. had a helluva time upgradeing to 1.0.1, but im > certain it isnt zeds fault - lack of atomic gem file updates on > mirrors/sources, and rubygems thinks /bin/install exists when it > doesnt > >> >> Regards, Jason From anjan.summit at gmail.com Tue Jan 23 00:53:46 2007 From: anjan.summit at gmail.com (anjan bacchu) Date: Mon, 22 Jan 2007 21:53:46 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: > I'm really happy with this release, but as usual shoot me bugs and we'll > fix them up. There is already a planned release soon for a minor tweak to > the win32 gem dependencies, but that won't impact anyone. Does that mean that win32 guys should wait for some more time ? > I think it'd be really cool if people on the list who benefit from Mongrel > can thank the people who wrote docs, submitted patches, bugs, and got > Mongrel to where it is now. Thanks to all the folks who participated on the list. It's been a good learning process just reading the list. Thanks to the folk who made this possible. Thanks Zed and I look forward to the blog posts. And now, a break while the next big thing is planned. All suggestions > welcome (even just "stay the course"). > > I hope to meet you at Portland. BR, ~A -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070122/7135d3b3/attachment.html From luislavena at gmail.com Tue Jan 23 01:09:57 2007 From: luislavena at gmail.com (Luis Lavena) Date: Tue, 23 Jan 2007 03:09:57 -0300 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <71166b3b0701222209m4249ba84x80016e42303b1312@mail.gmail.com> On 1/23/07, anjan bacchu wrote: > > > > I'm really happy with this release, but as usual shoot me bugs and we'll > fix them up. There is already a planned release soon for a minor tweak to > the win32 gem dependencies, but that won't impact anyone. > > Does that mean that win32 guys should wait for some more time ? > Actually no, the 1.0.1 gem for mswin32 is already on rubyforge (guess it should be spread to the mirrors). So start using it. > > And now, a break while the next big thing is planned. All suggestions > welcome (even just "stay the course"). > > > > As for me about suggestions, I'll like to heard them for win32 too ;-) -- Luis Lavena Multimedia systems - Leaders are made, they are not born. They are made by hard effort, which is the price which all of us must pay to achieve any goal that is worthwhile. Vince Lombardi From thewoolleyman at gmail.com Tue Jan 23 01:41:53 2007 From: thewoolleyman at gmail.com (Chad Woolley) Date: Mon, 22 Jan 2007 23:41:53 -0700 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: On 1/22/07, Zed A. Shaw wrote: > Thank you to everyone who's helped out and enjoyed being in on the jokes. I'm hoping to plan a few nice gestures for contributors and the faithful users. Great job, Zed and everyone... > I'm planning unholy retribution for the non-believers ;-> I don't EVEN want to find out what your idea of unholy retribution is. I'm a believer, just like the Monkees! -- Chad W. From jarkko at jlaine.net Tue Jan 23 01:39:14 2007 From: jarkko at jlaine.net (Jarkko Laine) Date: Tue, 23 Jan 2007 08:39:14 +0200 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> Message-ID: <02DA221A-E9E2-42FB-ACC3-75C5B84C2688@jlaine.net> On 23.1.2007, at 5.18, Jason A. Hoffman wrote: > > On Jan 22, 2007, at 9:48 PM, Zed A. Shaw wrote: > >> I think it'd be really cool if people on the list who benefit from >> Mongrel can thank the people who wrote docs, submitted patches, >> bugs, and got Mongrel to where it is now. > > Great work Zed. > > And thank you Zed and thank you everyone who has made Mongrel what it > is today. Very nice work. Ditto. Cheers, mates! //jarkko -- Jarkko Laine http://jlaine.net http://dotherightthing.com http://www.railsecommerce.com http://odesign.fi -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 2417 bytes Desc: not available Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070123/0244b748/attachment.bin From philippe.lachaise at gmail.com Tue Jan 23 03:36:13 2007 From: philippe.lachaise at gmail.com (philippe lachaise) Date: Tue, 23 Jan 2007 09:36:13 +0100 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <02DA221A-E9E2-42FB-ACC3-75C5B84C2688@jlaine.net> References: <20070122214821.4804e941.zedshaw@zedshaw.com> <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> <02DA221A-E9E2-42FB-ACC3-75C5B84C2688@jlaine.net> Message-ID: Congratulations ! I'll take advantage of 1.0.1 to reiterate my proposal of French translation. First time I did so I was a bit intimidated by the translation toolset you suggested (webgen/svn). Now that the doggy is no longer a pup, the documerntation is more likely to remain stable long enough to justify the effort. In addition, I'm about to start using RoR/Mongrel professionally (as opposed to merely playing around with it) with more time to invest in this technology. So would it be possible for the Mongrel team to : 1) Single out docs that are still relevant and stable enough to warrant translation (and weed out the rest ?). 2) Provide technical how-to for translating part of the website (without messing it up :). Translated documentation would certainly foster Mongrel adoption in France (some people are a bit touchy about national identity, or they just can't read English). I guess other people might want to translate into other languages (I seem to remember an Italian proposal) so maybe it would be worth having a translators page on the website with relevant instructions. Regards, Philippe LACHAISE -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070123/da5f5aa7/attachment.html From james2mccarthy at gmail.com Tue Jan 23 06:10:47 2007 From: james2mccarthy at gmail.com (James McCarthy) Date: Tue, 23 Jan 2007 11:10:47 +0000 Subject: [Mongrel] Mongrel-users Digest, Vol 12, Issue 22 In-Reply-To: References: Message-ID: On 1/23/07, mongrel-users-request at rubyforge.org < mongrel-users-request at rubyforge.org> wrote: > > > Date: Mon, 22 Jan 2007 21:48:21 -0800 > From: "Zed A. Shaw" > Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released > To: mongrel-users at rubyforge.org > Message-ID: <20070122214821.4804e941.zedshaw at zedshaw.com> > Content-Type: text/plain; charset=US-ASCII > > Alright folks, after nearly a month of pounding and beating up the Mongrel > 1.0 > RC1 release we're putting out the official 1.0.1 release. > > Read all about it at the (much funnier) news posting: > > http://mongrel.rubyforge.org/news.html > > For those people in a hurry, the gems should hit the mirrors and you can > install using your usual commands. Refer the the above page for more help. > > I'm really happy with this release, but as usual shoot me bugs and we'll > fix them up. There is already a planned release soon for a minor tweak to > the win32 gem dependencies, but that won't impact anyone. > > ONE YEAR ALMOST EXACTLY > > I went and looked, and it seems I started working on Mongrel officially in > January last year, with the site being posted on Feb 12th 2006. Seems kind > of weird that it was a full year of development, but that's the reality of > fast paced open source development. > > YOU FOLKS ROCK > > Thank you to everyone who's helped out and enjoyed being in on the > jokes. I'm hoping to plan a few nice gestures for contributors and the > faithful users. I'm planning unholy retribution for the non-believers > ;-> I'm also going to write a few blog postings over the next month as a > retrospective on Mongrel and what it's been like this last year. > > I think it'd be really cool if people on the list who benefit from Mongrel > can thank the people who wrote docs, submitted patches, bugs, and got > Mongrel to where it is now. > > And now, a break while the next big thing is planned. All suggestions > welcome (even just "stay the course"). > > Have fun, and hopefully I'll meet people at the next RailsConf. > > -- > Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu > http://www.zedshaw.com/ > http://www.awprofessional.com/title/0321483502 -- The Mongrel Book > http://mongrel.rubyforge.org/ > http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. > > ------------------------------ > Zed (and everybody who has contributed), Thank you, Mongrel is an awesome mutt. James -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070123/e5c153e0/attachment-0001.html From zedshaw at zedshaw.com Tue Jan 23 11:59:43 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Tue, 23 Jan 2007 08:59:43 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: References: <20070122214821.4804e941.zedshaw@zedshaw.com> <1C7992F8-365E-4295-93C5-FAFE3B996039@joyent.com> <02DA221A-E9E2-42FB-ACC3-75C5B84C2688@jlaine.net> Message-ID: <20070123085943.d8dd1f98.zedshaw@zedshaw.com> On Tue, 23 Jan 2007 09:36:13 +0100 "philippe lachaise" wrote: > Congratulations ! > > I'll take advantage of 1.0.1 to reiterate my proposal of French translation. > > First time I did so I was a bit intimidated by the translation toolset you > suggested (webgen/svn). > Now that the doggy is no longer a pup, the documerntation is more likely to > remain stable long enough to justify the effort. In addition, I'm about to > start using RoR/Mongrel professionally (as opposed to merely playing around > with it) with more time to invest in this technology. Yes! That'd be great. Send me a message off list so I can get you setup and we can talk about what would be best. > So would it be possible for the Mongrel team to : > 1) Single out docs that are still relevant and stable enough to warrant > translation (and weed out the rest ?). > 2) Provide technical how-to for translating part of the website (without > messing it up :). Yep, I can help, but maybe we can do an e-mail in French to select groups to solicit feedback. I can also look at the webalizer stats (you can too) and see what the most popular pages are: http://mongrel.rubyforge.org/usage/usage_200701.html > Translated documentation would certainly foster Mongrel adoption in France > (some people are a bit touchy about national identity, or they just can't > read English). Yep, I'd also be curious about other translations. Thanks for the offer, let me know when you can start working on it and I'll help you with the technical stuff. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From stonelists at gmail.com Tue Jan 23 09:43:43 2007 From: stonelists at gmail.com (Andrew Stone) Date: Tue, 23 Jan 2007 09:43:43 -0500 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: A huge thanks to Zed and the contributors to Mongrel. Mongrel makes Rails an even more attractive option. Without it, I doubt I could have sold the idea of switching. Thanks again! -andy -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070123/34b61a00/attachment.html From joe.cairns at gmail.com Tue Jan 23 09:54:25 2007 From: joe.cairns at gmail.com (Joe Cairns) Date: Tue, 23 Jan 2007 09:54:25 -0500 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <2e1bf16b0701230654x536837bdwc1160b03196800e4@mail.gmail.com> I concur completely with Andrew, and I hate to jump on the dog pile late, but kudos to Zed and the gang! This is a huge milestone for Mongrel. I was quickly losing faith in Rails using FastCGI, and Mongrel came in just at the right time to save the day for me. Ever since I switched, my phantom 500 errors disappeared, and there was a huge speed increase. Sorry to sound like an infomercial there, just wanted to say thanks and congrats! Joe -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070123/cb2b91fc/attachment.html From wayneeseguin at gmail.com Tue Jan 23 10:10:09 2007 From: wayneeseguin at gmail.com (Wayne E. Seguin) Date: Tue, 23 Jan 2007 10:10:09 -0500 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <81997172-606E-4E01-B272-4F57BD61CF89@gmail.com> Zed et. all, Phenomenal Job! Thanks for all the hard work and dedication to create such a great piece of software. Zed, I especially enjoyed your use of a Ragel state macine to make the system solid. (Mongrel, for those hard to reject errors!) Thank you all!!! ~Wayne On Jan 23, 2007, at 00:48 , Zed A. Shaw wrote: > I think it'd be really cool if people on the list who benefit from > Mongrel can thank the people who wrote docs, submitted patches, > bugs, and got Mongrel to where it is now. From pberry at gmail.com Tue Jan 23 10:36:24 2007 From: pberry at gmail.com (Patrick Berry) Date: Tue, 23 Jan 2007 07:36:24 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: On 1/22/07, Zed A. Shaw wrote: > > Alright folks, after nearly a month of pounding and beating up the Mongrel > 1.0 > RC1 release we're putting out the official 1.0.1 release. This is great news. We (CSU, Chico) haven't made the migration from Apache+FastCGI yet, but we are chomping at the bit (long story that hopefully will contribute a little to the docs) or rather gnawing at the bone I guess. "Stay the course." Pat -- http://blogs.csuchico.edu/ik/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070123/b5270802/attachment.html From jamesludlow at gmail.com Tue Jan 23 10:46:02 2007 From: jamesludlow at gmail.com (JDL) Date: Tue, 23 Jan 2007 09:46:02 -0600 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: On 1/22/07, Zed A. Shaw wrote: > I think it'd be really cool if people on the list who benefit from Mongrel can thank the people who wrote docs, submitted patches, bugs, and got Mongrel to where it is now. Indeed. Thank you to everyone involved. It's so nice to be able to essentially ignore my server and assume that it's just going to work properly. DiscgolfTV.com [1] has been running mongrel in production since version 0.3.12.4 with pound directing traffic on the front end. I've had very few issues, and nothing that I couldn't work out easily enough. So yeah. Thank you. -- James [1] http://www.discgolftv.com/ (Work safe, but there is audio -- watch your volume if you click on that.) From donald.ball at nashville.gov Tue Jan 23 10:49:38 2007 From: donald.ball at nashville.gov (Ball, Donald A Jr (Library)) Date: Tue, 23 Jan 2007 09:49:38 -0600 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released Message-ID: <918A0DD3EFA7F248BFBF447187F8A93214AD10@HOBVSISMS01.nashville.org> > > Does that mean that win32 guys should wait for some more time ? > > > > Actually no, the 1.0.1 gem for mswin32 is already on > rubyforge (guess it should be spread to the mirrors). > > So start using it. Er, so what are the upcoming tweaks Zed alluded to? > > > And now, a break while the next big thing is planned. All > > > suggestions > > welcome (even just "stay the course"). > > As for me about suggestions, I'll like to heard them for win32 too ;-) Sure... cluster support on win32 would be pretty special, especially if bundled with pen or something else for load balancing. - donald From mi-mongrel at moensolutions.com Tue Jan 23 11:11:59 2007 From: mi-mongrel at moensolutions.com (Michael Moen) Date: Tue, 23 Jan 2007 08:11:59 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <0EDF5EEA-ECF6-4184-9CE6-2D4179FF1F3B@moensolutions.com> On Jan 22, 2007, at 9:48 PM, Zed A. Shaw wrote: > Alright folks, after nearly a month of pounding and beating up the > Mongrel 1.0 > RC1 release we're putting out the official 1.0.1 release. Zed, mental, Ezra and the rest of the contributors, you guys rock. From njvack at wisc.edu Tue Jan 23 11:04:52 2007 From: njvack at wisc.edu (Nathan Vack) Date: Tue, 23 Jan 2007 10:04:52 -0600 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <20070122214821.4804e941.zedshaw@zedshaw.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> Message-ID: <63ED53BF-F09A-42C2-A57B-949102C9A73D@wisc.edu> On Jan 22, 2007, at 11:48 PM, Zed A. Shaw wrote: > YOU FOLKS ROCK Yeah. Zed and all the contributors, ESPECIALLY the documentation writers (without you, I would cry) -- you folks do, indeed, rock. Thanks for making it easy for Rails to run without sucking! -Nate From luislavena at gmail.com Tue Jan 23 13:24:15 2007 From: luislavena at gmail.com (Luis Lavena) Date: Tue, 23 Jan 2007 15:24:15 -0300 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <918A0DD3EFA7F248BFBF447187F8A93214AD10@HOBVSISMS01.nashville.org> References: <918A0DD3EFA7F248BFBF447187F8A93214AD10@HOBVSISMS01.nashville.org> Message-ID: <71166b3b0701231024h3a6167bat20b185b55e503ee6@mail.gmail.com> On 1/23/07, Ball, Donald A Jr (Library) wrote: > > > Does that mean that win32 guys should wait for some more time ? > > > > > > > Actually no, the 1.0.1 gem for mswin32 is already on > > rubyforge (guess it should be spread to the mirrors). > > > > So start using it. > > Er, so what are the upcoming tweaks Zed alluded to? > A few dependencies fixes and minor things, nothing that will brake your setup or anything. > > > > And now, a break while the next big thing is planned. All > > > > suggestions > > > welcome (even just "stay the course"). > > > > As for me about suggestions, I'll like to heard them for win32 too ;-) > > Sure... cluster support on win32 would be pretty special, especially if > bundled with pen or something else for load balancing. > Yeah, cluster is in the near TODO list for mongrel_service. Basically it will parse the config/mongrel_cluster.yml and spawn all the needed process. Also, I must add, will automaticaly monitor and re-spawn dead processes, how cool is that? Ah? ;-) pen or pound is a "no no" on windows. they require cygwin compatibility layer, which is a waste of performance. I've implemented a simple TCP balancer solution for one of our customers, but its under contract, I hope could convince them to release it Open-Source and we will support branch witht he internal version, still yet to figure out this... I'm glad that I'm not the only one using (or forced to use) win32! At least we drop some useful tools there! (ruby+rails+mongrel) :-) A bit late: congrats Zed! Happy birthday Mongrel, good Dog! :-D -- Luis Lavena Multimedia systems - Leaders are made, they are not born. They are made by hard effort, which is the price which all of us must pay to achieve any goal that is worthwhile. Vince Lombardi PS: Zed, I want my working with rails recomendations too! :-D From codeturkey at comcast.net Tue Jan 23 13:29:03 2007 From: codeturkey at comcast.net (Steven Hansen) Date: Tue, 23 Jan 2007 10:29:03 -0800 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <0EDF5EEA-ECF6-4184-9CE6-2D4179FF1F3B@moensolutions.com> References: <20070122214821.4804e941.zedshaw@zedshaw.com> <0EDF5EEA-ECF6-4184-9CE6-2D4179FF1F3B@moensolutions.com> Message-ID: <45B653EF.6020206@comcast.net> > > Zed, mental, Ezra and the rest of the contributors, you guys rock. > _______________________________________________ > I definitely second that! My thanks goes out to all the Mongrelians. -Steven From g.vishnu at gmail.com Tue Jan 23 14:16:19 2007 From: g.vishnu at gmail.com (Vishnu Gopal) Date: Wed, 24 Jan 2007 00:46:19 +0530 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released In-Reply-To: <45B653EF.6020206@comcast.net> References: <20070122214821.4804e941.zedshaw@zedshaw.com> <0EDF5EEA-ECF6-4184-9CE6-2D4179FF1F3B@moensolutions.com> <45B653EF.6020206@comcast.net> Message-ID: Thanks to everybody on the Mongrel team. We at SlideShare really appreciate this tiny rocking server :) Vish On 1/23/07, Steven Hansen wrote: > > > > > Zed, mental, Ezra and the rest of the contributors, you guys rock. > > _______________________________________________ > > > > I definitely second that! My thanks goes out to all the Mongrelians. > > > -Steven > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From lists at lastonepicked.com Wed Jan 24 00:53:39 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Tue, 23 Jan 2007 21:53:39 -0800 Subject: [Mongrel] Rails App on Mongrel+Apache Stops Listening Message-ID: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> Howdy, I'm trying to debug a situation where a Rails app running on Mongrel +Apache stops listening to requests. Restarting Mongrel and Apache brings it back to life. First off, here's some info on versions, etc...: Red Hat Enterprise Linux ES release 3 (Taroon Update 8) ruby 1.8.5 (2006-12-04 patchlevel 2) [x86_64-linux] Mongrel 1.0.1 Rails 1.2.1 fastthread (0.6.2) Basically, after about a day or so, the Web app stops responding. Load on the machine is about 0.05-0.10 during this time - low. Memory usage is solid but there is still some physical RAM available - it's not out of RAM. Here's some log info: Apache Log: [Tue Jan 23 03:00:03 2007] [error] (111)Connection refused: proxy: HTTP: attempt to connect to 127.0.0.1:8003 (127.0.0.1) failed [Tue Jan 23 03:00:03 2007] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1) [Tue Jan 23 03:00:03 2007] [error] (111)Connection refused: proxy: HTTP: attempt to connect to 127.0.0.1:8000 (127.0.0.1) failed [Tue Jan 23 03:00:03 2007] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1) [Tue Jan 23 03:00:03 2007] [error] (111)Connection refused: proxy: HTTP: attempt to connect to 127.0.0.1:8001 (127.0.0.1) failed [Tue Jan 23 03:00:03 2007] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1) [Tue Jan 23 03:00:03 2007] [error] (111)Connection refused: proxy: HTTP: attempt to connect to 127.0.0.1:8002 (127.0.0.1) failed [Tue Jan 23 03:00:03 2007] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1) [Tue Jan 23 03:00:03 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:08 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:08 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:09 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:09 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:11 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:12 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state [Tue Jan 23 03:00:14 2007] [error] proxy: BALANCER: (balancer:// fatwreck). All workers are in error state The Mongrel log doesn't have anything in it of note. Just a USR2 signal from when I restarted it. I've got four Mongrels running and except for when it is in this error state, it works great. I'm interested to hear any suggestions on what to check. FYI, this has been happening LESS often since Mongrel 1.0RC1. Thanks, Hunter From pberry at gmail.com Wed Jan 24 01:04:49 2007 From: pberry at gmail.com (Patrick Berry) Date: Tue, 23 Jan 2007 22:04:49 -0800 Subject: [Mongrel] Rails App on Mongrel+Apache Stops Listening In-Reply-To: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> References: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> Message-ID: On 1/23/07, Hunter Hillegas wrote: > Howdy, > > I'm trying to debug a situation where a Rails app running on Mongrel > +Apache stops listening to requests. Restarting Mongrel and Apache > brings it back to life. > > First off, here's some info on versions, etc...: > > Red Hat Enterprise Linux ES release 3 (Taroon Update 8) Are you running stock apache? If so are you running something between httpd and the mongrel cluster? Pat From zedshaw at zedshaw.com Wed Jan 24 04:07:04 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Wed, 24 Jan 2007 01:07:04 -0800 Subject: [Mongrel] Rails App on Mongrel+Apache Stops Listening In-Reply-To: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> References: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> Message-ID: <20070124010704.d4243a37.zedshaw@zedshaw.com> On Tue, 23 Jan 2007 21:53:39 -0800 Hunter Hillegas wrote: > Howdy, > > I'm trying to debug a situation where a Rails app running on Mongrel > +Apache stops listening to requests. Restarting Mongrel and Apache > brings it back to life. > > First off, here's some info on versions, etc...: Here's the shortlist of stuff so far that can cause this: 1) Using the stock mysql.rb that comes with rails rather than using the compiled mysql gem. 2) Use a pstore for sessions, or actually trying to negotiate file locking in general. 3) Trying to resolve dns queries against a slow DNS server or broken one. 4) Using memcached and putting keys in it with a space or \0 char in them (memcached don't like that and will block the world). 5) An interesting new one is having Monit check the mongrel port on sites with long running requests. What happens is since rails blocks further requests during these requests, and monit is typically told to restart when they're slow, you'll get frequent "slow" requests so monit will frequently restart mongrels for no apparent reason. Ways to debug this include: 1) Using lsof -i -P to see what's open. 2) Attaching to the stuck process with gdb and using some of the Ruby gdb scripts out there to force an exception to be thrown. Then look in the mongrel.log to see what is logged. 3) Running strace or truss on the stuck process to see what system call it's doing. If it's repeatedly running select() then that means it is most likely trying to write to a socket but getting nothing back. This happens in the memcached case especially. 4) Praying to some ancient god for redemption. I hear #4 works really well if you're bathed in the blood of 7 orphaned virgins, but I'm not that hardcore. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From lists at lastonepicked.com Wed Jan 24 01:16:30 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Tue, 23 Jan 2007 22:16:30 -0800 Subject: [Mongrel] Rails App on Mongrel+Apache Stops Listening In-Reply-To: <20070124010704.d4243a37.zedshaw@zedshaw.com> References: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> <20070124010704.d4243a37.zedshaw@zedshaw.com> Message-ID: <8F327FBD-2521-4A62-9A1F-4AA8BD1F5813@lastonepicked.com> Hey Zed, First off, congrats on 1.0 and thanks for all your hard work. On your list of items, I clearly left out some info that I should have included: 1. I'm using PostgreSQL and the C bindings. 2. I'm using the ActiveRecord store. 3. DNS... Okay, I'll take a look at this. I think we're okay here but I will double check. 4. Not using memcached. 5. Interesting. I'll check this one too. I'll check out your list of debugging suggestions. I may just skip to #4 as that's worked for me in the past. Cheers, Hunter On Jan 24, 2007, at 1:07 AM, Zed A. Shaw wrote: > On Tue, 23 Jan 2007 21:53:39 -0800 > Hunter Hillegas wrote: > >> Howdy, >> >> I'm trying to debug a situation where a Rails app running on Mongrel >> +Apache stops listening to requests. Restarting Mongrel and Apache >> brings it back to life. >> >> First off, here's some info on versions, etc...: > > Here's the shortlist of stuff so far that can cause this: > > 1) Using the stock mysql.rb that comes with rails rather than using > the compiled mysql gem. > 2) Use a pstore for sessions, or actually trying to negotiate file > locking in general. > 3) Trying to resolve dns queries against a slow DNS server or > broken one. > 4) Using memcached and putting keys in it with a space or \0 char > in them (memcached don't like that and will block the world). > 5) An interesting new one is having Monit check the mongrel port on > sites with long running requests. What happens is since rails > blocks further requests during these requests, and monit is > typically told to restart when they're slow, you'll get frequent > "slow" requests so monit will frequently restart mongrels for no > apparent reason. > > Ways to debug this include: > > 1) Using lsof -i -P to see what's open. > 2) Attaching to the stuck process with gdb and using some of the > Ruby gdb scripts out there to force an exception to be thrown. > Then look in the mongrel.log to see what is logged. > 3) Running strace or truss on the stuck process to see what system > call it's doing. If it's repeatedly running select() then that > means it is most likely trying to write to a socket but getting > nothing back. This happens in the memcached case especially. > 4) Praying to some ancient god for redemption. > > I hear #4 works really well if you're bathed in the blood of 7 > orphaned virgins, but I'm not that hardcore. > > -- > Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu > http://www.zedshaw.com/ > http://www.awprofessional.com/title/0321483502 -- The Mongrel Book > http://mongrel.rubyforge.org/ > http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From lists at lastonepicked.com Wed Jan 24 01:25:53 2007 From: lists at lastonepicked.com (Hunter Hillegas) Date: Tue, 23 Jan 2007 22:25:53 -0800 Subject: [Mongrel] Rails App on Mongrel+Apache Stops Listening In-Reply-To: References: <358A73B3-3D94-4D4A-8D98-ECC5E80581E1@lastonepicked.com> Message-ID: I'm running Apache 2.2.4, compiled myself from the source. Both httpd and Mongrel are running on the same box without any software or firewalls in between. On Jan 23, 2007, at 10:04 PM, Patrick Berry wrote: > On 1/23/07, Hunter Hillegas wrote: >> Howdy, >> >> I'm trying to debug a situation where a Rails app running on Mongrel >> +Apache stops listening to requests. Restarting Mongrel and Apache >> brings it back to life. >> >> First off, here's some info on versions, etc...: >> >> Red Hat Enterprise Linux ES release 3 (Taroon Update 8) > > Are you running stock apache? If so are you running something between > httpd and the mongrel cluster? > > Pat > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From vosechu at create-on.com Wed Jan 24 20:26:36 2007 From: vosechu at create-on.com (Chuck Vose) Date: Wed, 24 Jan 2007 17:26:36 -0800 Subject: [Mongrel] NOT FOUND error Message-ID: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> I've been hunting the web and reading the mailing lists all day but I'm not finding any guidance on this problem. When I try to talk to my mongrel it simply responds with NOT FOUND and nothing else. I can't find anything on google because this has to be the second most commond phrase in existence. Any help or guidance would be greatly appreciated. Sincerely, Chuck Vose --- mosaic.common: ServerName myapp.tld ServerAlias www.myapp.tld DocumentRoot /var/www/apps/myapp/current/public Options FollowSymLinks AllowOverride None Order allow,deny Allow from all RewriteEngine On # Uncomment for rewrite debugging #RewriteLog logs/myapp_rewrite_log #RewriteLogLevel 9 # Check for maintenance file and redirect all requests RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f RewriteCond %{SCRIPT_FILENAME} !maintenance.html RewriteRule ^.*$ /system/maintenance.html [L] # Rewrite index to check for static RewriteRule ^/$ /index.html [QSA] # Rewrite to check for Rails cached page RewriteRule ^([^.]+)$ $1.html [QSA] # Redirect all non-static requests to cluster RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/(.*)$ balancer://myapp_mongrel_cluster%{REQUEST_URI} [P,QSA,L] # Deflate AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html # Uncomment for deflate debugging #DeflateFilterNote Input input_info #DeflateFilterNote Output output_info #DeflateFilterNote Ratio ratio_info #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate #CustomLog logs/mosaic_deflate_log deflate ----- myapp.conf: Include /etc/rails/myapp.common # This is required to convince Rails (via mod_proxy_balancer) that we're # actually using HTTPS. RequestHeader set X_FORWARDED_PROTO 'https' ErrorLog /usr/local/apache2/logs/myapp_errors_log CustomLog /usr/local/apache2/logs/myapp_log combined BalancerMember http://127.0.0.1:8000 BalancerMember http://127.0.0.1:8001 ------ mosaic_cluster.yml: --- cwd: /var/www/apps/myapp/current port: "8000" environment: production #address: 127.0.0.1 pid_file: /var/www/apps/myapp/current/log/mongrel.pid log_file: /var/www/apps/myapp/current/log/mongrel.log servers: 2 prefix: /usr/local/bin From me at seebq.com Wed Jan 24 21:08:31 2007 From: me at seebq.com (Charles Brian Quinn) Date: Wed, 24 Jan 2007 21:08:31 -0500 Subject: [Mongrel] NOT FOUND error In-Reply-To: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> References: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> Message-ID: <3a2de0cd0701241808q55ee1f1cm75bfff8ec584cc98@mail.gmail.com> prefix is not what you think it is. remove that line and it should work. prefix is for hosting a rails app at: http://server/prefix On 1/24/07, Chuck Vose wrote: > I've been hunting the web and reading the mailing lists all day but > I'm not finding any guidance on this problem. When I try to talk to my > mongrel it simply responds with NOT FOUND and nothing else. I can't > find anything on google because this has to be the second most commond > phrase in existence. > > Any help or guidance would be greatly appreciated. > > Sincerely, > Chuck Vose > > --- > > mosaic.common: > > ServerName myapp.tld > ServerAlias www.myapp.tld > DocumentRoot /var/www/apps/myapp/current/public > > > Options FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > > > RewriteEngine On > > # Uncomment for rewrite debugging > #RewriteLog logs/myapp_rewrite_log > #RewriteLogLevel 9 > > # Check for maintenance file and redirect all requests > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > RewriteRule ^.*$ /system/maintenance.html [L] > > # Rewrite index to check for static > RewriteRule ^/$ /index.html [QSA] > > # Rewrite to check for Rails cached page > RewriteRule ^([^.]+)$ $1.html [QSA] > > # Redirect all non-static requests to cluster > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > RewriteRule ^/(.*)$ balancer://myapp_mongrel_cluster%{REQUEST_URI} [P,QSA,L] > > # Deflate > AddOutputFilterByType DEFLATE text/html text/plain text/xml > application/xml application/xhtml+xml text/javascript text/css > BrowserMatch ^Mozilla/4 gzip-only-text/html > BrowserMatch ^Mozilla/4.0[678] no-gzip > BrowserMatch bMSIE !no-gzip !gzip-only-text/html > > # Uncomment for deflate debugging > #DeflateFilterNote Input input_info > #DeflateFilterNote Output output_info > #DeflateFilterNote Ratio ratio_info > #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate > #CustomLog logs/mosaic_deflate_log deflate > > ----- > > myapp.conf: > > > Include /etc/rails/myapp.common > > # This is required to convince Rails (via mod_proxy_balancer) that we're > # actually using HTTPS. > RequestHeader set X_FORWARDED_PROTO 'https' > > ErrorLog /usr/local/apache2/logs/myapp_errors_log > CustomLog /usr/local/apache2/logs/myapp_log combined > > > > BalancerMember http://127.0.0.1:8000 > BalancerMember http://127.0.0.1:8001 > > > ------ > > mosaic_cluster.yml: > > --- > cwd: /var/www/apps/myapp/current > port: "8000" > environment: production > #address: 127.0.0.1 > pid_file: /var/www/apps/myapp/current/log/mongrel.pid > log_file: /var/www/apps/myapp/current/log/mongrel.log > servers: 2 > prefix: /usr/local/bin > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com main: 678.389.9462 fax: 678.826.0969 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From stonelists at gmail.com Wed Jan 24 23:09:43 2007 From: stonelists at gmail.com (Andrew Stone) Date: Wed, 24 Jan 2007 23:09:43 -0500 Subject: [Mongrel] oci8 problems Message-ID: I feel stupid having to ask this, but I haven't found an answer. I installed ruby-oci8 in order to load data from an oracle db into postgres (part of a jsp to rails conversion). In order to run my ruby script I know I need to set ORACLE_HOME and LD_LIBRARY_PATH environment variables to get it to work (and it does work). I've tried setting ENV['ORACLE_HOME'] and ENV['LD_LIBRARY_PATH'] in config/envrironment.rb (before the Rails::Initializer.run do |config| line), but this doesn't fix the issue. I don't know where to set it so mongrel will pick it up. By the way, I'm not even trying to use the oracle active record adapter with rails. I just have oci8 installed for the migration script. Please help. Thanks in advance, andy The error in full from mongrel.log: /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.1/lib/active_record/connection_adapters/oracle_adapter.rb:536: undefined method `define_a_column' for class `OCI8::Cursor' (NameError) from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in `new_constants_in' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.1 /lib/active_record.rb:81 from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.1 /lib/active_record.rb:80 from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' from /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/initializer.rb:162:in `require_frameworks' ... 10 levels... from /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:83:in `run' from /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/command.rb:211:in `run' from /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1 /bin/mongrel_rails:243 from /usr/local/bin/mongrel_rails:16 /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.1/lib/active_record/connection_adapters/oracle_adapter.rb:536: undefined method `define_a_column' for class `OCI8::Cursor' (NameError) from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in `new_constants_in' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.1 /lib/active_record.rb:81 from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.1 /lib/active_record.rb:80 from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' from /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/initializer.rb:162:in `require_frameworks' ... 10 levels... from /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:83:in `run' from /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/command.rb:211:in `run' from /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1 /bin/mongrel_rails:243 from /usr/local/bin/mongrel_rails:16 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070124/4863b632/attachment-0001.html From wayneeseguin at gmail.com Wed Jan 24 23:35:42 2007 From: wayneeseguin at gmail.com (Wayne E. Seguin) Date: Wed, 24 Jan 2007 23:35:42 -0500 Subject: [Mongrel] NOT FOUND error In-Reply-To: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> References: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> Message-ID: Chuck, Shouldn't this be under a port 443 virtualhost? ~Wayne On Jan 24, 2007, at 20:26 , Chuck Vose wrote: > myapp.conf: > > > ... > RequestHeader set X_FORWARDED_PROTO 'https' > ... From adam.meehan at gmail.com Wed Jan 24 23:59:57 2007 From: adam.meehan at gmail.com (Adam Meehan) Date: Thu, 25 Jan 2007 15:59:57 +1100 Subject: [Mongrel] [ANN] Mongrel 1.0.1 Officially Released Message-ID: <7d91b2180701242059v30f69bdcl3e6279636465c88b@mail.gmail.com> Thanks Zed and the family for letting us play with your extremely well trained mongrel. Also thanks to Luis Lavena for his work for those of us stuck in the windows world. Mongrel took Rails from possible to a definite reality for me. Good dog! Adam. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070125/4f8fc5ca/attachment.html From bruno.celeste at gmail.com Thu Jan 25 06:38:03 2007 From: bruno.celeste at gmail.com (Bruno Celeste) Date: Thu, 25 Jan 2007 12:38:03 +0100 Subject: [Mongrel] X-Sendfile doesn't work Message-ID: <652dec520701250338u83bf15ne24659dab3d41931@mail.gmail.com> Hi everyone, I try to use the "X-Sendfile" header, but it doesn't work as expected. In my controller: path = "/home/bruno/file.tar.gz" headers['X-Sendfile'] = path headers['Content-Type'] = "application/octet-stream" headers['Content-Length'] = File.size(path) render :nothing => true When I request the file, nothing is shown, just a white page. If I do a HEAD request: HTTP/1.1 200 OK Connection: close Date: Thu, 25 Jan 2007 11:22:19 GMT Status: 200 OK X-Sendfile: /home/bruno/file.tar.gz Cache-Control: no-cache Server: Mongrel 1.0.1 Content-Type: application/force-download; charset=utf-8 Content-Length: 1 The weird thing is the content-length is bad and I think mongrel should not show the X-Sendfile header. I also tried to add the content-disposition header but didn't resolve the problem. I'm using edge rails and the latest mongrel (I deleted older mongrels) Thank you. From vosechu at create-on.com Thu Jan 25 12:15:05 2007 From: vosechu at create-on.com (Chuck Vose) Date: Thu, 25 Jan 2007 09:15:05 -0800 Subject: [Mongrel] NOT FOUND error In-Reply-To: References: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> Message-ID: <992fe1b60701250915y4404405ek5f666bf278e66533@mail.gmail.com> Probably right. Didn't work beforehand so I was going to deal with it later. Thanks for the pointer though. On 1/24/07, Wayne E. Seguin wrote: > Chuck, > > Shouldn't this be under a port 443 virtualhost? > > ~Wayne > > On Jan 24, 2007, at 20:26 , Chuck Vose wrote: > > myapp.conf: > > > > > > ... > > RequestHeader set X_FORWARDED_PROTO 'https' > > ... > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From vosechu at create-on.com Thu Jan 25 12:16:54 2007 From: vosechu at create-on.com (Chuck Vose) Date: Thu, 25 Jan 2007 09:16:54 -0800 Subject: [Mongrel] NOT FOUND error In-Reply-To: <3a2de0cd0701241808q55ee1f1cm75bfff8ec584cc98@mail.gmail.com> References: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> <3a2de0cd0701241808q55ee1f1cm75bfff8ec584cc98@mail.gmail.com> Message-ID: <992fe1b60701250916x5414d95fucc0d3be12159fa7d@mail.gmail.com> Thanks, I'll try this when i get to work today. I got this recipe from slingshothosting but I've noticed that the recipe they've posted isn't quite finished. Still a wonderful recipe but must be used with care. -Chuck Vose On 1/24/07, Charles Brian Quinn wrote: > prefix is not what you think it is. > > remove that line and it should work. > > prefix is for hosting a rails app at: http://server/prefix > > > > On 1/24/07, Chuck Vose wrote: > > I've been hunting the web and reading the mailing lists all day but > > I'm not finding any guidance on this problem. When I try to talk to my > > mongrel it simply responds with NOT FOUND and nothing else. I can't > > find anything on google because this has to be the second most commond > > phrase in existence. > > > > Any help or guidance would be greatly appreciated. > > > > Sincerely, > > Chuck Vose > > > > --- > > > > mosaic.common: > > > > ServerName myapp.tld > > ServerAlias www.myapp.tld > > DocumentRoot /var/www/apps/myapp/current/public > > > > > > Options FollowSymLinks > > AllowOverride None > > Order allow,deny > > Allow from all > > > > > > RewriteEngine On > > > > # Uncomment for rewrite debugging > > #RewriteLog logs/myapp_rewrite_log > > #RewriteLogLevel 9 > > > > # Check for maintenance file and redirect all requests > > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > > RewriteRule ^.*$ /system/maintenance.html [L] > > > > # Rewrite index to check for static > > RewriteRule ^/$ /index.html [QSA] > > > > # Rewrite to check for Rails cached page > > RewriteRule ^([^.]+)$ $1.html [QSA] > > > > # Redirect all non-static requests to cluster > > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > > RewriteRule ^/(.*)$ balancer://myapp_mongrel_cluster%{REQUEST_URI} [P,QSA,L] > > > > # Deflate > > AddOutputFilterByType DEFLATE text/html text/plain text/xml > > application/xml application/xhtml+xml text/javascript text/css > > BrowserMatch ^Mozilla/4 gzip-only-text/html > > BrowserMatch ^Mozilla/4.0[678] no-gzip > > BrowserMatch bMSIE !no-gzip !gzip-only-text/html > > > > # Uncomment for deflate debugging > > #DeflateFilterNote Input input_info > > #DeflateFilterNote Output output_info > > #DeflateFilterNote Ratio ratio_info > > #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate > > #CustomLog logs/mosaic_deflate_log deflate > > > > ----- > > > > myapp.conf: > > > > > > Include /etc/rails/myapp.common > > > > # This is required to convince Rails (via mod_proxy_balancer) that we're > > # actually using HTTPS. > > RequestHeader set X_FORWARDED_PROTO 'https' > > > > ErrorLog /usr/local/apache2/logs/myapp_errors_log > > CustomLog /usr/local/apache2/logs/myapp_log combined > > > > > > > > BalancerMember http://127.0.0.1:8000 > > BalancerMember http://127.0.0.1:8001 > > > > > > ------ > > > > mosaic_cluster.yml: > > > > --- > > cwd: /var/www/apps/myapp/current > > port: "8000" > > environment: production > > #address: 127.0.0.1 > > pid_file: /var/www/apps/myapp/current/log/mongrel.pid > > log_file: /var/www/apps/myapp/current/log/mongrel.log > > servers: 2 > > prefix: /usr/local/bin > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > -- > Charles Brian Quinn > self-promotion: www.seebq.com > highgroove studios: www.highgroove.com > slingshot hosting: www.slingshothosting.com > main: 678.389.9462 fax: 678.826.0969 > > Ruby on Rails Bootcamp at the Big Nerd Ranch > Intensive Ruby on Rails Training: > http://www.bignerdranch.com/classes/ruby.shtml > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From scott at hermitworksentertainment.com Thu Jan 25 12:23:08 2007 From: scott at hermitworksentertainment.com (Scott Brooks) Date: Thu, 25 Jan 2007 10:23:08 -0700 Subject: [Mongrel] X-Sendfile doesn't work In-Reply-To: <652dec520701250338u83bf15ne24659dab3d41931@mail.gmail.com> References: <652dec520701250338u83bf15ne24659dab3d41931@mail.gmail.com> Message-ID: <200701251023.08459.scott@hermitworksentertainment.com> On Thursday 25 January 2007 4:38 am, Bruno Celeste wrote: > Hi everyone, > > > I try to use the "X-Sendfile" header, but it doesn't work as expected. > > In my controller: > > path = "/home/bruno/file.tar.gz" > headers['X-Sendfile'] = path > headers['Content-Type'] = "application/octet-stream" > headers['Content-Length'] = File.size(path) > render :nothing => true > > When I request the file, nothing is shown, just a white page. If I do > a HEAD request: > > HTTP/1.1 200 OK > Connection: close > Date: Thu, 25 Jan 2007 11:22:19 GMT > Status: 200 OK > X-Sendfile: /home/bruno/file.tar.gz > Cache-Control: no-cache > Server: Mongrel 1.0.1 > Content-Type: application/force-download; charset=utf-8 > Content-Length: 1 > > The weird thing is the content-length is bad and I think mongrel > should not show the X-Sendfile header. I also tried to add the > content-disposition header but didn't resolve the problem. > > I'm using edge rails and the latest mongrel (I deleted older mongrels) > > > Thank you. X-Sendfile is handled by Apache, or Lighty, etc. If you are just accessing mongrel directly, then what you are seeing is correct. If you are accessing mongrel via apache, or some other webserver, then it's handling of X-Sendfile is not setup properly. Scott Brooks From me at seebq.com Thu Jan 25 12:43:19 2007 From: me at seebq.com (Charles Brian Quinn) Date: Thu, 25 Jan 2007 12:43:19 -0500 Subject: [Mongrel] NOT FOUND error In-Reply-To: <992fe1b60701250916x5414d95fucc0d3be12159fa7d@mail.gmail.com> References: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> <3a2de0cd0701241808q55ee1f1cm75bfff8ec584cc98@mail.gmail.com> <992fe1b60701250916x5414d95fucc0d3be12159fa7d@mail.gmail.com> Message-ID: <3a2de0cd0701250943i1086d050t8e3cdfc55820af63@mail.gmail.com> Hey now, I've since updated it and removed that (a long time ago)! (I'm slingshothosting.com's founder btw) It's under heavy active development. You should check out the latest here: http://svn.highgroove.com.com:8080/deployment/trunk/ I'll update our links -- we've been sending our customers our latest over e-mail and not posting to the support site. Glad you're enjoying it, On 1/25/07, Chuck Vose wrote: > Thanks, I'll try this when i get to work today. I got this recipe from > slingshothosting but I've noticed that the recipe they've posted isn't > quite finished. Still a wonderful recipe but must be used with care. > > -Chuck Vose > > On 1/24/07, Charles Brian Quinn wrote: > > prefix is not what you think it is. > > > > remove that line and it should work. > > > > prefix is for hosting a rails app at: http://server/prefix > > > > > > > > On 1/24/07, Chuck Vose wrote: > > > I've been hunting the web and reading the mailing lists all day but > > > I'm not finding any guidance on this problem. When I try to talk to my > > > mongrel it simply responds with NOT FOUND and nothing else. I can't > > > find anything on google because this has to be the second most commond > > > phrase in existence. > > > > > > Any help or guidance would be greatly appreciated. > > > > > > Sincerely, > > > Chuck Vose > > > > > > --- > > > > > > mosaic.common: > > > > > > ServerName myapp.tld > > > ServerAlias www.myapp.tld > > > DocumentRoot /var/www/apps/myapp/current/public > > > > > > > > > Options FollowSymLinks > > > AllowOverride None > > > Order allow,deny > > > Allow from all > > > > > > > > > RewriteEngine On > > > > > > # Uncomment for rewrite debugging > > > #RewriteLog logs/myapp_rewrite_log > > > #RewriteLogLevel 9 > > > > > > # Check for maintenance file and redirect all requests > > > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > > > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > > > RewriteRule ^.*$ /system/maintenance.html [L] > > > > > > # Rewrite index to check for static > > > RewriteRule ^/$ /index.html [QSA] > > > > > > # Rewrite to check for Rails cached page > > > RewriteRule ^([^.]+)$ $1.html [QSA] > > > > > > # Redirect all non-static requests to cluster > > > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > > > RewriteRule ^/(.*)$ balancer://myapp_mongrel_cluster%{REQUEST_URI} [P,QSA,L] > > > > > > # Deflate > > > AddOutputFilterByType DEFLATE text/html text/plain text/xml > > > application/xml application/xhtml+xml text/javascript text/css > > > BrowserMatch ^Mozilla/4 gzip-only-text/html > > > BrowserMatch ^Mozilla/4.0[678] no-gzip > > > BrowserMatch bMSIE !no-gzip !gzip-only-text/html > > > > > > # Uncomment for deflate debugging > > > #DeflateFilterNote Input input_info > > > #DeflateFilterNote Output output_info > > > #DeflateFilterNote Ratio ratio_info > > > #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate > > > #CustomLog logs/mosaic_deflate_log deflate > > > > > > ----- > > > > > > myapp.conf: > > > > > > > > > Include /etc/rails/myapp.common > > > > > > # This is required to convince Rails (via mod_proxy_balancer) that we're > > > # actually using HTTPS. > > > RequestHeader set X_FORWARDED_PROTO 'https' > > > > > > ErrorLog /usr/local/apache2/logs/myapp_errors_log > > > CustomLog /usr/local/apache2/logs/myapp_log combined > > > > > > > > > > > > BalancerMember http://127.0.0.1:8000 > > > BalancerMember http://127.0.0.1:8001 > > > > > > > > > ------ > > > > > > mosaic_cluster.yml: > > > > > > --- > > > cwd: /var/www/apps/myapp/current > > > port: "8000" > > > environment: production > > > #address: 127.0.0.1 > > > pid_file: /var/www/apps/myapp/current/log/mongrel.pid > > > log_file: /var/www/apps/myapp/current/log/mongrel.log > > > servers: 2 > > > prefix: /usr/local/bin > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > > -- > > Charles Brian Quinn > > self-promotion: www.seebq.com > > highgroove studios: www.highgroove.com > > slingshot hosting: www.slingshothosting.com > > main: 678.389.9462 fax: 678.826.0969 > > > > Ruby on Rails Bootcamp at the Big Nerd Ranch > > Intensive Ruby on Rails Training: > > http://www.bignerdranch.com/classes/ruby.shtml > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com main: 678.389.9462 fax: 678.826.0969 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From bruno.celeste at gmail.com Thu Jan 25 12:53:38 2007 From: bruno.celeste at gmail.com (Bruno Celeste) Date: Thu, 25 Jan 2007 18:53:38 +0100 Subject: [Mongrel] X-Sendfile doesn't work In-Reply-To: <200701251023.08459.scott@hermitworksentertainment.com> References: <652dec520701250338u83bf15ne24659dab3d41931@mail.gmail.com> <200701251023.08459.scott@hermitworksentertainment.com> Message-ID: <652dec520701250953k1202c6f3m16967f0c7b44ef8@mail.gmail.com> Thank you Scott. I'm accessing mongrel directly but I thought that mongrel can use X-Sendfile without needing another webserver. Parkplace (a camping app) uses X-Sendfile via mongrel, so I don't understand. Is it possible to do the same thing with rails? On 1/25/07, Scott Brooks wrote: > On Thursday 25 January 2007 4:38 am, Bruno Celeste wrote: > > Hi everyone, > > > > > > I try to use the "X-Sendfile" header, but it doesn't work as expected. > > > > In my controller: > > > > path = "/home/bruno/file.tar.gz" > > headers['X-Sendfile'] = path > > headers['Content-Type'] = "application/octet-stream" > > headers['Content-Length'] = File.size(path) > > render :nothing => true > > > > When I request the file, nothing is shown, just a white page. If I do > > a HEAD request: > > > > HTTP/1.1 200 OK > > Connection: close > > Date: Thu, 25 Jan 2007 11:22:19 GMT > > Status: 200 OK > > X-Sendfile: /home/bruno/file.tar.gz > > Cache-Control: no-cache > > Server: Mongrel 1.0.1 > > Content-Type: application/force-download; charset=utf-8 > > Content-Length: 1 > > > > The weird thing is the content-length is bad and I think mongrel > > should not show the X-Sendfile header. I also tried to add the > > content-disposition header but didn't resolve the problem. > > > > I'm using edge rails and the latest mongrel (I deleted older mongrels) > > > > > > Thank you. > > X-Sendfile is handled by Apache, or Lighty, etc. If you are just accessing > mongrel directly, then what you are seeing is correct. If you are accessing > mongrel via apache, or some other webserver, then it's handling of X-Sendfile > is not setup properly. > > Scott Brooks > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From vosechu at create-on.com Thu Jan 25 13:23:52 2007 From: vosechu at create-on.com (Chuck Vose) Date: Thu, 25 Jan 2007 10:23:52 -0800 Subject: [Mongrel] NOT FOUND error In-Reply-To: <3a2de0cd0701250943i1086d050t8e3cdfc55820af63@mail.gmail.com> References: <992fe1b60701241726m7104b25coedc0edc0e940c7be@mail.gmail.com> <3a2de0cd0701241808q55ee1f1cm75bfff8ec584cc98@mail.gmail.com> <992fe1b60701250916x5414d95fucc0d3be12159fa7d@mail.gmail.com> <3a2de0cd0701250943i1086d050t8e3cdfc55820af63@mail.gmail.com> Message-ID: <992fe1b60701251023w762a9767wb511e822c5e2f575@mail.gmail.com> Ah! I knew it was under development. Thanks for the link to the updated version. I'm excited to try it out. Removing the prefix worked as predicted, thank you so much! Chuck Vose On 1/25/07, Charles Brian Quinn wrote: > Hey now, I've since updated it and removed that (a long time ago)! > > (I'm slingshothosting.com's founder btw) > > It's under heavy active development. You should check out the latest here: > > http://svn.highgroove.com.com:8080/deployment/trunk/ > > I'll update our links -- we've been sending our customers our latest > over e-mail and not posting to the support site. > > Glad you're enjoying it, > > On 1/25/07, Chuck Vose wrote: > > Thanks, I'll try this when i get to work today. I got this recipe from > > slingshothosting but I've noticed that the recipe they've posted isn't > > quite finished. Still a wonderful recipe but must be used with care. > > > > -Chuck Vose > > > > On 1/24/07, Charles Brian Quinn wrote: > > > prefix is not what you think it is. > > > > > > remove that line and it should work. > > > > > > prefix is for hosting a rails app at: http://server/prefix > > > > > > > > > > > > On 1/24/07, Chuck Vose wrote: > > > > I've been hunting the web and reading the mailing lists all day but > > > > I'm not finding any guidance on this problem. When I try to talk to my > > > > mongrel it simply responds with NOT FOUND and nothing else. I can't > > > > find anything on google because this has to be the second most commond > > > > phrase in existence. > > > > > > > > Any help or guidance would be greatly appreciated. > > > > > > > > Sincerely, > > > > Chuck Vose > > > > > > > > --- > > > > > > > > mosaic.common: > > > > > > > > ServerName myapp.tld > > > > ServerAlias www.myapp.tld > > > > DocumentRoot /var/www/apps/myapp/current/public > > > > > > > > > > > > Options FollowSymLinks > > > > AllowOverride None > > > > Order allow,deny > > > > Allow from all > > > > > > > > > > > > RewriteEngine On > > > > > > > > # Uncomment for rewrite debugging > > > > #RewriteLog logs/myapp_rewrite_log > > > > #RewriteLogLevel 9 > > > > > > > > # Check for maintenance file and redirect all requests > > > > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > > > > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > > > > RewriteRule ^.*$ /system/maintenance.html [L] > > > > > > > > # Rewrite index to check for static > > > > RewriteRule ^/$ /index.html [QSA] > > > > > > > > # Rewrite to check for Rails cached page > > > > RewriteRule ^([^.]+)$ $1.html [QSA] > > > > > > > > # Redirect all non-static requests to cluster > > > > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > > > > RewriteRule ^/(.*)$ balancer://myapp_mongrel_cluster%{REQUEST_URI} [P,QSA,L] > > > > > > > > # Deflate > > > > AddOutputFilterByType DEFLATE text/html text/plain text/xml > > > > application/xml application/xhtml+xml text/javascript text/css > > > > BrowserMatch ^Mozilla/4 gzip-only-text/html > > > > BrowserMatch ^Mozilla/4.0[678] no-gzip > > > > BrowserMatch bMSIE !no-gzip !gzip-only-text/html > > > > > > > > # Uncomment for deflate debugging > > > > #DeflateFilterNote Input input_info > > > > #DeflateFilterNote Output output_info > > > > #DeflateFilterNote Ratio ratio_info > > > > #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate > > > > #CustomLog logs/mosaic_deflate_log deflate > > > > > > > > ----- > > > > > > > > myapp.conf: > > > > > > > > > > > > Include /etc/rails/myapp.common > > > > > > > > # This is required to convince Rails (via mod_proxy_balancer) that we're > > > > # actually using HTTPS. > > > > RequestHeader set X_FORWARDED_PROTO 'https' > > > > > > > > ErrorLog /usr/local/apache2/logs/myapp_errors_log > > > > CustomLog /usr/local/apache2/logs/myapp_log combined > > > > > > > > > > > > > > > > BalancerMember http://127.0.0.1:8000 > > > > BalancerMember http://127.0.0.1:8001 > > > > > > > > > > > > ------ > > > > > > > > mosaic_cluster.yml: > > > > > > > > --- > > > > cwd: /var/www/apps/myapp/current > > > > port: "8000" > > > > environment: production > > > > #address: 127.0.0.1 > > > > pid_file: /var/www/apps/myapp/current/log/mongrel.pid > > > > log_file: /var/www/apps/myapp/current/log/mongrel.log > > > > servers: 2 > > > > prefix: /usr/local/bin > > > > _______________________________________________ > > > > Mongrel-users mailing list > > > > Mongrel-users at rubyforge.org > > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > > > > > > -- > > > Charles Brian Quinn > > > self-promotion: www.seebq.com > > > highgroove studios: www.highgroove.com > > > slingshot hosting: www.slingshothosting.com > > > main: 678.389.9462 fax: 678.826.0969 > > > > > > Ruby on Rails Bootcamp at the Big Nerd Ranch > > > Intensive Ruby on Rails Training: > > > http://www.bignerdranch.com/classes/ruby.shtml > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > -- > Charles Brian Quinn > self-promotion: www.seebq.com > highgroove studios: www.highgroove.com > slingshot hosting: www.slingshothosting.com > main: 678.389.9462 fax: 678.826.0969 > > Ruby on Rails Bootcamp at the Big Nerd Ranch > Intensive Ruby on Rails Training: > http://www.bignerdranch.com/classes/ruby.shtml > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From scott at hermitworksentertainment.com Thu Jan 25 15:30:54 2007 From: scott at hermitworksentertainment.com (Scott Brooks) Date: Thu, 25 Jan 2007 13:30:54 -0700 Subject: [Mongrel] X-Sendfile doesn't work In-Reply-To: <652dec520701250953k1202c6f3m16967f0c7b44ef8@mail.gmail.com> References: <652dec520701250338u83bf15ne24659dab3d41931@mail.gmail.com> <200701251023.08459.scott@hermitworksentertainment.com> <652dec520701250953k1202c6f3m16967f0c7b44ef8@mail.gmail.com> Message-ID: <200701251330.54664.scott@hermitworksentertainment.com> I had a quick look through lib/mongrel/camping.rb and it looks like there is some code in the camping handler in order to handle X-Senfile. The rails handler does not have the same code, so that's probably why you are seeing the different results. Scott Brooks On Thursday 25 January 2007 10:53 am, Bruno Celeste wrote: > Thank you Scott. > > I'm accessing mongrel directly but I thought that mongrel can use > X-Sendfile without needing another webserver. > > Parkplace (a camping app) uses X-Sendfile via mongrel, so I don't > understand. Is it possible to do the same thing with rails? > > On 1/25/07, Scott Brooks wrote: > > On Thursday 25 January 2007 4:38 am, Bruno Celeste wrote: > > > Hi everyone, > > > > > > > > > I try to use the "X-Sendfile" header, but it doesn't work as expected. > > > > > > In my controller: > > > > > > path = "/home/bruno/file.tar.gz" > > > headers['X-Sendfile'] = path > > > headers['Content-Type'] = "application/octet-stream" > > > headers['Content-Length'] = File.size(path) > > > render :nothing => true > > > > > > When I request the file, nothing is shown, just a white page. If I do > > > a HEAD request: > > > > > > HTTP/1.1 200 OK > > > Connection: close > > > Date: Thu, 25 Jan 2007 11:22:19 GMT > > > Status: 200 OK > > > X-Sendfile: /home/bruno/file.tar.gz > > > Cache-Control: no-cache > > > Server: Mongrel 1.0.1 > > > Content-Type: application/force-download; charset=utf-8 > > > Content-Length: 1 > > > > > > The weird thing is the content-length is bad and I think mongrel > > > should not show the X-Sendfile header. I also tried to add the > > > content-disposition header but didn't resolve the problem. > > > > > > I'm using edge rails and the latest mongrel (I deleted older mongrels) > > > > > > > > > Thank you. > > > > X-Sendfile is handled by Apache, or Lighty, etc. If you are just > > accessing mongrel directly, then what you are seeing is correct. If you > > are accessing mongrel via apache, or some other webserver, then it's > > handling of X-Sendfile is not setup properly. > > > > Scott Brooks > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users From bruno.celeste at gmail.com Thu Jan 25 15:48:53 2007 From: bruno.celeste at gmail.com (Bruno Celeste) Date: Thu, 25 Jan 2007 21:48:53 +0100 Subject: [Mongrel] X-Sendfile doesn't work In-Reply-To: <200701251330.54664.scott@hermitworksentertainment.com> References: <652dec520701250338u83bf15ne24659dab3d41931@mail.gmail.com> <200701251023.08459.scott@hermitworksentertainment.com> <652dec520701250953k1202c6f3m16967f0c7b44ef8@mail.gmail.com> <200701251330.54664.scott@hermitworksentertainment.com> Message-ID: <652dec520701251248t6ef13b02yc6effd848b2a8fdd@mail.gmail.com> Ok, that makes sense. Thank you! On 1/25/07, Scott Brooks wrote: > I had a quick look through lib/mongrel/camping.rb and it looks like there is > some code in the camping handler in order to handle X-Senfile. > > The rails handler does not have the same code, so that's probably why you are > seeing the different results. > > Scott Brooks > > On Thursday 25 January 2007 10:53 am, Bruno Celeste wrote: > > Thank you Scott. > > > > I'm accessing mongrel directly but I thought that mongrel can use > > X-Sendfile without needing another webserver. > > > > Parkplace (a camping app) uses X-Sendfile via mongrel, so I don't > > understand. Is it possible to do the same thing with rails? > > > > On 1/25/07, Scott Brooks wrote: > > > On Thursday 25 January 2007 4:38 am, Bruno Celeste wrote: > > > > Hi everyone, > > > > > > > > > > > > I try to use the "X-Sendfile" header, but it doesn't work as expected. > > > > > > > > In my controller: > > > > > > > > path = "/home/bruno/file.tar.gz" > > > > headers['X-Sendfile'] = path > > > > headers['Content-Type'] = "application/octet-stream" > > > > headers['Content-Length'] = File.size(path) > > > > render :nothing => true > > > > > > > > When I request the file, nothing is shown, just a white page. If I do > > > > a HEAD request: > > > > > > > > HTTP/1.1 200 OK > > > > Connection: close > > > > Date: Thu, 25 Jan 2007 11:22:19 GMT > > > > Status: 200 OK > > > > X-Sendfile: /home/bruno/file.tar.gz > > > > Cache-Control: no-cache > > > > Server: Mongrel 1.0.1 > > > > Content-Type: application/force-download; charset=utf-8 > > > > Content-Length: 1 > > > > > > > > The weird thing is the content-length is bad and I think mongrel > > > > should not show the X-Sendfile header. I also tried to add the > > > > content-disposition header but didn't resolve the problem. > > > > > > > > I'm using edge rails and the latest mongrel (I deleted older mongrels) > > > > > > > > > > > > Thank you. > > > > > > X-Sendfile is handled by Apache, or Lighty, etc. If you are just > > > accessing mongrel directly, then what you are seeing is correct. If you > > > are accessing mongrel via apache, or some other webserver, then it's > > > handling of X-Sendfile is not setup properly. > > > > > > Scott Brooks > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From dklamath at hotmail.com Thu Jan 25 18:32:17 2007 From: dklamath at hotmail.com (Dave C) Date: Thu, 25 Jan 2007 15:32:17 -0800 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server Message-ID: Hello everyone, I am trying to setup Mongrel to work with Apache on a VPS as part of a mephisto installation. Has anyone done this, and if so how did you edit your conf file to make it work? I used the info found on the mongrel site at: http://mongrel.rubyforge.org/docs/apache.html and one time I did get a mephisto splash screen, but it was only after I put in :8000 with my URL. I am trying to configure it with the domain davescorner.org and am hosting with eapps. If I can get this to work I will be submitting a tutorial on how to configure mephisto and mongrel on an eapps account so any help in a newb friendly format would be extremely appreciated. Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070125/00950df9/attachment.html From joemclarke at gmail.com Thu Jan 25 19:28:26 2007 From: joemclarke at gmail.com (Joe Clarke) Date: Thu, 25 Jan 2007 18:28:26 -0600 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server In-Reply-To: References: Message-ID: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> Hi Dave, What version of Apache are you running? Did you compile Apache with mod_proxy support? -- Joe Clarke RailsPlayground.com On 1/25/07, Dave C wrote: > > > Hello everyone, > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > mephisto installation. Has anyone done this, and if so how did you edit your > conf file to make it work? > > I used the info found on the mongrel site at: > > http://mongrel.rubyforge.org/docs/apache.html > > and one time I did get a mephisto splash screen, but it was only after I put > in :8000 with my URL. > > I am trying to configure it with the domain davescorner.org and am hosting > with eapps. If I can get this to work I will be submitting a tutorial on how > to configure mephisto and mongrel on an eapps account so any help in a newb > friendly format would be extremely appreciated. > > Dave > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > From dklamath at hotmail.com Thu Jan 25 19:11:59 2007 From: dklamath at hotmail.com (Dave C) Date: Thu, 25 Jan 2007 16:11:59 -0800 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> Message-ID: Apache is running 2.0.52 and it does not show mod_proxy as an installed module. Just mod_perl and mod_php5. thank you for answering Joe Dave ----- Original Message ----- From: Joe Clarke To: mongrel-users at rubyforge.org Sent: Thursday, January 25, 2007 4:28 PM Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server Hi Dave, What version of Apache are you running? Did you compile Apache with mod_proxy support? -- Joe Clarke RailsPlayground.com On 1/25/07, Dave C > wrote: > > > Hello everyone, > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > mephisto installation. Has anyone done this, and if so how did you edit your > conf file to make it work? > > I used the info found on the mongrel site at: > > http://mongrel.rubyforge.org/docs/apache.html > > and one time I did get a mephisto splash screen, but it was only after I put > in :8000 with my URL. > > I am trying to configure it with the domain davescorner.org and am hosting > with eapps. If I can get this to work I will be submitting a tutorial on how > to configure mephisto and mongrel on an eapps account so any help in a newb > friendly format would be extremely appreciated. > > Dave > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ Mongrel-users mailing list Mongrel-users at rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070125/bc9ed826/attachment.html From dklamath at hotmail.com Thu Jan 25 19:35:57 2007 From: dklamath at hotmail.com (Dave C) Date: Thu, 25 Jan 2007 16:35:57 -0800 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> Message-ID: I am running Server version: Apache/2.0.5 hope this is not a project killer. would really like to get mephisto up and running somehow. ----- Original Message ----- From: Dave C To: mongrel-users at rubyforge.org Sent: Thursday, January 25, 2007 4:11 PM Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server Apache is running 2.0.52 and it does not show mod_proxy as an installed module. Just mod_perl and mod_php5. thank you for answering Joe Dave ----- Original Message ----- From: Joe Clarke To: mongrel-users at rubyforge.org Sent: Thursday, January 25, 2007 4:28 PM Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server Hi Dave, What version of Apache are you running? Did you compile Apache with mod_proxy support? -- Joe Clarke RailsPlayground.com On 1/25/07, Dave C > wrote: > > > Hello everyone, > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > mephisto installation. Has anyone done this, and if so how did you edit your > conf file to make it work? > > I used the info found on the mongrel site at: > > http://mongrel.rubyforge.org/docs/apache.html > > and one time I did get a mephisto splash screen, but it was only after I put > in :8000 with my URL. > > I am trying to configure it with the domain davescorner.org and am hosting > with eapps. If I can get this to work I will be submitting a tutorial on how > to configure mephisto and mongrel on an eapps account so any help in a newb > friendly format would be extremely appreciated. > > Dave > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ Mongrel-users mailing list Mongrel-users at rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users _______________________________________________ Mongrel-users mailing list Mongrel-users at rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070125/2e9a3c51/attachment-0001.html From mental at rydia.net Thu Jan 25 20:27:37 2007 From: mental at rydia.net (MenTaLguY) Date: Thu, 25 Jan 2007 20:27:37 -0500 Subject: [Mongrel] [ANN] fastthread-0.6.3 Message-ID: <1169774857.6810.2.camel@localhost.localdomain> Quick note! fastthread 0.6.3 has been released to address a minor compatibility issue with ConditionVariable -- as with the original thread.rb, ConditionVariable can now be used with any mutex class implementing Mutex's public interface. As before, gem and tarball available from RubyForge courtesy of the Mongrel project: http://rubyforge.org/frs/?group_id=1306 -mental -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part Url : http://rubyforge.org/pipermail/mongrel-users/attachments/20070125/fbcb5db6/attachment.bin From me at seebq.com Thu Jan 25 20:37:54 2007 From: me at seebq.com (Charles Brian Quinn) Date: Thu, 25 Jan 2007 20:37:54 -0500 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server In-Reply-To: References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> Message-ID: <3a2de0cd0701251737j5c587f09g865fcd7cd05c6455@mail.gmail.com> Why don't you just run mephisto on a random port, like say, 8000 and then use apache's proxypass directive to forward requests to the mephisto instance. I believe the very first setup would do well for you on the mongrel/apache page. On 1/25/07, Dave C wrote: > > > > I am running Server version: Apache/2.0.5 > > hope this is not a project killer. would really like to get mephisto up and > running somehow. > > > > ----- Original Message ----- > From: Dave C > To: mongrel-users at rubyforge.org > > Sent: Thursday, January 25, 2007 4:11 PM > Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server > > > > Apache is running 2.0.52 and it does not show mod_proxy as an installed > module. Just mod_perl and mod_php5. > > thank you for answering Joe > > Dave > > ----- Original Message ----- > From: Joe Clarke > To: mongrel-users at rubyforge.org > Sent: Thursday, January 25, 2007 4:28 PM > Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server > > Hi Dave, > > What version of Apache are you running? Did you compile Apache with > mod_proxy support? > > -- > Joe Clarke > RailsPlayground.com > > On 1/25/07, Dave C wrote: > > > > > > Hello everyone, > > > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > > mephisto installation. Has anyone done this, and if so how did you edit > your > > conf file to make it work? > > > > I used the info found on the mongrel site at: > > > > http://mongrel.rubyforge.org/docs/apache.html > > > > and one time I did get a mephisto splash screen, but it was only after I > put > > in :8000 with my URL. > > > > I am trying to configure it with the domain davescorner.org and am hosting > > with eapps. If I can get this to work I will be submitting a tutorial on > how > > to configure mephisto and mongrel on an eapps account so any help in a > newb > > friendly format would be extremely appreciated. > > > > Dave > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com main: 678.389.9462 fax: 678.826.0969 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From joemclarke at gmail.com Thu Jan 25 21:23:07 2007 From: joemclarke at gmail.com (Joe Clarke) Date: Thu, 25 Jan 2007 20:23:07 -0600 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server In-Reply-To: References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> Message-ID: <99d220d20701251823t1484a185w873c04b17dc9e36e@mail.gmail.com> You will need to compile mod_proxy for ProxyPass to work correctly: Download the the source distro of Apache 2.0.52 if you don't already have it from apache.org , then from the modules/proxy directory run the following commands: apxs -c -a -i proxy_http.c apxs -i -a -c mod_proxy.c proxy_util.c -- Joe Clarke RailsPlayground.com On 1/25/07, Dave C wrote: > > > > Apache is running 2.0.52 and it does not show mod_proxy as an installed > module. Just mod_perl and mod_php5. > > thank you for answering Joe > > Dave > > > ----- Original Message ----- > From: Joe Clarke > To: mongrel-users at rubyforge.org > Sent: Thursday, January 25, 2007 4:28 PM > Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server > > Hi Dave, > > What version of Apache are you running? Did you compile Apache with > mod_proxy support? > > -- > Joe Clarke > RailsPlayground.com > > On 1/25/07, Dave C wrote: > > > > > > Hello everyone, > > > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > > mephisto installation. Has anyone done this, and if so how did you edit > your > > conf file to make it work? > > > > I used the info found on the mongrel site at: > > > > http://mongrel.rubyforge.org/docs/apache.html > > > > and one time I did get a mephisto splash screen, but it was only after I > put > > in :8000 with my URL. > > > > I am trying to configure it with the domain davescorner.org and am hosting > > with eapps. If I can get this to work I will be submitting a tutorial on > how > > to configure mephisto and mongrel on an eapps account so any help in a > newb > > friendly format would be extremely appreciated. > > > > Dave > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > From bassnode at gmail.com Thu Jan 25 22:09:35 2007 From: bassnode at gmail.com (Ed Hickey) Date: Thu, 25 Jan 2007 21:09:35 -0600 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server In-Reply-To: <99d220d20701251823t1484a185w873c04b17dc9e36e@mail.gmail.com> References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> <99d220d20701251823t1484a185w873c04b17dc9e36e@mail.gmail.com> Message-ID: <733f56120701251909k3f5e0beaqb2960805d6fc4ba0@mail.gmail.com> I'm fairly certain you'll need to use at least Apache 2.2 for the proxy pass to work. http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ On 1/25/07, Joe Clarke wrote: > > You will need to compile mod_proxy for ProxyPass to work correctly: > > Download the the source distro of Apache 2.0.52 if you don't already > have it from apache.org , then from the modules/proxy directory run > the following commands: > > apxs -c -a -i proxy_http.c > apxs -i -a -c mod_proxy.c proxy_util.c > > -- > Joe Clarke > RailsPlayground.com > > On 1/25/07, Dave C wrote: > > > > > > > > Apache is running 2.0.52 and it does not show mod_proxy as an installed > > module. Just mod_perl and mod_php5. > > > > thank you for answering Joe > > > > Dave > > > > > > ----- Original Message ----- > > From: Joe Clarke > > To: mongrel-users at rubyforge.org > > Sent: Thursday, January 25, 2007 4:28 PM > > Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server > > > > Hi Dave, > > > > What version of Apache are you running? Did you compile Apache with > > mod_proxy support? > > > > -- > > Joe Clarke > > RailsPlayground.com > > > > On 1/25/07, Dave C wrote: > > > > > > > > > Hello everyone, > > > > > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > > > mephisto installation. Has anyone done this, and if so how did you > edit > > your > > > conf file to make it work? > > > > > > I used the info found on the mongrel site at: > > > > > > http://mongrel.rubyforge.org/docs/apache.html > > > > > > and one time I did get a mephisto splash screen, but it was only after > I > > put > > > in :8000 with my URL. > > > > > > I am trying to configure it with the domain davescorner.org and am > hosting > > > with eapps. If I can get this to work I will be submitting a tutorial > on > > how > > > to configure mephisto and mongrel on an eapps account so any help in > a > > newb > > > friendly format would be extremely appreciated. > > > > > > Dave > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Ed Hickey Developer Litmus Media 816-533-0409 ehickey at litmusmedia.com A Member of Think Partnership, Inc www.ThinkPartnership.com Amex ticker symbol: THK -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070125/2da27408/attachment.html From joemclarke at gmail.com Thu Jan 25 23:33:10 2007 From: joemclarke at gmail.com (Joe Clarke) Date: Thu, 25 Jan 2007 22:33:10 -0600 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server In-Reply-To: <733f56120701251909k3f5e0beaqb2960805d6fc4ba0@mail.gmail.com> References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> <99d220d20701251823t1484a185w873c04b17dc9e36e@mail.gmail.com> <733f56120701251909k3f5e0beaqb2960805d6fc4ba0@mail.gmail.com> Message-ID: <99d220d20701252033p13047267l9390dada1ab26109@mail.gmail.com> mod_proxy will work with Apache 1,2, and 2.2. You do need 2.2 in order to use mod_proxy_balancer. -- Joe Clarke RailsPlayground.com On 1/25/07, Ed Hickey wrote: > I'm fairly certain you'll need to use at least Apache 2.2 for the proxy pass > to work. > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > On 1/25/07, Joe Clarke wrote: > > You will need to compile mod_proxy for ProxyPass to work correctly: > > > > Download the the source distro of Apache 2.0.52 if you don't already > > have it from apache.org , then from the modules/proxy directory run > > the following commands: > > > > apxs -c -a -i proxy_http.c > > apxs -i -a -c mod_proxy.c proxy_util.c > > > > -- > > Joe Clarke > > RailsPlayground.com > > > > On 1/25/07, Dave C wrote: > > > > > > > > > > > > Apache is running 2.0.52 and it does not show mod_proxy as an installed > > > module. Just mod_perl and mod_php5. > > > > > > thank you for answering Joe > > > > > > Dave > > > > > > > > > ----- Original Message ----- > > > From: Joe Clarke > > > To: mongrel-users at rubyforge.org > > > Sent: Thursday, January 25, 2007 4:28 PM > > > Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server > > > > > > Hi Dave, > > > > > > What version of Apache are you running? Did you compile Apache with > > > mod_proxy support? > > > > > > -- > > > Joe Clarke > > > RailsPlayground.com > > > > > > On 1/25/07, Dave C < dklamath at hotmail.com> wrote: > > > > > > > > > > > > Hello everyone, > > > > > > > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > > > > mephisto installation. Has anyone done this, and if so how did you > edit > > > your > > > > conf file to make it work? > > > > > > > > I used the info found on the mongrel site at: > > > > > > > > http://mongrel.rubyforge.org/docs/apache.html > > > > > > > > and one time I did get a mephisto splash screen, but it was only after > I > > > put > > > > in :8000 with my URL. > > > > > > > > I am trying to configure it with the domain davescorner.org and am > hosting > > > > with eapps. If I can get this to work I will be submitting a tutorial > on > > > how > > > > to configure mephisto and mongrel on an eapps account so any help in > a > > > newb > > > > friendly format would be extremely appreciated. > > > > > > > > Dave > > > > _______________________________________________ > > > > Mongrel-users mailing list > > > > Mongrel-users at rubyforge.org > > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > -- > Ed Hickey > Developer > Litmus Media > 816-533-0409 > ehickey at litmusmedia.com > A Member of Think Partnership, Inc > www.ThinkPartnership.com > Amex ticker symbol: THK > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > From me at seebq.com Fri Jan 26 00:10:59 2007 From: me at seebq.com (Charles Brian Quinn) Date: Fri, 26 Jan 2007 00:10:59 -0500 Subject: [Mongrel] Mongrel with mephisto on a Virtual Private Server In-Reply-To: <733f56120701251909k3f5e0beaqb2960805d6fc4ba0@mail.gmail.com> References: <99d220d20701251628r14977998hecced8c9730196d@mail.gmail.com> <99d220d20701251823t1484a185w873c04b17dc9e36e@mail.gmail.com> <733f56120701251909k3f5e0beaqb2960805d6fc4ba0@mail.gmail.com> Message-ID: <3a2de0cd0701252110p526f0777q77c3557d181746cc@mail.gmail.com> Apache 2.0.x has mod_proxy which will allow you to proxy a single request. I use it all the time. IMHO, perfectly fine for a single instance blog. Apache 2.1 and above (so 2.2.2, 2.2.3, and 2.2.4) have this new fangled mod_proxy_balancer which let's you perform a "load" balancing of sorts and let apache do some serving of images and cached pages. Many of the other lightweight frontends like nginx, pound, and pen do a similar software load balance (and there's talk of lighttpd's proxy_core getting rewritten to do a similar round-robin, balancing load proxy). Regardless, don't load balance your blog yet -- you need metrics before you blow all your RAM serving up 8 mongrel instances when only one will ever get used. No offense, meant, honestly. I'm just saying. ;-) cheers! On 1/25/07, Ed Hickey wrote: > I'm fairly certain you'll need to use at least Apache 2.2 for the proxy pass > to work. > http://blog.codahale.com/2006/06/19/time-for-a-grown-up-server-rails-mongrel-apache-capistrano-and-you/ > > > On 1/25/07, Joe Clarke wrote: > > You will need to compile mod_proxy for ProxyPass to work correctly: > > > > Download the the source distro of Apache 2.0.52 if you don't already > > have it from apache.org , then from the modules/proxy directory run > > the following commands: > > > > apxs -c -a -i proxy_http.c > > apxs -i -a -c mod_proxy.c proxy_util.c > > > > -- > > Joe Clarke > > RailsPlayground.com > > > > On 1/25/07, Dave C wrote: > > > > > > > > > > > > Apache is running 2.0.52 and it does not show mod_proxy as an installed > > > module. Just mod_perl and mod_php5. > > > > > > thank you for answering Joe > > > > > > Dave > > > > > > > > > ----- Original Message ----- > > > From: Joe Clarke > > > To: mongrel-users at rubyforge.org > > > Sent: Thursday, January 25, 2007 4:28 PM > > > Subject: Re: [Mongrel] Mongrel with mephisto on a Virtual Private Server > > > > > > Hi Dave, > > > > > > What version of Apache are you running? Did you compile Apache with > > > mod_proxy support? > > > > > > -- > > > Joe Clarke > > > RailsPlayground.com > > > > > > On 1/25/07, Dave C < dklamath at hotmail.com> wrote: > > > > > > > > > > > > Hello everyone, > > > > > > > > I am trying to setup Mongrel to work with Apache on a VPS as part of a > > > > mephisto installation. Has anyone done this, and if so how did you > edit > > > your > > > > conf file to make it work? > > > > > > > > I used the info found on the mongrel site at: > > > > > > > > http://mongrel.rubyforge.org/docs/apache.html > > > > > > > > and one time I did get a mephisto splash screen, but it was only after > I > > > put > > > > in :8000 with my URL. > > > > > > > > I am trying to configure it with the domain davescorner.org and am > hosting > > > > with eapps. If I can get this to work I will be submitting a tutorial > on > > > how > > > > to configure mephisto and mongrel on an eapps account so any help in > a > > > newb > > > > friendly format would be extremely appreciated. > > > > > > > > Dave > > > > _______________________________________________ > > > > Mongrel-users mailing list > > > > Mongrel-users at rubyforge.org > > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > _______________________________________________ > > > Mongrel-users mailing list > > > Mongrel-users at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > > -- > Ed Hickey > Developer > Litmus Media > 816-533-0409 > ehickey at litmusmedia.com > A Member of Think Partnership, Inc > www.ThinkPartnership.com > Amex ticker symbol: THK > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > > -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com main: 678.389.9462 fax: 678.826.0969 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From bradley at railsmachine.com Fri Jan 26 00:10:01 2007 From: bradley at railsmachine.com (Bradley Taylor) Date: Fri, 26 Jan 2007 00:10:01 -0500 Subject: [Mongrel] [ANN] mongrel_cluster 0.2.2 prerelease Message-ID: <45B98D29.8080603@railsmachine.com> Hey y'all: I've added some new stuff to mongrel_cluster. Give it try and let me know if it works for you. * Added '--clean' to cluster::start to force removal of the pidfile before trying to start the cluster member. This is useful for recovering from unexpected process death. * Added '--only PORT' to cluster::* to support running a command on a single cluster member identified by its port number (eg, 8001). Inspired by Kaspar Schiess. * Added cluster::status to display basic process status information for the cluster. Returns '0' if all processes are found and '2' if a process or pidfile is missing. Supports '--only'. Status commands were also added to the init.d script, mongrel_cluster_ctl, and the cap recipes. * The init.d script (resources/mongrel_cluster) will now create /var/run/mongrel_cluster and chown to a defined user on start. To fully use this feature, update your cluster yml files to store the pidfile in /var/run/mongrel_cluster. This will support cleaning up orphaned pidfiles at boot time. For example: pid_file: /var/run/mongrel_cluster/foo.pid * Fixed a parameter bug with mongrel_cluster_ctl calling mongrel_rails. How would you use some of these new features? Lets pretend that your blog gets spammed by 3000+ comments and 2000+ trackbacks pushing your process memory usage to 300mb+. The fair and just Linux kernel, displeased by your actions, smites one of your processes using the all powerful oom-killer. How do you recover? $ mongrel_rails cluster::status Checking 2 Mongrel servers... Found dog: 8000 Lost dog: 8001 $ mongrel_rails cluster::start --only 8001 --clean Cleaning 1 pid file... Starting 1 Mongrel server... $ mongrel_rails cluster::status Checking 2 Mongrel servers... Found dog: 8000 Found dog: 8001 I'm open to suggestions for some different 'status' output. Let me know if I broke anything. Install with: sudo gem install mongrel_cluster --source http://mongrel.rubyforge.org/releases/ Thanks, Bradley Taylor Rails Machine http://railsmachine.com From zedshaw at zedshaw.com Fri Jan 26 03:49:46 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Fri, 26 Jan 2007 00:49:46 -0800 Subject: [Mongrel] Attention FreeBSD Gurus Message-ID: <20070126004946.01945b5e.zedshaw@zedshaw.com> I received this piece of code in a patch that turns on the FreeBSD http filtering. I completely missed that it calls /sbin/sysctl directly which means I'm slipping on my auditing. def configure_socket_options case RUBY_PLATFORM when /linux/ # 9 is currently TCP_DEFER_ACCEPT $tcp_defer_accept_opts = [Socket::SOL_TCP, 9, 1] $tcp_cork_opts = [Socket::SOL_TCP, 3, 1] when /freebsd/ # Use the HTTP accept filter if available. # The struct made by pack() is defined in /usr/include/sys/socket.h as accept_filter_arg unless `/sbin/sysctl -nq net.inet.accf.http`.empty? $tcp_defer_accept_opts = [Socket::SOL_SOCKET, Socket::SO_ACCEPTFILTER, ['httpready', nil].pack('a16a240')] end end end I'd like to know the following from the FreeBSD crew: 1) Are there any potential malicious potentials to this? I don't assume any intent, but would like to know if I need to rush out a fix if there's a hackable problem with this (even theoretical). 2) What would be the un-ghetto way to do this same check? Thanks a bunch. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From snacktime at gmail.com Fri Jan 26 01:24:15 2007 From: snacktime at gmail.com (snacktime) Date: Thu, 25 Jan 2007 22:24:15 -0800 Subject: [Mongrel] Most reliable setup for mongrel Message-ID: <1f060c4c0701252224x3d9967e3q1eaa0a56dc981776@mail.gmail.com> I'm looking for the most reliable setup for Mongrel. Reliable meaning avoiding things like sending too many requests to a single mongrel process, or sending requests to a mongrel process that has hung for some reason. The handler will most likely be rails, but it might be a custom handler. SSL is also a requirement, which limits the options a bit but it can't be done away with. I spent some time looking at using the proxy balancer in apache, and it appears that the balancer can pile up requests on mongrel because there is no way to tell apache to not send more than one request at a time to any single balance member. I'm also not sure how well things are handled if a mongrel process hangs in some way. Not that it would of course:) Suggestions? Chris From ezmobius at gmail.com Fri Jan 26 01:41:59 2007 From: ezmobius at gmail.com (Ezra Zygmuntowicz) Date: Thu, 25 Jan 2007 22:41:59 -0800 Subject: [Mongrel] Most reliable setup for mongrel In-Reply-To: <1f060c4c0701252224x3d9967e3q1eaa0a56dc981776@mail.gmail.com> References: <1f060c4c0701252224x3d9967e3q1eaa0a56dc981776@mail.gmail.com> Message-ID: On Jan 25, 2007, at 10:24 PM, snacktime wrote: > I'm looking for the most reliable setup for Mongrel. Reliable meaning > avoiding things like sending too many requests to a single mongrel > process, or sending requests to a mongrel process that has hung for > some reason. The handler will most likely be rails, but it might be a > custom handler. SSL is also a requirement, which limits the options a > bit but it can't be done away with. > > I spent some time looking at using the proxy balancer in apache, and > it appears that the balancer can pile up requests on mongrel because > there is no way to tell apache to not send more than one request at a > time to any single balance member. I'm also not sure how well things > are handled if a mongrel process hangs in some way. Not that it would > of course:) > > Suggestions? > > Chris Chris- Haproxy is a software proxy that can do the right thing and not overload mongrels. But it is not a webserver. I have used it behind nginx. So nginx or apache proxy to one haproxy and then haproxy does the load balancing in a more inteligent way then apapche ro nginx can do right now. But Igor the author of nginx said that he will be adding a max-load to the ngixn proxy module which you could set to one and then ngxin would queue requests instead of mongrel and only send requests to mongrels that are not busy. This will be the best option with the least moving parts once he adds this feature. Cheers- -- Ezra Zygmuntowicz -- Lead Rails Evangelist -- ez at engineyard.com -- Engine Yard, Serious Rails Hosting -- (866) 518-YARD (9273) From snacktime at gmail.com Fri Jan 26 01:56:25 2007 From: snacktime at gmail.com (snacktime) Date: Thu, 25 Jan 2007 22:56:25 -0800 Subject: [Mongrel] Attention FreeBSD Gurus In-Reply-To: <20070126004946.01945b5e.zedshaw@zedshaw.com> References: <20070126004946.01945b5e.zedshaw@zedshaw.com> Message-ID: <1f060c4c0701252256n1b2c9006s3f9694ee6a99e8f9@mail.gmail.com> On 1/26/07, Zed A. Shaw wrote: > I'd like to know the following from the FreeBSD crew: > > 1) Are there any potential malicious potentials to this? I don't assume any intent, but would like to know if I need to rush out a fix if there's a hackable problem with this (even theoretical). Only if there is some way to change the arguments to sysctl, and then only if you are root. As far as I know most of the kernel states are readable via sysctl by any user. > 2) What would be the un-ghetto way to do this same check? There probably isn't one, as several of the freebsd rc scripts do basically the same thing. Chris From rodebrahimi at gmail.com Fri Jan 26 02:29:12 2007 From: rodebrahimi at gmail.com (Rod Ebrahimi) Date: Thu, 25 Jan 2007 23:29:12 -0800 Subject: [Mongrel] Most reliable setup for mongrel In-Reply-To: References: <1f060c4c0701252224x3d9967e3q1eaa0a56dc981776@mail.gmail.com> Message-ID: Hi Chris, The optimal solution depends on the resources you have available to you. Assuming you would like to accomplish your objectives "on a shoestring" I would recommend looking into, as Ezra suggested, HAProxy (HAProxy does not support SSL). HAProxy knows how to be smart about what's going on in the backend. I have configured HAProxy in front of nginx web/application servers with mongrels. If the requested server is not available, the request is handled by an available server. HAProxy->(nginx/mongrels)->db [ load balancer->app servers->db servers ] To add to Ezra's suggestion, please keep in mind that HAProxy does not support SSL. I use Pound to handle SSL requests, routing them to the appropriate web/application servers. Add to that virtualization and you have a scalable solution on a shoestring ;) PS: Thanks Zed for your excellent work on mongrel. Best, Rod On 1/25/07, Ezra Zygmuntowicz wrote: > > On Jan 25, 2007, at 10:24 PM, snacktime wrote: > > > I'm looking for the most reliable setup for Mongrel. Reliable meaning > > avoiding things like sending too many requests to a single mongrel > > process, or sending requests to a mongrel process that has hung for > > some reason. The handler will most likely be rails, but it might be a > > custom handler. SSL is also a requirement, which limits the options a > > bit but it can't be done away with. > > > > I spent some time looking at using the proxy balancer in apache, and > > it appears that the balancer can pile up requests on mongrel because > > there is no way to tell apache to not send more than one request at a > > time to any single balance member. I'm also not sure how well things > > are handled if a mongrel process hangs in some way. Not that it would > > of course:) > > > > Suggestions? > > > > Chris > > > Chris- > > Haproxy is a software proxy that can do the right thing and not > overload mongrels. But it is not a webserver. I have used it behind > nginx. So nginx or apache proxy to one haproxy and then haproxy does > the load balancing in a more inteligent way then apapche ro nginx can > do right now. > > But Igor the author of nginx said that he will be adding a max-load > to the ngixn proxy module which you could set to one and then ngxin > would queue requests instead of mongrel and only send requests to > mongrels that are not busy. This will be the best option with the > least moving parts once he adds this feature. > > Cheers- > -- Ezra Zygmuntowicz > -- Lead Rails Evangelist > -- ez at engineyard.com > -- Engine Yard, Serious Rails Hosting > -- (866) 518-YARD (9273) > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From inanc.gumus at gmail.com Fri Jan 26 07:17:22 2007 From: inanc.gumus at gmail.com (Inanc Gumus) Date: Fri, 26 Jan 2007 14:17:22 +0200 Subject: [Mongrel] is http headers or virtual directories supported in mongrel ? Message-ID: Is HTTP Headers and/or virtual directories supported in mongrel ?? I could not found any clue from the documentation supplied on mongrel web site. Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070126/1355b20c/attachment.html From livpal at hotmail.com Fri Jan 26 07:57:44 2007 From: livpal at hotmail.com (=?gb2312?B?0OyzrA==?=) Date: Fri, 26 Jan 2007 20:57:44 +0800 Subject: [Mongrel] what will mongrel be the next relesae Message-ID: hehe, only for a test _________________________________________________________________ ???? Windows Live Mail? http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070126/b72e725e/attachment.html From jason.young at eXtension.org Fri Jan 26 13:39:20 2007 From: jason.young at eXtension.org (Jason Young) Date: Fri, 26 Jan 2007 13:39:20 -0500 Subject: [Mongrel] [ANN] mongrel_cluster 0.2.2 prerelease In-Reply-To: <45B98D29.8080603@railsmachine.com> References: <45B98D29.8080603@railsmachine.com> Message-ID: <6B30B3A1-B716-4375-BEB4-502522F02BC2@eXtension.org> On Jan 26, 2007, at 12:10 AM, Bradley Taylor wrote: > Hey y'all: > > I've added some new stuff to mongrel_cluster. Give it try and let me > know if it works for you. > > * Added '--clean' to cluster::start to force removal of the pidfile > before trying to start the cluster member. This is useful for > recovering > from unexpected process death. Oh this is absolutely fantastic. It actually turns out to be exactly what I needed today. We can't go 24 hours without ferret segfaulting mongrel on the most completely random searches ever - and the change to mongrel 1.0.1 from 0.3.13.4 seems to leave the pids laying around more. The --clean seems to be working great in my monit-initiated restarts (in production mind you :-) ) and now I can happily ignore trying to find the segfault needle in the ferret haystack again(*) Thanks Bradley! Jason (* yes I know it's completely lazy to ignore this. But a) laziness is a require virtue of systems management and b) trying to find a random segfault in thousands of lines of C code is no longer fun to me ;-) ) -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Jason Young -- Systems Manager, eXtension http://about.extension.org/wiki/Jason_Young ______________________________________ From me at seebq.com Fri Jan 26 14:25:33 2007 From: me at seebq.com (Charles Brian Quinn) Date: Fri, 26 Jan 2007 14:25:33 -0500 Subject: [Mongrel] [ANN] mongrel_cluster 0.2.2 prerelease In-Reply-To: <6B30B3A1-B716-4375-BEB4-502522F02BC2@eXtension.org> References: <45B98D29.8080603@railsmachine.com> <6B30B3A1-B716-4375-BEB4-502522F02BC2@eXtension.org> Message-ID: <3a2de0cd0701261125p52184639vacaf41c0da54e69c@mail.gmail.com> Bradley, I agree, thanks for this. A hard rebooted box failed to start mongrel up -- and this should help out quite nicely. Thank you. Now I owe you like 28 beers. On 1/26/07, Jason Young wrote: > > On Jan 26, 2007, at 12:10 AM, Bradley Taylor wrote: > > > Hey y'all: > > > > I've added some new stuff to mongrel_cluster. Give it try and let me > > know if it works for you. > > > > * Added '--clean' to cluster::start to force removal of the pidfile > > before trying to start the cluster member. This is useful for > > recovering > > from unexpected process death. > > Oh this is absolutely fantastic. It actually turns out to be exactly > what I needed today. We can't go 24 hours without ferret segfaulting > mongrel on the most completely random searches ever - and the change > to mongrel 1.0.1 from 0.3.13.4 seems to leave the pids laying around > more. > > The --clean seems to be working great in my monit-initiated restarts > (in production mind you :-) ) and now I can happily ignore trying to > find the segfault needle in the ferret haystack again(*) > > Thanks Bradley! > Jason > > (* yes I know it's completely lazy to ignore this. But a) laziness > is a require virtue of systems management and b) trying to find a > random segfault in thousands of lines of C code is no longer fun to > me ;-) ) > -- > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Jason Young -- Systems Manager, eXtension > http://about.extension.org/wiki/Jason_Young > ______________________________________ > > > > > > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > -- Charles Brian Quinn self-promotion: www.seebq.com highgroove studios: www.highgroove.com slingshot hosting: www.slingshothosting.com main: 678.389.9462 fax: 678.826.0969 Ruby on Rails Bootcamp at the Big Nerd Ranch Intensive Ruby on Rails Training: http://www.bignerdranch.com/classes/ruby.shtml From mongrel at philip.pjkh.com Fri Jan 26 14:38:10 2007 From: mongrel at philip.pjkh.com (Philip Hallstrom) Date: Fri, 26 Jan 2007 13:38:10 -0600 (CST) Subject: [Mongrel] Attention FreeBSD Gurus In-Reply-To: <20070126004946.01945b5e.zedshaw@zedshaw.com> References: <20070126004946.01945b5e.zedshaw@zedshaw.com> Message-ID: <20070126133456.G47013@bravo.pjkh.com> > I received this piece of code in a patch that turns on the FreeBSD http > filtering. I completely missed that it calls /sbin/sysctl directly > which means I'm slipping on my auditing. > [snip] > unless `/sbin/sysctl -nq net.inet.accf.http`.empty? [snip] > > I'd like to know the following from the FreeBSD crew: > > 1) Are there any potential malicious potentials to this? I don't assume > any intent, but would like to know if I need to rush out a fix if > there's a hackable problem with this (even theoretical). Looks okay to me, and there's no arguments being passed in.. as long as it's not in a loop somewhere :) > 2) What would be the un-ghetto way to do this same check? This is probably the easiest, unless you wanted to write a C extension for accessing sysctl on freebsd. http://www.freebsd.org/cgi/man.cgi?query=sysctl&apropos=0&sektion=3&manpath=FreeBSD+6.1-RELEASE&format=html The only thing I'd keep in mind is this section at the end of the sysctl(1) man page: BUGS The sysctl utility presently exploits an undocumented interface to the kernel sysctl facility to traverse the sysctl tree and to retrieve format and name information. This correct interface is being thought about for the time being. http://www.freebsd.org/cgi/man.cgi?query=sysctl&apropos=0&sektion=0&manpath=FreeBSD+6.1-RELEASE&format=html But I've been using freebsd since 1998 and sysctl has always been there and for what I use it for (about the same as above) hasn't changed that I can recall... -philip From andy.koch at pc-doctor.com Fri Jan 26 17:23:48 2007 From: andy.koch at pc-doctor.com (Andy Koch) Date: Fri, 26 Jan 2007 14:23:48 -0800 Subject: [Mongrel] primary bonus of mongrel 1.0.1? Message-ID: Hello, I've completed the update of all my servers to the new mongrel. No problems whatsoever to report, well done. But, I have some colleagues who are wondering what the primary improvements are to mongrel with this new release. I read the Change log but it was a bit cryptic for me. Can anyone provide an executive summary of why 1.0.1 is better than 0.3.xx? a few main bullet points would do fine... Thanks, Andy Koch From zedshaw at zedshaw.com Fri Jan 26 21:18:38 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Fri, 26 Jan 2007 18:18:38 -0800 Subject: [Mongrel] primary bonus of mongrel 1.0.1? In-Reply-To: References: Message-ID: <20070126181838.70a5532b.zedshaw@zedshaw.com> On Fri, 26 Jan 2007 14:23:48 -0800 Andy Koch wrote: > Hello, > > I've completed the update of all my servers to the new mongrel. No > problems whatsoever to report, well done. > > But, I have some colleagues who are wondering what the primary > improvements are to mongrel with this new release. > > I read the Change log but it was a bit cryptic for me. > > Can anyone provide an executive summary of why 1.0.1 is better than 0.3.xx? > > a few main bullet points would do fine... First, really they should do their own research and try it in a test scenario. Reading a changelog isn't going to help their anxiety over the upgrade. I never read changelogs since half the time they lie about the new version's actual stability and improvements for *my* application. Instead I test the new software and if it works then I plan an upgrade very carefully. Second, they sound like the kind of cats who shouldn't upgrade. If everything works for them and there's no problems then there's no point. When they do go with an upgrade they should test everything out again before moving to the new version. If they're seeing memory hogging, stuck processes, or other similar problems then they should upgrade. Third, there aren't major improvements in Mongrel directly, just mostly fine tuning and touch-ups. The main improvements come from fastthread which Mongrel will use if installed. I think that right there should be the biggest reason to move to 1.0.1. Finally, if they want support from people on the mailing list or from me they should upgrade so we know what we're dealing with. -- Zed From kylekochis at gmail.com Fri Jan 26 18:57:51 2007 From: kylekochis at gmail.com (Kyle Kochis) Date: Fri, 26 Jan 2007 16:57:51 -0700 Subject: [Mongrel] primary bonus of mongrel 1.0.1? In-Reply-To: <20070126181838.70a5532b.zedshaw@zedshaw.com> References: <20070126181838.70a5532b.zedshaw@zedshaw.com> Message-ID: <6a7034b0701261557g1e61653w6787077d59912700@mail.gmail.com> "First, really they should do their own research and try it in a test scenario. Reading a changelog isn't going to help their anxiety over the upgrade. I never read changelogs since half the time they lie about the new version's actual stability and improvements for *my* application. Instead I test the new software and if it works then I plan an upgrade very carefully." I agree with you on the stability lying on many changelogs but still it is nice as a user to know _exactly why_ a new version was released. It is nice to have that info just so you know exactly how important/urgent it is to upgrade so I can more appropriately prioritize my administration tasks. That said, I am by no means requesting you do things differently; I am perfectly fine looking through the svn logs at svn://rubyforge.org/var/svn/mongrel. Kyle Kochis From zedshaw at zedshaw.com Fri Jan 26 22:39:09 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Fri, 26 Jan 2007 19:39:09 -0800 Subject: [Mongrel] primary bonus of mongrel 1.0.1? In-Reply-To: <6a7034b0701261557g1e61653w6787077d59912700@mail.gmail.com> References: <20070126181838.70a5532b.zedshaw@zedshaw.com> <6a7034b0701261557g1e61653w6787077d59912700@mail.gmail.com> Message-ID: <20070126193909.aa4fa9e3.zedshaw@zedshaw.com> On Fri, 26 Jan 2007 16:57:51 -0700 "Kyle Kochis" wrote: > "First, really they should do their own research and try it in a test > scenario. Reading a changelog isn't going to help their anxiety over > the upgrade. I never read changelogs since half the time they lie > about the new version's actual stability and improvements for *my* > application. Instead I test the new software and if it works then I > plan an upgrade very carefully." > > I agree with you on the stability lying on many changelogs but still > it is nice as a user to know _exactly why_ a new version was released. > It is nice to have that info just so you know exactly how > important/urgent it is to upgrade so I can more appropriately > prioritize my administration tasks. That said, I am by no means > requesting you do things differently; I am perfectly fine looking > through the svn logs at svn://rubyforge.org/var/svn/mongrel. http://mongrel.rubyforge.org/releases/ChangeLog is what, and http://mongrel.rubyforge.org/news.html is why. That's really the best I can do without help. I have to automate things, and svn changelogs blow so I'm stuck. Without automation I'd be burdened with writing this same information over and over again in various forms. Considering there's a wealth of change information including svn logs, atom feeds, news announcements, bug trackers, forums, and mailing lists it's not like there's nothing. So, I tell people if that's not enough, then your requirements are exceptional and you should do something for yourself to solve the problem. But, one thing I don't hear is a solution. Just a criticism. If you've got a particular tool that automates change logging the way you like it and want to do the work to get it implemented in the mongrel build process then step up and help. Otherwise, what I got is the best I can do given my time constraints. In other words, criticism without a proposed solution or assistance is meaningless. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From mongrel at philip.pjkh.com Fri Jan 26 22:06:05 2007 From: mongrel at philip.pjkh.com (Philip Hallstrom) Date: Fri, 26 Jan 2007 21:06:05 -0600 (CST) Subject: [Mongrel] primary bonus of mongrel 1.0.1? In-Reply-To: <20070126193909.aa4fa9e3.zedshaw@zedshaw.com> References: <20070126181838.70a5532b.zedshaw@zedshaw.com> <6a7034b0701261557g1e61653w6787077d59912700@mail.gmail.com> <20070126193909.aa4fa9e3.zedshaw@zedshaw.com> Message-ID: <20070126210118.W47013@bravo.pjkh.com> > That's really the best I can do without help. I have to automate > things, and svn changelogs blow so I'm stuck. Without automation I'd be > burdened with writing this same information over and over again in > various forms. Considering there's a wealth of change information > including svn logs, atom feeds, news announcements, bug trackers, > forums, and mailing lists it's not like there's nothing. So, I tell > people if that's not enough, then your requirements are exceptional and > you should do something for yourself to solve the problem. > > But, one thing I don't hear is a solution. Just a criticism. If you've > got a particular tool that automates change logging the way you like it > and want to do the work to get it implemented in the mongrel build > process then step up and help. Otherwise, what I got is the best I can > do given my time constraints. Wahoo! I can finally contribute something useful... well, I didn't write it, but it will help with your change log :) http://ch.tudelft.nl/~arthur/svn2cl/ I use it to send out daily change logs to our development team like this: today=`date +"%Y-%m-%d"` cd $HOME/etc/svn2cl-0.6 && ./svn2cl.sh \ --strip-prefix=trunk \ --break-before-msg \ --revision "{$today}:HEAD" --stdout \ file:///svn/cpr/trunk The above options come pretty darn close to mimicing what people are used to in a change log... all you'd need to do is change the --revision line to match the revisions your interested in and there ya go! No idea how to integrate it into the build process, but I'd be willing to help... -philip From trose at danger.com Tue Jan 30 05:46:28 2007 From: trose at danger.com (Tony Rose) Date: Tue, 30 Jan 2007 02:46:28 -0800 Subject: [Mongrel] Update for thread: Multiple rails apps with Mongrel Message-ID: Hi, I found another way to throw multiple rails apps under a single domain like: http://www.domain.com/app1 http://www.domain.com/app2 changes here... http://tonyrose023.blogspot.com/2007/01/multiple-rails-apps-with- mongrel.html Tony From jgeiger at gmail.com Tue Jan 30 11:21:34 2007 From: jgeiger at gmail.com (Joey Geiger) Date: Tue, 30 Jan 2007 10:21:34 -0600 Subject: [Mongrel] [ANN] mongrel_cluster 0.2.2 prerelease In-Reply-To: <3a2de0cd0701261125p52184639vacaf41c0da54e69c@mail.gmail.com> References: <45B98D29.8080603@railsmachine.com> <6B30B3A1-B716-4375-BEB4-502522F02BC2@eXtension.org> <3a2de0cd0701261125p52184639vacaf41c0da54e69c@mail.gmail.com> Message-ID: <466af3440701300821i28fc23b4x5586afd8ec4df4e8@mail.gmail.com> Um, I just looked at the new mongrel_cluster control file for init.d and noticed that the restart and status options are the same thing. restart) mongrel_cluster_ctl restart -c $CONF_DIR RETVAL=$? ;; status) mongrel_cluster_ctl restart -c $CONF_DIR RETVAL=$? ;; Need to change the status command to, well status... On 1/26/07, Charles Brian Quinn wrote: > Bradley, I agree, thanks for this. > > A hard rebooted box failed to start mongrel up -- and this should help > out quite nicely. > > Thank you. Now I owe you like 28 beers. > > On 1/26/07, Jason Young wrote: > > > > On Jan 26, 2007, at 12:10 AM, Bradley Taylor wrote: > > > > > Hey y'all: > > > > > > I've added some new stuff to mongrel_cluster. Give it try and let me > > > know if it works for you. > > > > > > * Added '--clean' to cluster::start to force removal of the pidfile > > > before trying to start the cluster member. This is useful for > > > recovering > > > from unexpected process death. > > > > Oh this is absolutely fantastic. It actually turns out to be exactly > > what I needed today. We can't go 24 hours without ferret segfaulting > > mongrel on the most completely random searches ever - and the change > > to mongrel 1.0.1 from 0.3.13.4 seems to leave the pids laying around > > more. > > > > The --clean seems to be working great in my monit-initiated restarts > > (in production mind you :-) ) and now I can happily ignore trying to > > find the segfault needle in the ferret haystack again(*) > > > > Thanks Bradley! > > Jason > > > > (* yes I know it's completely lazy to ignore this. But a) laziness > > is a require virtue of systems management and b) trying to find a > > random segfault in thousands of lines of C code is no longer fun to > > me ;-) ) > > -- > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > Jason Young -- Systems Manager, eXtension > > http://about.extension.org/wiki/Jason_Young > > ______________________________________ > > > > > > > > > > > > > > _______________________________________________ > > Mongrel-users mailing list > > Mongrel-users at rubyforge.org > > http://rubyforge.org/mailman/listinfo/mongrel-users > > > > > -- > Charles Brian Quinn > self-promotion: www.seebq.com > highgroove studios: www.highgroove.com > slingshot hosting: www.slingshothosting.com > main: 678.389.9462 fax: 678.826.0969 > > Ruby on Rails Bootcamp at the Big Nerd Ranch > Intensive Ruby on Rails Training: > http://www.bignerdranch.com/classes/ruby.shtml > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From bradley at railsmachine.com Tue Jan 30 11:49:14 2007 From: bradley at railsmachine.com (Bradley Taylor) Date: Tue, 30 Jan 2007 11:49:14 -0500 Subject: [Mongrel] [ANN] mongrel_cluster 0.2.2 prerelease In-Reply-To: <466af3440701300821i28fc23b4x5586afd8ec4df4e8@mail.gmail.com> References: <45B98D29.8080603@railsmachine.com> <6B30B3A1-B716-4375-BEB4-502522F02BC2@eXtension.org> <3a2de0cd0701261125p52184639vacaf41c0da54e69c@mail.gmail.com> <466af3440701300821i28fc23b4x5586afd8ec4df4e8@mail.gmail.com> Message-ID: <45BF770A.2020408@railsmachine.com> Nice catch! I'll fix for the next one. I think there are too many ways to do the same thing! (mongrel_rails cluster::, mongrel_cluster_ctl, capistrano, init.d/mongrel_cluster). Thanks, Bradley Joey Geiger wrote: > Um, I just looked at the new mongrel_cluster control file for init.d > and noticed that the > restart and status options are the same thing. > > > restart) > mongrel_cluster_ctl restart -c $CONF_DIR > RETVAL=$? > ;; > status) > mongrel_cluster_ctl restart -c $CONF_DIR > RETVAL=$? > ;; > > Need to change the status command to, well status... From jrichar4 at d.umn.edu Tue Jan 30 15:39:52 2007 From: jrichar4 at d.umn.edu (Josh Richard) Date: Tue, 30 Jan 2007 14:39:52 -0600 Subject: [Mongrel] Update for thread: Multiple rails apps with Mongrel In-Reply-To: References: Message-ID: <45BFAD18.2040805@d.umn.edu> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Thanks to all involved with Mongrel. Hi Tony, This appears to clear up a lot of issues I have regarding how to setup a box with the configuration below. Thanks. That being said, I have a question. About my deployment: Debian, Apache 2.2, Mongrel Cluster 0.2.1 (3 mongrels per app), mongrel 1.0.1. At this time, I have a test app lives in /var/www/rails/app1 I am able to see the app1 configuring mongrel with the --prefix options following your instructions. However, I can not see the /images directories since the code has references to /images/foo.png I suspect the issue is with Apache. In the apache config I have an /images alias: Alias /images /var/www/rails/app1/current/public/images I also have a /stylesheets alias which appears to be working. There was talk in the list: http://rubyforge.org/pipermail/mongrel-users/2006-September/001534.html this does not seem right given the fact I am using mongrel_cluster. I could easily change the links, and image references but that seems kludgy. My goal here is to not break the 'mongrel_rails start' development feature from the local copy and have the deployment enviroment (Apache) handle the site specific stuff. I am confused between using ProxyPass or a rewrite rule given this deployment. Any help you can provide would be appreciated. Thanks everyone! Regards, Josh Richard University of Minnesota Duluth, MN USA Tony Rose wrote: > Hi, > > I found another way to throw multiple rails apps under a single > domain like: > > http://www.domain.com/app1 > http://www.domain.com/app2 > > changes here... > > http://tonyrose023.blogspot.com/2007/01/multiple-rails-apps-with- > mongrel.html > > Tony > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFFv60YtK+gf29TyJQRAizlAJ9OyKqexTrJwjBF+wcW6FPkdmJI2ACfbXhO 7JP9oeJ2kFE1SAriYZu0k28= =5Rgr -----END PGP SIGNATURE----- From trose at danger.com Wed Jan 31 00:01:24 2007 From: trose at danger.com (Tony Rose) Date: Tue, 30 Jan 2007 21:01:24 -0800 Subject: [Mongrel] Update for thread: Multiple rails apps with Mongrel In-Reply-To: References: Message-ID: Josh, You caught me, I forgot to document one step that I did... since my document root for my domain is: /var/www/html/ For each of the apps, I had to make a symlink from that apps public directory to my document root directory... and then the /images and / stylesheets loaded as I needed them to, and works as you would expect it to when you deploy changes to current... --> ln -s /var/www/rails/app1/current/public /var/www/html/app1 I'll update my blog post now! Thanks for catching it. Tony On Jan 30, 2007, at 4:15 PM, mongrel-users-request at rubyforge.org wrote: > Thanks to all involved with Mongrel. > > Hi Tony, > > This appears to clear up a lot of issues I have regarding how to > setup a > box with the configuration below. Thanks. That being said, I have a > question. > > About my deployment: > Debian, Apache 2.2, Mongrel Cluster 0.2.1 (3 mongrels per app), > mongrel > 1.0.1. At this time, I have a test app lives in /var/www/rails/app1 > > I am able to see the app1 configuring mongrel with the --prefix > options > following your instructions. However, I can not see the /images > directories since the code has references to /images/foo.png > > I suspect the issue is with Apache. In the apache config I have an > /images alias: > > Alias /images /var/www/rails/app1/current/public/images > > I also have a /stylesheets alias which appears to be working. > > There was talk in the list: > http://rubyforge.org/pipermail/mongrel-users/2006-September/ > 001534.html > this does not seem right given the fact I am using mongrel_cluster. > > I could easily change the links, and image references but that seems > kludgy. My goal here is to not break the 'mongrel_rails start' > development feature from the local copy and have the deployment > enviroment (Apache) handle the site specific stuff. > > I am confused between using ProxyPass or a rewrite rule given this > deployment. Any help you can provide would be appreciated. > > Thanks everyone! > > Regards, > > Josh Richard > University of Minnesota Duluth, MN USA > > Tony Rose wrote: >> Hi, >> >> I found another way to throw multiple rails apps under a single >> domain like: >> >> http://www.domain.com/app1 >> http://www.domain.com/app2 >> >> changes here... >> >> http://tonyrose023.blogspot.com/2007/01/multiple-rails-apps-with- >> mongrel.html >> >> Tony >> _______________________________________________ >> Mongrel-users mailing list >> Mongrel-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070130/7905bef6/attachment.html From stephen at concord.org Wed Jan 31 01:04:16 2007 From: stephen at concord.org (Stephen Bannasch) Date: Wed, 31 Jan 2007 01:04:16 -0500 Subject: [Mongrel] GET request works via curl, crashes from Java Message-ID: [That subject line is of course a severe truncation!] I've got a REST request that works fine from curl but causes a mongrel error when executed from a Java program. This all worked with fine with rails 1.1.6 and webrick. I'm trying to update the app to rails 1.2.1 (I need working around_filters). I'm running in development mode with mongrel 1.01 running on macosx 10.4.8 w/ruby 1.8.4, rails 1.2.1. When I do the following request with curl everything appears to work fine: curl -I -X GET -H 'Accept: application/xml' http://localhost:3000/1/offering/84/bundle/168/0 HTTP/1.1 200 OK Connection: close Date: Wed, 31 Jan 2007 04:41:24 GMT Status: 200 OK Cache-Control: no-cache Server: Mongrel 1.0.1 Content-Type: text/xml; charset=utf-8 Content-Length: 2706 However when I try what is supposed to be the same request made from a Java jnlp application mongrel reports this error: You have a nil object when you didn't expect it! You might have expected an instance of ActiveRecord::Base. The error occurred while evaluating nil.update /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/request.rb:13:in `parameters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/request.rb:20:in `method' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/routing.rb:1307:in `extract_request_environment' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/routing.rb:1256:in `recognize' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/dispatcher.rb:40:in `dispatch' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:78:in `process' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:76:in `process' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:618:in `process_client' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:617:in `process_client' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:720:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:271:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:270:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:127:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/command.rb:211:in `run' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:243 /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:489:in `load' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in `new_constants_in' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:489:in `load' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/commands/servers/mongrel.rb:60 /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in `new_constants_in' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/commands/server.rb:39 /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in `new_constants_in' /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in `require' script/server:3 Here's the code in request.rb: # Returns both GET and POST parameters in a single hash. def parameters @parameters ||= request_parameters.update(query_parameters).update(path_parameters).with_indifferent_access end The Java program is expecting an xml file and obviously isn't getting what it is supposed to: org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Content is not allowed in prolog. I thought it was unlikely to be helpful but I turned $mongrel_debug_client: kill -USR1 900 This appeared in the mongrel_log but nothing else: ** USR1 received, toggling $mongrel_debug_client to true I'm not able to get the Java program to log any more info about just what request it made until I can get ion touch with the programmer. Somehow I'm stuck thinking there must be a difference in the actual http requests (though their shouldn't be). The result from the Java request using webrick in 1.2.1 is also an error and is similar to a warning in he Mongrel FAQ page: The request from curl via webrick: 127.0.0.1 - - [31/Jan/2007:00:50:43 EST] "GET /1/offering/84/bundle/168/0 HTTP/1.1" 200 2706 The request from Java via webrick: 127.0.0.1 - - [31/Jan/2007:00:51:43 EST] "GET /1/offering/84/bundle/168/0 HTTP/1.1" 500 309 The error occurs in the same place in request.rb in Webrick so this isn't mongrel specific. Is there a way I can get mongrel to log more about the http request so I can compare the two in more detail? I was able to set a breakpoint in the rails controller method and get detailed info from rails about the request that worked. But none of my breakpoints get touched with the request that causes the error. Thanks for any help or pointers. -- - Stephen Bannasch Concord Consortium, http://www.concord.org From eden.li at gmail.com Wed Jan 31 01:22:03 2007 From: eden.li at gmail.com (Eden Li) Date: Wed, 31 Jan 2007 14:22:03 +0800 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: References: Message-ID: <565dbdd40701302222w52a4a45cq81da007c24cde3b0@mail.gmail.com> You can tell mongrel to go into debug mode by passing in "-B" on the command line to "mongrel_rails start". It'll start logging requests to the console like WEBrick, and it'll log a ton of info to log/mongrel_debug. Although, in your case, I would recommend firing up some sort of HTTP traffic sniffer. It'll give you way more information. Live HTTP Headers in Firefox may work in your case (but only if you want headers of the conversation, apropos to its name). Wireshark works well if you're in Linux, and Fiddler's a good tool for Windows users. I have no clue what a Mac OS X user would use, but there's probably something out there. On 1/31/07, Stephen Bannasch wrote: > [That subject line is of course a severe truncation!] > > I've got a REST request that works fine from curl but causes a > mongrel error when executed from a Java program. This all worked with > fine with rails 1.1.6 and webrick. I'm trying to update the app to > rails 1.2.1 (I need working around_filters). > > I'm running in development mode with mongrel 1.01 running on macosx > 10.4.8 w/ruby 1.8.4, rails 1.2.1. > > When I do the following request with curl everything appears to work fine: > > curl -I -X GET -H 'Accept: application/xml' > http://localhost:3000/1/offering/84/bundle/168/0 > > HTTP/1.1 200 OK > Connection: close > Date: Wed, 31 Jan 2007 04:41:24 GMT > Status: 200 OK > Cache-Control: no-cache > Server: Mongrel 1.0.1 > Content-Type: text/xml; charset=utf-8 > Content-Length: 2706 > > However when I try what is supposed to be the same request made from > a Java jnlp application mongrel reports this error: > > You have a nil object when you didn't expect it! > You might have expected an instance of ActiveRecord::Base. > The error occurred while evaluating nil.update > > /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/request.rb:13:in > `parameters' > > /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/request.rb:20:in > `method' > > /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/routing.rb:1307:in > `extract_request_environment' > > /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.1/lib/action_controller/routing.rb:1256:in > `recognize' > > /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/dispatcher.rb:40:in > `dispatch' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:78:in > `process' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:76:in > `process' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:618:in > `process_client' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:617:in > `process_client' > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `run' > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `run' > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:720:in `run' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:271:in > `run' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:270:in > `run' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:127:in > `run' > > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/command.rb:211:in > `run' > /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:243 > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:489:in > `load' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in > `new_constants_in' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:489:in > `load' > > /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/commands/servers/mongrel.rb:60 > /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in > `require' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in > `new_constants_in' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in > `require' > /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.1/lib/commands/server.rb:39 > /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in > `require' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:343:in > `new_constants_in' > > /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.0/lib/active_support/dependencies.rb:496:in > `require' > script/server:3 > > Here's the code in request.rb: > > # Returns both GET and POST parameters in a single hash. > def parameters > @parameters ||= > request_parameters.update(query_parameters).update(path_parameters).with_indifferent_access > end > > The Java program is expecting an xml file and obviously isn't getting > what it is supposed to: > > org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Content > is not allowed in prolog. > > I thought it was unlikely to be helpful but I turned $mongrel_debug_client: > > kill -USR1 900 > > This appeared in the mongrel_log but nothing else: > > ** USR1 received, toggling $mongrel_debug_client to true > > I'm not able to get the Java program to log any more info about just > what request it made until I can get ion touch with the programmer. > > Somehow I'm stuck thinking there must be a difference in the actual > http requests (though their shouldn't be). > > The result from the Java request using webrick in 1.2.1 is also an > error and is similar to a warning in he Mongrel FAQ page: > > The request from curl via webrick: > > 127.0.0.1 - - [31/Jan/2007:00:50:43 EST] "GET > /1/offering/84/bundle/168/0 HTTP/1.1" 200 2706 > > The request from Java via webrick: > > 127.0.0.1 - - [31/Jan/2007:00:51:43 EST] "GET > /1/offering/84/bundle/168/0 HTTP/1.1" 500 309 > > The error occurs in the same place in request.rb in Webrick so this > isn't mongrel specific. > > Is there a way I can get mongrel to log more about the http request > so I can compare the two in more detail? > > I was able to set a breakpoint in the rails controller method and get > detailed info from rails about the request that worked. But none of > my breakpoints get touched with the request that causes the error. > > Thanks for any help or pointers. > > -- > - Stephen Bannasch > Concord Consortium, http://www.concord.org > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users > From zedshaw at zedshaw.com Wed Jan 31 04:26:36 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Wed, 31 Jan 2007 01:26:36 -0800 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: References: Message-ID: <20070131012636.b3d1fb6e.zedshaw@zedshaw.com> On Wed, 31 Jan 2007 01:04:16 -0500 Stephen Bannasch wrote: > [That subject line is of course a severe truncation!] Go get Wireshark and run it so you can grab two captures. One for curl one for the java stuff. Then use the Analyze -> Follow TCP Stream to see what's the difference between the two. It's usually really obvious then. Feel free to send me the capture files off line and I'll look at them (but you really should learn how to do this). -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From stephen at concord.org Wed Jan 31 02:26:44 2007 From: stephen at concord.org (Stephen Bannasch) Date: Wed, 31 Jan 2007 02:26:44 -0500 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: <20070131012636.b3d1fb6e.zedshaw@zedshaw.com> References: <20070131012636.b3d1fb6e.zedshaw@zedshaw.com> Message-ID: >On Wed, 31 Jan 2007 01:04:16 -0500 >Stephen Bannasch wrote: > >> [That subject line is of course a severe truncation!] > >Go get Wireshark and run it so you can grab two captures. One for curl one for the java stuff. Then use the Analyze -> Follow TCP Stream to see what's the difference between the two. Thanks for the suggestion. I'm compiling it now with port. I assume it'll run in xwindows. -- - Stephen Bannasch Concord Consortium, http://www.concord.org From zedshaw at zedshaw.com Wed Jan 31 05:46:28 2007 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Wed, 31 Jan 2007 02:46:28 -0800 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: References: <20070131012636.b3d1fb6e.zedshaw@zedshaw.com> Message-ID: <20070131024628.2bb5e8fe.zedshaw@zedshaw.com> On Wed, 31 Jan 2007 02:26:44 -0500 Stephen Bannasch wrote: > >On Wed, 31 Jan 2007 01:04:16 -0500 > >Stephen Bannasch wrote: > > > >> [That subject line is of course a severe truncation!] > > > >Go get Wireshark and run it so you can grab two captures. One for curl one for the java stuff. Then use the Analyze -> Follow TCP Stream to see what's the difference between the two. > > Thanks for the suggestion. I'm compiling it now with port. I assume it'll run in xwindows. Yep, but there's a command line tool called tshark or some such that will let you grab a capture. You can build that on a server if you need to find out what's going on with a remote box. It's better though to do it in a controlled environment. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://www.awprofessional.com/title/0321483502 -- The Mongrel Book http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From olle at olleolleolle.dk Wed Jan 31 03:23:53 2007 From: olle at olleolleolle.dk (Olle Jonsson) Date: Wed, 31 Jan 2007 09:23:53 +0100 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: References: Message-ID: Eden: > Although, in your case, I would recommend firing up some sort of HTTP > traffic sniffer. It'll give you way more information. Yes, sniff that traffic! When debugging some Rails XML-RPC problems I had (had some junk with the same names installed in my site_ruby, so the problem was only at my end), I set up a tunnel, which worked great. You see all the headers, and the bodies of the requests and responses on your screen, just like with the other tools. TcpTunnelGui [1] for proxying data to and from webservices, an application that is bundled with Apache's SOAP package. The soap.jar is in the lib folder. Fire up the TcpTunnelGui by running: java -cp soap.jar org.apache.soap.util.net.TcpTunnelGui 3001 123.123.123.123 8081 (3001 is the local port, and 8081 is the remote port, and 123.123.123.123 is your remote IP.) [1]: http://ws.apache.org/soap/ best regards, Olle Jonsson From scott at hermitworksentertainment.com Wed Jan 31 12:31:44 2007 From: scott at hermitworksentertainment.com (Scott Brooks) Date: Wed, 31 Jan 2007 10:31:44 -0700 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: References: <20070131012636.b3d1fb6e.zedshaw@zedshaw.com> Message-ID: <200701311031.44632.scott@hermitworksentertainment.com> On Wednesday 31 January 2007 12:26 am, Stephen Bannasch wrote: > >On Wed, 31 Jan 2007 01:04:16 -0500 > > > >Stephen Bannasch wrote: > >> [That subject line is of course a severe truncation!] > > > >Go get Wireshark and run it so you can grab two captures. One for curl > > one for the java stuff. Then use the Analyze -> Follow TCP Stream to see > > what's the difference between the two. > > Thanks for the suggestion. I'm compiling it now with port. I assume it'll > run in xwindows. tcpdump would probably work for you as well, and it's probably already installed(unless you are on windows) tcpdump -w output.dump -s 0 -i eth0 change -i eth0 to what ever interface you want. Then you can open up the dump with wireshark on any box with a GUI. Scott Brooks From stephen at concord.org Wed Jan 31 14:00:18 2007 From: stephen at concord.org (Stephen Bannasch) Date: Wed, 31 Jan 2007 14:00:18 -0500 Subject: [Mongrel] GET request works via curl, crashes from Java In-Reply-To: <200701311031.44632.scott@hermitworksentertainment.com> References: <20070131012636.b3d1fb6e.zedshaw@zedshaw.com> <200701311031.44632.scott@hermitworksentertainment.com> Message-ID: Thanks for all the suggestions. Wireshark and tcpdump work well together. I can reproduce the problem. When a client makes a GET request and intends for my application to return a REST resource in XML format it should look like this (or derivations thereof): curl -H 'Accept: application/xml' http://localhost:3000/1/offering/84/bundle/168/0 About 6 months ago when I first wrote the app using rails 1.1.x I had instead specified this as the header to pass to indicate a REST xml response from the app was appropriate: curl -i -H 'Content-Type: application/xml' http://localhost:3000/1/offering/84/bundle/168/0 That spec didn't last long (because it didn't actually make sense: a GET should describe what it accepts), I instead documented the first method as how to get the resource. The java program that uses these resources however still used the 'Content-Type' header when making a GET request. That worked in rails 1.1.x for two reasons: the only controller methods it was calling in this manner *ONLY* provided REST xml responses and these methods didn't use this rails idiom: respond_to do |wants| wants.html wants.xml end Instead they always returned an xml resource. In addition the interaction between webrick|lighttpd and rails 1.1.x didn't generate an error with this kind of request. So the flaw went undiscovered. Here's what seems to be a problem in the webserver/rails integration, making this kind of GET request: curl -i -H 'Content-Type: application/xml' http://localhost:3000/1/offering/84/bundle/168/0 Produces this response (the returned headers indicate success and the returned body indicates a 500 error): HTTP/1.1 200 OK Connection: close Date: Wed, 31 Jan 2007 18:24:44 GMT Content-Type: text/html Content-Length: 371 Status: 500 Internal Server Error Content-Type: text/html

Application error

Change this error message for exceptions thrown outside of an action (like in Dispatcher setups or broken Ruby code) in public/500.html

Shouldn't 500 errors be reported in the first line of the HTTP headers? Is the wrong use of a header (and I would certainly agree that using 'Content-Type' in a GET makes no sense) reason for disallowing the request. If the answer is yes then it probably makes sense to return an error in the headers also. So my question now is: Should this incorrect use be trapped as an error? If the answer is yes is the current handling of the error correct? If the answer is no any suggestion on where I can look in the code to fix the patch or fix the problem. My specific problem now is that while we can easily update the Java program now that I've found the problem the application is designed to support the creation of learner portfolios and to view portfolios created they may need to be matched to the earlier jar files and of course those earlier jar files will use the wrong heder when making the REST GET request ... sigh ... I rather not have to keep using 1.1.6 much longer. Thanks again for any comments/ideas. -- - Stephen Bannasch Concord Consortium, http://www.concord.org From jrichar4 at d.umn.edu Wed Jan 31 14:37:07 2007 From: jrichar4 at d.umn.edu (Josh Richard) Date: Wed, 31 Jan 2007 13:37:07 -0600 Subject: [Mongrel] Update for thread: Multiple rails apps with Mongrel In-Reply-To: References: Message-ID: <45C0EFE3.10803@d.umn.edu> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Tony Rose wrote: > Josh, > > You caught me, I forgot to document one step that I did... since my > document root for my domain is: > > /var/www/html/ > > For each of the apps, I had to make a symlink from that apps public > directory to my document root directory... and then the /images and > /stylesheets loaded as I needed them to, and works as you would expect > it to when you deploy changes to current... > > --> ln -s /var/www/rails/app1/current/public /var/www/html/app1 > > I'll update my blog post now! Thanks for catching it. > > Tony > No problem. I am still experiencing the issue after the symlink. However, I think I figured this out and wanted to reiterate findings as this may be useful to someone else tackling this issue. Here are some specifics: In a html file I have a static link as such: - From mongrel_rails start, I can see the image under: http://localhost:3000/images/foo.png I deploy the app using capistrano the site is under: http://server/app which put the new URL to the image: http://server/app/images/foo.png Kaboom. The symlink does not work for the images since they are still one directory down. What is interesting is the stylesheets have _always_ worked: and are generated by the <%= stylesheet_link_tag "main", :media => "all" %> call to ERB. This was the key! For each image link or URL reference in my site (not that many really), I modified the static links to use img_tag and link_to in ERB as: <%= image_tag('foo') %>
<%= link_to 'Home', :action => "list" %> This makes sense as image_tag assumes a path images relative to the root of the project. Since mongrel is running with the --prefix of app everything happens as expected and we have: in mongrel_rails start: http://localhost:3000/images/foo.png after deployment with capistrano: http://server/app/images/foo.png I am not sure the symlink is the right recommendation as this could be fixed by allowing ERB to generate URLS. I was able to find supportive evidence in the agile web development with rails skateboarding book, p 41. Thanks again. Josh Richard University of Minnesota Duluth -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFFwO/jtK+gf29TyJQRAqRcAKDVHQWx7Jqq12f8FXI3Xxa6osVpxwCglBni tfz7q+Iyu9s5hQq2bBe7hxw= =LTC6 -----END PGP SIGNATURE----- From roys at okabashi.com Wed Jan 31 16:17:30 2007 From: roys at okabashi.com (Roy Satterfield) Date: Wed, 31 Jan 2007 16:17:30 -0500 Subject: [Mongrel] Website down - Mongrel Log file issue... Message-ID: I am new to Mongrel. We have a website that was created by someone using Ruby. The problem we are having is that the mongrel log file is shutting the site down when the log file gets to 1mb. Is there a way to configure the log file to cycle at a given size? What are my options to keep the site running? Thanks for your help!! Roy -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070131/79278a93/attachment.html From roys at okabashi.com Wed Jan 31 16:36:56 2007 From: roys at okabashi.com (Roy Satterfield) Date: Wed, 31 Jan 2007 16:36:56 -0500 Subject: [Mongrel] Mongrel Issue... Site shutting down... Message-ID: I am new to Mongrel. We have a website that was created by someone using Ruby. The problem we are having is that the mongrel log file is shutting the site down when the log file gets to 1mb. Is there a way to configure the log file to cycle at a given size? What are my options to keep the site running? -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070131/6fe03736/attachment-0001.html From mwhitt89 at gmail.com Wed Jan 31 16:34:36 2007 From: mwhitt89 at gmail.com (Matthew Whittaker) Date: Wed, 31 Jan 2007 16:34:36 -0500 Subject: [Mongrel] Website down - Mongrel Log file issue... In-Reply-To: References: Message-ID: <9BC4243A-B2CC-4851-9086-8277CD774BEE@gmail.com> Do you have Ruby set to rotate the log file automatically at 1mb? If so, this is your problem. Turn off ALL automated log rotation within Ruby and have some external program manage your log files. Cheers, Matt On Jan 31, 2007, at 4:17 PM, Roy Satterfield wrote: > I am new to Mongrel. > > We have a website that was created by someone using Ruby. > > > > The problem we are having is that the mongrel log file is shutting > the site down when the log file gets to 1mb. > > Is there a way to configure the log file to cycle at a given size? > > What are my options to keep the site running? > > > > Thanks for your help!! > > Roy > > _______________________________________________ > Mongrel-users mailing list > Mongrel-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070131/5fe82366/attachment.html From roys at okabashi.com Wed Jan 31 16:58:37 2007 From: roys at okabashi.com (Roy Satterfield) Date: Wed, 31 Jan 2007 16:58:37 -0500 Subject: [Mongrel] Website down - Mongrel Log file issue... Message-ID: Do you have a recommendation for an external program for managing log files? Thanks... Roy ________________________________ From: mongrel-users-bounces at rubyforge.org [mailto:mongrel-users-bounces at rubyforge.org] On Behalf Of Matthew Whittaker Sent: Wednesday, January 31, 2007 4:35 PM To: mongrel-users at rubyforge.org Subject: Re: [Mongrel] Website down - Mongrel Log file issue... Do you have Ruby set to rotate the log file automatically at 1mb? If so, this is your problem. Turn off ALL automated log rotation within Ruby and have some external program manage your log files. Cheers, Matt On Jan 31, 2007, at 4:17 PM, Roy Satterfield wrote: I am new to Mongrel. We have a website that was created by someone using Ruby. The problem we are having is that the mongrel log file is shutting the site down when the log file gets to 1mb. Is there a way to configure the log file to cycle at a given size? What are my options to keep the site running? Thanks for your help!! Roy _______________________________________________ Mongrel-users mailing list Mongrel-users at rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070131/bcdae6c9/attachment.html From dklamath at hotmail.com Sun Jan 28 16:46:34 2007 From: dklamath at hotmail.com (Dave C) Date: Sun, 28 Jan 2007 13:46:34 -0800 Subject: [Mongrel] Website down - Mongrel Log file issue... References: Message-ID: you running this on a windows or Nix server? ----- Original Message ----- From: Roy Satterfield To: mongrel-users at rubyforge.org Sent: Wednesday, January 31, 2007 1:17 PM Subject: [Mongrel] Website down - Mongrel Log file issue... I am new to Mongrel. We have a website that was created by someone using Ruby. The problem we are having is that the mongrel log file is shutting the site down when the log file gets to 1mb. Is there a way to configure the log file to cycle at a given size? What are my options to keep the site running? Thanks for your help!! Roy _______________________________________________ Mongrel-users mailing list Mongrel-users at rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070128/9784b2bd/attachment.html From roys at okabashi.com Wed Jan 31 17:02:47 2007 From: roys at okabashi.com (Roy Satterfield) Date: Wed, 31 Jan 2007 17:02:47 -0500 Subject: [Mongrel] Website down - Mongrel Log file issue... Message-ID: Nix Server.. ________________________________ From: mongrel-users-bounces at rubyforge.org [mailto:mongrel-users-bounces at rubyforge.org] On Behalf Of Dave C Sent: Sunday, January 28, 2007 4:47 PM To: mongrel-users at rubyforge.org Subject: Re: [Mongrel] Website down - Mongrel Log file issue... you running this on a windows or Nix server? ----- Original Message ----- From: Roy Satterfield To: mongrel-users at rubyforge.org Sent: Wednesday, January 31, 2007 1:17 PM Subject: [Mongrel] Website down - Mongrel Log file issue... I am new to Mongrel. We have a website that was created by someone using Ruby. The problem we are having is that the mongrel log file is shutting the site down when the log file gets to 1mb. Is there a way to configure the log file to cycle at a given size? What are my options to keep the site running? Thanks for your help!! Roy _______________________________________________ Mongrel-users mailing list Mongrel-users at rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/mongrel-users/attachments/20070131/c0c7270c/attachment-0001.html From kraemer at webit.de Wed Jan 31 17:00:41 2007 From: kraemer at webit.de (Jens Kraemer) Date: Wed, 31 Jan 2007 23:00:41 +0100 Subject: [Mongrel] Website down - Mongrel Log file issue... In-Reply-To: References: Message-ID: <20070131220041.GA32356@cordoba.webit.de> On Wed, Jan 31, 2007 at 04:58:37PM -0500, Roy Satterfield wrote: > Do you have a recommendation for an external program for managing log > files? on *nix systems there's usually logrotate. Jens -- webit! Gesellschaft f?r neue Medien mbH www.webit.de Dipl.-Wirtschaftsingenieur Jens Kr?mer kraemer at webit.de Schnorrstra?e 76 Tel +49 351 46766 0 D-01069 Dresden Fax +49 351 46766 66