rubyonrailsin

A Ruby and Rails talk

Thursday, April 1, 2010


Re: [Rails] Re: Ruby-ldap timeout

by rubyonrailsin 0 comments

Tag


Share this post:
Design Float
StumbleUpon
Reddit

Hi Jeff,

Thanks! Every single day I'm amazed by what's possible with Ruby, the more I learn, the less I know, but I guess that's good :)

This led me to the SystemTimer gem. The Timeout class was failing, I guess because it is external call that "cross the barriers", as explained here: http://ph7spot.com/musings/system-timer). SystemTimer works like a charm ;)

Cheers,

Marcelo.

On Thu, Apr 1, 2010 at 1:21 PM, Jeff Lewis <jeff.burly@gmail.com> wrote:
Hi Marcelo,

If that ldap lib doesn't include any timeout settings/params for
timing out long-running ldap calls (which if you're talking about ruby-
net-ldap, it doesn't at this time), then one way would be to wrap
those potentially-long-running calls in ruby's timeout (http://ruby-
doc.org/core/classes/Timeout.html) to at least force a timeout on your
app's side of the process, something like:

 ...
 TIMEOUT_SECS = 10 # or whatever the max should be.

 ...
 timeout_status = nil
 begin
   timeout_status = Timeout::timeout(TIMEOUT_SECS) do
     # do stuff that might take too long ....
   end
 rescue Timeout::Error => te
   # log it and ...
 end
 ...

Jeff


On Apr 1, 11:18 am, Marcelo de Moraes Serpa <celose...@gmail.com>
wrote:
> Hello list,
>
> Does anyone know if ruby-ldap supports connection timeouts? We have LDAP
> integrated into our authentication system to provide LDAP authentication as
> well. It works fine if you input a valid host/port and if the LDAP server is
> responding ok. However, if the host doesn't respond for some reason (could
> be an invalid IP), ruby-ldap hangs there waiting forever, hanging the
> application, something that obvisouly could cause potential problems (since
> it uses passenger).
>
> Any ideas on how to handle that?
>
> Thanks,
>
> Marcelo.

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.


--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

No comments:

Post a Comment

Subscribe feeds via e-mail

Blog Archive