Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:84365 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 20044 invoked from network); 5 Mar 2015 22:31:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 5 Mar 2015 22:31:49 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.217.175 as permitted sender) X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 209.85.217.175 mail-lb0-f175.google.com Received: from [209.85.217.175] ([209.85.217.175:46161] helo=mail-lb0-f175.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 3D/6E-40418-259D8F45 for ; Thu, 05 Mar 2015 17:31:47 -0500 Received: by lbiz11 with SMTP id z11so28214993lbi.13 for ; Thu, 05 Mar 2015 14:31:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=QEDOWPOpaNyeI9M5ldx9d4S0wQZW8QgeOvjgS4Ioxr4=; b=nTVpUpPDU84hwzE9N8RDBxbzH5ozXlnN41Tr/mNmPdXuY3JCeZuO5RCuwSVtePkgAr pBr8CrqQ9/ZWHpG0q5XdZkifY4962PCja3t5Y+zEd3eC+kdxcFuu8duQYVWD+SdK1Z1m UaZGR3QgCb3DnZg61H4hb1uSAee5E1xqadY3BvmEhVcJ9iMDwSl43Kzi+VUYHVuWbqdw FZcpcunZfg4M28gAJcPcYBl306ReWazY4R+LwKlJL5/Nl/EXb5ze+0L7fu7CPMY8gyNk MuMjLjh9DQxwo9wfGOpT36QS5RnU5l9vqLswyNf5W6vDu1DQWQgvN0DsRvyGqYxCtnwD 7cVQ== MIME-Version: 1.0 X-Received: by 10.152.37.228 with SMTP id b4mr10073523lak.104.1425594703146; Thu, 05 Mar 2015 14:31:43 -0800 (PST) Received: by 10.112.181.41 with HTTP; Thu, 5 Mar 2015 14:31:43 -0800 (PST) In-Reply-To: References: Date: Thu, 5 Mar 2015 14:31:43 -0800 Message-ID: To: Xinchen Hui Cc: PHP Internals Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] Enable Zend Signals Handler By Default From: pierre.php@gmail.com (Pierre Joye) On Thu, Mar 5, 2015 at 5:27 AM, Xinchen Hui wrote: > Hey internal: > > > There is also a problem we have been suffering from for a quite > long time, that is signal raised at OOM/Timeout when execution is in a > critical area will lead PHP crash or even more big troubles if it is > in shared memory. > > You may still remember we disabled zend signal handlers before > PHP-5.4 was released because it doesn't work well as mod_apache. which > is described in #61083. > > Zend signal is a good way to fix the problem, thus I did some > research then fixed zend signals(make it works with apache2handler), > committed in https://github.com/php/php-src/commit/fd5a756ad44124ffa7e9a5810a31ff49e91708cf > > And no obviously performance affects in reallife app(benched with > wordpress). > > Next, We may do some further optimizationes based on that. > > For now, I want to make zend signals handler enable by default > (in configure) for PHP7, or maybe totally removed the > --enable-zend-signals option? thus make zend_signal.c always be > compiled and linked. > > Is there any concerns or objections on this? Generally speaking no, but I would be very careful about the portability parts here, and not only about windows. I would go in two steps, first enable it by default and see which issues exist on the various supported platforms then once everything is ready, we can consider removing the setting. But removing it straight away may force users to simply do not use 7 anymore until things are fixed, if necessary. -- Pierre @pierrejoye | http://www.libgd.org