Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:77735 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 45928 invoked from network); 1 Oct 2014 12:59:38 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 1 Oct 2014 12:59:38 -0000 Authentication-Results: pb1.pair.com header.from=pthreads@pthreads.org; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=pthreads@pthreads.org; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain pthreads.org from 209.85.212.182 cause and error) X-PHP-List-Original-Sender: pthreads@pthreads.org X-Host-Fingerprint: 209.85.212.182 mail-wi0-f182.google.com Received: from [209.85.212.182] ([209.85.212.182:48604] helo=mail-wi0-f182.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AB/D0-37933-8BAFB245 for ; Wed, 01 Oct 2014 08:59:37 -0400 Received: by mail-wi0-f182.google.com with SMTP id n3so516877wiv.3 for ; Wed, 01 Oct 2014 05:59:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:content-type:mime-version:content-transfer-encoding; bh=uoeE6SpWS4Sx52STL3F1Kf9tFZUgDup5f0iSH04aaW4=; b=LK5oIFHJmuurNBwOlYPrnGy5l/gx5h7wdQP7FwEKGbwuNMMqZTPzXozZqkG4S9Zzxg MsLewDy2qM/86seaEgsnu3R7hBlIsATgZ+6v7tFQnmFsl6g4pHLL0G9dvK04zID83Tp6 Pu6tdxD/jf1aR3BlalC4x1/eM+vPYnWSMMdDXDiq6w6eBhmoN4M1b+Bz1f1tYWxN16N6 AGLx3Gv/B6/tjSCVxgZHjpT5PuxFSJikD3aNCHG4ADxQWzMJOwtwPPSICNIJDt+isKMe M5QPHyxSwvZ+GtfdIOsduwV2WcZe0NMpiMcSO1la8F1kAD0Sg25z/KmXEt+9cDyxXkmI X2Hw== X-Gm-Message-State: ALoCoQnVwq3GNvB2sWYZ879F971fzlnLJY+RWywMwJnEDh6nLeFDxbw4le7HFL0ohvA5nPMnMXnP X-Received: by 10.180.103.40 with SMTP id ft8mr13925652wib.52.1412168373448; Wed, 01 Oct 2014 05:59:33 -0700 (PDT) Received: from [192.168.1.67] (host86-136-148-72.range86-136.btcentralplus.com. [86.136.148.72]) by mx.google.com with ESMTPSA id w10sm1126409wje.10.2014.10.01.05.59.32 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Wed, 01 Oct 2014 05:59:32 -0700 (PDT) Message-ID: <1412168370.14002.9.camel@localhost.localdomain> To: Ferenc Kovacs Cc: "guilhermeblanco@gmail.com" , Andrea Faulds , Sara Golemon , PHP internals Date: Wed, 01 Oct 2014 13:59:30 +0100 In-Reply-To: References: <472D9D28-4AD7-4B98-BBEE-A613F7FCA996@golemon.com> <004AF0D4-A329-46AB-BFE4-79CDE530BFA4@ajf.me> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4 (3.10.4-3.fc20) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] [RFC] Move pecl_sync to core From: pthreads@pthreads.org (Joe Watkins) On Wed, 2014-10-01 at 14:26 +0200, Ferenc Kovacs wrote: > On Tue, Sep 30, 2014 at 10:18 PM, guilhermeblanco@gmail.com < > guilhermeblanco@gmail.com> wrote: > > > > What does that even mean? > > > > It means that any new functionality that gets into core could be considered > > "young". Like when PHAR got introduced, it was a "young" extension. Same > > for PDO, same for FileInfo... > > What I'm trying to highlight is that being a recently coded extension or > > not, it's not a good argument to say join/no join. > > > > phar is a really bad example, the maintainers left right after it was > accepted into the core making it a really bad technical burden, as it > tightly integrated into the streams handling and stuff, making it a > liability. > from the average user POV I think it would be a bit weird why do we add a > relatively new package which is at the bottom of the download stats ( > http://pecl.php.net/package-stats.php) while not bundling stuff like > memcache or mongo which are both mature and used/required by much more > people/project. > personally I think that a pecl extension needs to have stronger arguments > to be bundled with php-src than the fact that it would probably create a > bit more exposure for the ext. > Afternoon, I think you got your answer anyway, so this message might fall on deaf ears. The assertion that there is no way to use mutex in a cross platform way in PHP is actually wrong: http://php.net/mutex The number of people that should be using mutex directly in PHP is about 4. PHP programmers are ill prepared for using such things, making some code exist, doesn't prepare anyone. With a quick glance, there is a number of mistakes in the code. There is an incorrect assumption that what this is doing is safe, it is not. You cannot share a mutex across process boundaries without setting attributes on creation, this includes forked child processes; given PHP's normal mode of execution does involve forking and multi-processing, the ideas in this extension are very close to useless. If this extension were well written and had all bases covered it still wouldn't make sense to include it, handing over synchronization to userland simply will not work. So, as you might have guessed, a "-1, and your barking mad" from me. Cheers Joe