# Patch to warn that "ferret\_server appears to be already running"

**URL:** <https://www.ruby-forum.com/t/patch-to-warn-that-ferret-server-appears-to-be-already-running/134083>\
**Category:** Ferret\
**Created:** [April 7, 2008, 6:27pm UTC](https://www.ruby-forum.com/t/patch-to-warn-that-ferret-server-appears-to-be-already-running/134083 "2008-04-07T18:27:49Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![elegant](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/3ab097/32.png) [@elegant](https://www.ruby-forum.com/u/elegant)\
**Post date:** [April 7, 2008, 6:27pm UTC](https://www.ruby-forum.com/t/patch-to-warn-that-ferret-server-appears-to-be-already-running/134083/1 "2008-04-07T18:27:49Z")

</div>

Hi,

I added the following two lines to the top of the start method in  
ferret\_server.rb (acts\_as\_ferret)

pid = read\_pid\_file  
raise “ferret\_server appears to be already running” if pid

Without this, I found that:

1. I could do ‘script/ferret\_start -e production start’ multiple times  
without getting a warning message.
2. Running script/ferret\_start… a 2nd time managed to kill an  
already existing pid file, but left the old process running.
3. My capistrano deployments were sometimes confusing (based on the  
above two items)

-David

---

<div class="post-metadata">

**Author:** ![elegant](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/3ab097/32.png) [@elegant](https://www.ruby-forum.com/u/elegant)\
**Post date:** [April 7, 2008, 8:11pm UTC](https://www.ruby-forum.com/t/patch-to-warn-that-ferret-server-appears-to-be-already-running/134083/2 "2008-04-07T20:11:35Z")

</div>

Update: I now prefer to use $stdout.puts instead of ‘raise’ – because  
I don’t consider this situation to be exceptional – and I don’t want  
Capistrano to treat this situation as an error and halt.

---

<div class="post-metadata">

**Author:** ![elegant](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/3ab097/32.png) [@elegant](https://www.ruby-forum.com/u/elegant)\
**Post date:** [April 11, 2008, 12:14am UTC](https://www.ruby-forum.com/t/patch-to-warn-that-ferret-server-appears-to-be-already-running/134083/3 "2008-04-11T00:14:16Z")

</div>

Hi,

acts\_as\_ferret’s current trunk already has something similar in  
lib/unix\_daemon.rb

Cheers,  
Jens

On Mon, Apr 07, 2008 at 02:10:53PM -0400, David J. wrote:

> > pid = read\_pid\_file  
> > raise “ferret\_server appears to be already running” if pid
> 
> * * *
> 
> Ferret-talk mailing list  
> removed\_email\_address@domain.invalid  
> [http://rubyforge.org/mailman/listinfo/ferret-talk](http://rubyforge.org/mailman/listinfo/ferret-talk)

–  
Jens Krämer  
Finkenlust 14, 06449 Aschersleben, Germany  
VAT Id DE251962952  
[http://www.jkraemer.net/](http://www.jkraemer.net/) - Blog  
[http://www.omdb.org/](http://www.omdb.org/) - The new free film database
