Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:42682 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 95413 invoked from network); 18 Jan 2009 12:21:04 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 18 Jan 2009 12:21:04 -0000 Authentication-Results: pb1.pair.com header.from=kalle.php@gmail.com; sender-id=pass; domainkeys=bad Authentication-Results: pb1.pair.com smtp.mail=kalle.php@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.218.21 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: kalle.php@gmail.com X-Host-Fingerprint: 209.85.218.21 mail-bw0-f21.google.com Received: from [209.85.218.21] ([209.85.218.21:59509] helo=mail-bw0-f21.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 20/F7-51537-FAE13794 for ; Sun, 18 Jan 2009 07:21:03 -0500 Received: by bwz14 with SMTP id 14so6298437bwz.23 for ; Sun, 18 Jan 2009 04:21:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender :to:subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references :x-google-sender-auth; bh=4Hro28aDgsEC1R+nM/5lr8doSHtBXA5I7YKBs73ycXM=; b=hiZ5YfOqzsai282sMDIisrL+zFnuEVF4DcOqioPdBV4vPiMDrjVPpISWcY8dXrL7UY we7pA58YDC9g3o3jSNA/4DGCaQZXUlas/M5e7HMxshljakIYLpwYbYEaR2T+LKVCGsI8 G/5xoPYtV/JugYqZV9N9FVnqVl8BLopaHbIMc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references:x-google-sender-auth; b=p7VAGfa/NTQ06BMWHNfVWEwQMTP3G5XxEaJUznJNJ4pPzR9vEUE3J4v86+9/B/Qu8Y 1EJDNVeDXrAyWebqZHQSHT+/lmDeyVfs4Bfxd/xsgJQkWlY8SNRsUPMcWz/4ep6+jsRD 0gHLhtzSnNjD3n/nHdG2H72nNwQYWK1p+Y5cg= Received: by 10.223.126.69 with SMTP id b5mr361067fas.34.1232281260172; Sun, 18 Jan 2009 04:21:00 -0800 (PST) Received: by 10.223.112.82 with HTTP; Sun, 18 Jan 2009 04:21:00 -0800 (PST) Message-ID: <2dedb8a0901180421r30354f8uc038d6ccf7a8d969@mail.gmail.com> Date: Sun, 18 Jan 2009 13:21:00 +0100 Sender: kalle.php@gmail.com To: "Pierre Joye" Cc: "Karsten Dambekalns" , internals@lists.php.net In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8C.85.27029.97F90794@pb1.pair.com> X-Google-Sender-Auth: 3f73d13491dd92a1 Subject: Re: [PHP-DEV] Path length for files on NTFS From: kalle@php.net ("Kalle Sommer Nielsen") 2009/1/16 Pierre Joye : > hi > > On Fri, Jan 16, 2009 at 6:27 PM, Karsten Dambekalns wrote: > >> Oe example with 229 characters: >> /Users/karsten/Sites/typo3v5/Data/Temporary/6e7991cd3e3f10e110df4a26825c1f8c/_www/Cache/Testing/Tags/%CLASS%F3_Widget_Persistence_MessageQueuePersistenceAspect/FLOW3_Reflection-F3_Widget_Persistence_MessageQueuePersistenceAspect >> >> For deeper nested namespaces this will get longer, add some deeper directory >> structure at the start and - bang. > > With such naming, you are likely to hit this issue anyway, no matter > the OS. Think about one having his host directories in deeper level, > for example, or the hostnames use some lengthy values/names? > >> Now, I never ran into problems with paths being too long for anything I >> tried on Linux or Mac, so what limits exist? Admittedly I never thought >> about that much. Given we live in a world of terabytes I'd expect names to >> be virtually as long as I want. :) > > It is system dependent and there is many values. > >>> Btw, what do you do when the path len of the path where the cache is >>> stored is closed from MAXPATHLEN (PHP_MAXPATHLEN in userland)? Given >>> than MAXPATHLEN can be between 260 and 2048 (~), that' can happen >>> easily. >> >> Never heard of that constant, thanks for pointing it out. The documentation >> doesn't explain it, is there some background information available >> somewhere? > > it reflects the internal constant MAXPATHLEN, which is defined at > compile time (per os/system). As of 5.3, the MAXPATHLEN constant is available in userland as PHP_MAXPATHLEN btw (without having read the whole thread) :) > >> So, in the best case we hit the roof at ~2k? Good to know... > > Keep in mind that the _complete_ path has to fit in there, not only > the last part (your cache name). I think you should rethink a bit the > naming of your caching system, that'll save you some troubles soon > later. > > About the 260 limit on windows, we may find an efficitent solution to > increase it in a safe way, but I don't have one at hand right now. I > have to think more about that and see what can be done for 5.3 (which > supports XP+ only, which means NTFS in the most cases). > > > Cheers, > -- > Pierre > > http://blog.thepimp.net | http://www.libgd.org > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > -- Kalle Sommer Nielsen