Commit Graph

31 Commits

Author SHA1 Message Date
Felipe Pena
cf7384aa40 - MFH: Constness (Added const qualifier to several function parameters) 2008-08-12 17:20:25 +00:00
Antony Dovgal
b53da9cd80 fix folding 2008-07-29 10:52:08 +00:00
Greg Beaver
37c684ab3d in preparation for a performance optimization that involves
eliminating phar's interception of zend_compile in favor of a new to-be-added hook in PHP 5.3+,
allow "include 'phar:///path/to/my.phar';" to work as equivalent to
php /path/to/my.phar
this slight change in scripting still allows inclusion and execution of phar stub, but removes the need to
check and modify path in zend_compile, which allows us to play much nicer with external tools like
debuggers/opcode caches
2008-06-27 01:21:12 +00:00
Greg Beaver
8bf72978b3 fix several issues:
1) segfault in phar_buildfromdirectoryiterator8.phpt
2) tests failing because SKIPDOTS is default on 64 bit, not on 32
3) Marcus, you really need to add SKIPDOTS as a class constant, so we don't have to use 0x00001000
2008-06-24 01:11:27 +00:00
Greg Beaver
10f6d9a556 true fix for potential segfault in phar_build 2008-06-23 04:00:23 +00:00
Greg Beaver
3a8b14f83f fix inode calculation, we need fname to be set for phar/tar formats prior to manifest parsing 2008-06-22 00:50:32 +00:00
Greg Beaver
baee4e6028 close stream on failure 2008-06-21 06:55:56 +00:00
Greg Beaver
529aa19cc7 82x(./profile2) speedup for buildFrom*() 2008-06-21 06:53:10 +00:00
Greg Beaver
aff3636d9c minor performance improvement 2008-06-20 06:37:14 +00:00
Greg Beaver
7cc6b9f3f5 making progress - up to 42/phar vs. 48/disk with these optimizations 2008-06-20 05:42:58 +00:00
Greg Beaver
cbe23b9f20 fix windows build and more performance jumps (these are minor)
implement real copy-on-write
use virtual_dirs for wrapper stat
2008-06-18 06:38:47 +00:00
Greg Beaver
d8d31bc591 remove unused variables in phar_fix_filepath
copy virtual_dirs to avoid segfault on multi-process
fix metadata reading for phar.cache_list
initialize manifest to exact size needed (performance increase)
fix freeing of signature on error to use the correct persist value (fixes segfault on error in cache.list)
reset EG(regular_list) so it is identical to how we found it
2008-06-16 04:10:53 +00:00
Greg Beaver
c353e9277e minor performance improvement 2008-06-15 23:00:46 +00:00
Greg Beaver
4104786072 another optimization - move inode hash to initial manifest parsing, improves runtime perf of stat slightly 2008-06-15 21:42:20 +00:00
Greg Beaver
d8ed660a02 minor optimization 2008-06-15 21:15:29 +00:00
Greg Beaver
04e257a8e1 HUGE speed improvement, from 19 req/sec to 27 req/sec for phpMyAdmin - now speed with apc+phar.cache_list = on-disk speedcvs diff -u |less This is by generating a list of virtual directories and using those in stat calls instead of scanning the whole manifest hash table. on-disk phpMyAdmin = 28 req/sec 2008-06-15 18:15:48 +00:00
Greg Beaver
4f9daeed11 [DOC] implement full signature support for tar-based archives. By default, data archives do
not have a signature, but can have one set via setSignatureAlgorithm()
2008-06-13 22:07:44 +00:00
Greg Beaver
5ff4deaa53 full refactor of signatures complete - now to implement them for tar as a starting point 2008-06-13 20:15:19 +00:00
Greg Beaver
9c8d13fd6c partial refactor - move signature verification into its own function, in preparation for tar/zip signature support.
next is signature creation
2008-06-13 06:34:41 +00:00
Greg Beaver
98f2dc2aca [DOC] add phar.cache_list, a PATH_SEPARATOR-separated list of full paths to phar archives to cache
at startup.  This caches the manifest, so that on first access to a phar archive, no file manifest parsing occurs.

This could use further tweaking.  For instance, the full copy of the manifest into the current process may be unnecessary if refcounting could be external
to the manifest.  This would be another significant gain.  With APC, I measure a slight perf increase to 19 req/sec up from 16 req/sec, without it approaches
regular PHP at 3.8 req/sec (regular is 4 req/sec).  This is benching phpMyAdmin
2008-06-12 18:56:23 +00:00
Greg Beaver
8b8a64a3e8 fix PHP Bug #45218: PHAR archive built from directory limited by max open file handles 2008-06-10 19:20:33 +00:00
Greg Beaver
eb77b80b9d fix compile warnings if openssl is enabled statically. fix dangerous use of wrong length var in openssl signature verification 2008-06-09 16:07:18 +00:00
Marcus Boerger
376ca12a21 - Update 2008-06-04 09:47:41 +00:00
Marcus Boerger
c60365e9b3 - Fix issue with -y parameter hanlding (fix typo) 2008-06-02 13:39:54 +00:00
Marcus Boerger
4f74e50c1b - Fix issue with -y parameter hanlding 2008-06-02 13:33:45 +00:00
Marcus Boerger
cb0af1eeb8 - Fix issue with -y parameter hanlding 2008-06-02 13:24:15 +00:00
Marcus Boerger
678a38e9ba - Make work with new API 2008-06-01 17:16:40 +00:00
Marcus Boerger
c05c40cea4 - Add Openssl support 2008-06-01 07:39:06 +00:00
Marcus Boerger
aa4e898fe5 - Add version comand 2008-05-31 18:40:05 +00:00
Marcus Boerger
8010892bf0 - MFH Fix function names after they have been refactored 2008-05-31 15:53:16 +00:00
SVN Migration
16b4d8e0e1 This commit was manufactured by cvs2svn to create branch 'PHP_5_3'. 2008-05-12 21:03:49 +00:00