Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:41474 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 84898 invoked from network); 27 Oct 2008 18:08:54 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 27 Oct 2008 18:08:54 -0000 Authentication-Results: pb1.pair.com smtp.mail=sv_forums@fmethod.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=sv_forums@fmethod.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain fmethod.com from 69.16.228.148 cause and error) X-PHP-List-Original-Sender: sv_forums@fmethod.com X-Host-Fingerprint: 69.16.228.148 unknown Linux 2.4/2.6 Received: from [69.16.228.148] ([69.16.228.148:54415] helo=host.fmethod.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id F8/06-34199-5B306094 for ; Mon, 27 Oct 2008 13:08:53 -0500 Received: from [83.228.56.37] (port=3630 helo=pc) by host.fmethod.com with esmtpa (Exim 4.69) (envelope-from ) id 1KuWWH-0002Pk-Nx for internals@lists.php.net; Mon, 27 Oct 2008 13:08:50 -0500 Message-ID: To: References: <49048EC1.9060908@chiaraquartet.net> <4904CE3B.2000001@chiaraquartet.net> <4905EDA9.9050301@zend.com> <11c607a60810271049y419c252q7e21cde9221f1996@mail.gmail.com> Date: Mon, 27 Oct 2008 20:08:45 +0200 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.5512 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - host.fmethod.com X-AntiAbuse: Original Domain - lists.php.net X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - fmethod.com Subject: Re: [PHP-DEV] namespace separator and whining From: sv_forums@fmethod.com ("Stan Vassilev | FM") It doesn't take a lot to kill an application if using internal class causes __autoload to run for a non-existing user class. Neither caches not optimizations can avoid that, as you can't have something cached which doesn't exist. In my autoloader for example, an existing user class is resolved instantly from a hashmap lookup, i.e. my cache. I don't have ArrayObject in my cache, so if my autoloader is asked to find ArrayObject.class.php, it'll start crawling huge PHP libraries of code, *every single request*, only to fail in the end and fallback to internal class. Is this negligible performance hit? Actually (re)scanning my full library takes few seconds of heavy disk grinding. Make your own conclusions. Regards, Stan Vassilev