#26 ✓resolved
macournoyer

Failures while starting a cluster server are ignored

Reported by macournoyer | January 29th, 2008 @ 02:13 PM | in 0.7.0

$ thin start -s2
Starting server on 0.0.0.0:3000 ... 
Starting server on 0.0.0.0:3001 ... 

But 3000 crashed because port was already in use

It should stop, complain in the console output.

Comments and changes to this ticket

  • macournoyer

    macournoyer January 30th, 2008 @ 12:43 AM

    • State changed from “new” to “open”
  • Kevin Williams

    Kevin Williams January 30th, 2008 @ 04:01 PM

    • Milestone changed from 0.6.2 to 0.6.3
  • macournoyer

    macournoyer February 6th, 2008 @ 10:38 PM

    • Milestone changed from 0.6.3 to Future

    This is the same behaviour as mongrel_cluster so I'm moving to 'Future'.

    It would require waiting for a couple sec and checking it the process is still running then output the log file.

    Not really sure how to do this since load time can vary a lot between each app.

  • Matt Todd

    Matt Todd February 9th, 2008 @ 08:13 PM

    Not necessarily the best idea, but if you had the spawner open up x number of ports (x being the number of children to spawn) where each child connects to the port during startup and closes the connection when fully started... or, on error, passes it the error information, closes, and dies.

    Probably not the best idea, but still an idea.

  • macournoyer

    macournoyer February 9th, 2008 @ 10:07 PM

    You mean pinging the host until is response? Not sure I understand your solution.

    Or maybe having the child process output the log on error.

  • Matt Todd

    Matt Todd February 10th, 2008 @ 12:22 PM

    Well, the spawned clusters talk to the Runner via a socket and tell it if it was successful or not, passing along error information if not... so the Runner can display the errors if necessary.

    So, I guess the protocol would be... Runner opens sockets for the children to connect to so the Runner knows that they're starting... then they send success or error status... then they close the connection and go on their merry way.

    If there was an error sent from the child process, the Runner displays that before exiting, otherwise it reports no errors.

  • macournoyer

    macournoyer February 15th, 2008 @ 10:38 PM

    • Milestone changed from Future to 0.7.0
    • State changed from “open” to “resolved”

    I tailed the log file to get the output

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile »

Tags

Pages