From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on dcvr.yhbt.net X-Spam-Level: * X-Spam-ASN: AS33070 50.56.128.0/17 X-Spam-Status: No, score=1.4 required=5.0 tests=AWL,RDNS_NONE shortcircuit=no autolearn=no version=3.3.2 X-Original-To: archivist@yhbt.net Delivered-To: archivist@dcvr.yhbt.net Received: from rubyforge.org (unknown [50.56.192.79]) by dcvr.yhbt.net (Postfix) with ESMTP id C13DD202B4 for ; Tue, 26 Nov 2013 01:40:58 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by rubyforge.org (Postfix) with ESMTP id 9311826202D; Tue, 26 Nov 2013 01:40:57 +0000 (UTC) X-Original-To: mongrel-unicorn@rubyforge.org Delivered-To: mongrel-unicorn@rubyforge.org Received: from mail-pd0-f171.google.com (mail-pd0-f171.google.com [209.85.192.171]) by rubyforge.org (Postfix) with ESMTP id B15FF26202D for ; Tue, 26 Nov 2013 01:40:49 +0000 (UTC) Received: by mail-pd0-f171.google.com with SMTP id z10so6715997pdj.16 for ; Mon, 25 Nov 2013 17:40:49 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=dNV1yTjhc0XoJ2fDBGvJtj0MQCeEPATytYJRUi79WQY=; b=Re2Doz8vvQLAOP/bv8n+cuSuUl8vOSOYcY/dpLYY8RXqxQ7Ouo7BhTiCRLs9sJ6nsJ iZMkHfrU6f/L588pXF2/FW2lFZ04znnXHCv1lnuZatNxvVlUliIM57Pbzuz2ptA2NbPB X9gwASuYjVl+12JxtDrOtJHW17BBXoP/yrrUThxvrqKcFVDHEyueQogmlC4I6bBtJFyp ZrYTTjD/XPnOmlRTf/l3FugTnLa/2NOsuPOZLswX/KjARzVWVuuLgdVMUY/IyGu39R1E aMy0/PC8eSz8NIa/rPP5n4sNC3SRN61/QPT/b+3UXPakib4JuL3fHpA4E+eRYJl1V+Td WKpg== X-Gm-Message-State: ALoCoQlG72SXCpCo/7+F4M6hUSUpZwTpWZp/MFc/DS2jDFaEBJVfx7bO0+qEP7iMSbiY3h0lBFcC MIME-Version: 1.0 X-Received: by 10.69.31.97 with SMTP id kl1mr10457128pbd.127.1385430049061; Mon, 25 Nov 2013 17:40:49 -0800 (PST) Received: by 10.68.106.3 with HTTP; Mon, 25 Nov 2013 17:40:48 -0800 (PST) In-Reply-To: <20131126012036.GA5868@dcvr.yhbt.net> References: <20131126012036.GA5868@dcvr.yhbt.net> Date: Mon, 25 Nov 2013 17:40:48 -0800 Message-ID: Subject: Re: Issues with PID file renaming From: Michael Fischer To: unicorn list X-BeenThere: mongrel-unicorn@rubyforge.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: mongrel-unicorn-bounces@rubyforge.org Errors-To: mongrel-unicorn-bounces@rubyforge.org On Mon, Nov 25, 2013 at 5:20 PM, Eric Wong wrote: >> What I notice is the following: when upgrading with 4.6.2 the file >> unicorn.pid is copied to unicorn.pid.oldbin and the unicorn.pid file >> is updated (the (new) master process). After a while the worker pid >> files are updated and the unicorn.pid.oldbin file disappears, and all >> is fine. > > Ugh. This is what I feared... Slow startup time of most Ruby web apps > doesn't help. Why doesn't the new master write its pid file immediately upon forking? It shouldn't have to wait for everything else to load, should it? > How about having the old process create a hard link to .oldbin, > and having the new one override the pid if Process.ppid == pid file? > The check is still racy, but that's what pid files are :< If you decide to implement this, please make it optional. The current behavior is correct IMO, and it will work much better if the above issue is addressed. --Michael _______________________________________________ Unicorn mailing list - mongrel-unicorn@rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-unicorn Do not quote signatures (like this one) or top post when replying