diff options
author | nobody <nobody@localhost> | 2006-01-05 23:36:45 +0000 |
---|---|---|
committer | nobody <nobody@localhost> | 2006-01-05 23:36:45 +0000 |
commit | 4ce70280face928c604c4300fd2ba6fdc78243da (patch) | |
tree | 3b2f616b592484fcd8bf9b70ea4a062cd5ac64fc /maintenance/storage/compressOld.php | |
parent | 9018faf3a776fffd61bbb9a7516da6ae8bf55f55 (diff) | |
parent | b2a8013a4893454f32dc13bd253e141d7fef2f35 (diff) | |
download | mediawikicore-1.5.5.tar.gz mediawikicore-1.5.5.zip |
This commit was manufactured by cvs2svn to create tag 'REL1_5_5'.1.5.5
Diffstat (limited to 'maintenance/storage/compressOld.php')
-rw-r--r-- | maintenance/storage/compressOld.php | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/maintenance/storage/compressOld.php b/maintenance/storage/compressOld.php new file mode 100644 index 000000000000..35d8c829460e --- /dev/null +++ b/maintenance/storage/compressOld.php @@ -0,0 +1,81 @@ +<?php +/** + * Compress the text of a wiki + * + * @package MediaWiki + * @subpackage Maintenance + */ + +/** */ + +/** + * Usage: + * + * Non-wikimedia + * php compressOld.php [options...] + * + * Wikimedia + * php compressOld.php <database> [options...] + * + * Options are: + * -t <type> set compression type to either: + * gzip: compress revisions independently + * concat: concatenate revisions and compress in chunks (default) + * -c <chunk-size> maximum number of revisions in a concat chunk + * -b <begin-date> earliest date to check for uncompressed revisions + * -e <end-date> latest revision date to compress + * -s <start-id> the old_id to start from + * -f <max-factor> the maximum ratio of compressed chunk bytes to uncompressed avg. revision bytes + * -h <threshold> is a minimum number of KB, where <max-factor> cuts in + * --extdb <cluster> store specified revisions in an external cluster (untested) + * + */ + +$optionsWithArgs = array( 't', 'c', 's', 'f', 'h', 'extdb' ); +require_once( "../commandLine.inc" ); +require_once( "compressOld.inc" ); + +if( !function_exists( "gzdeflate" ) ) { + print "You must enable zlib support in PHP to compress old revisions!\n"; + print "Please see http://www.php.net/manual/en/ref.zlib.php\n\n"; + die(); +} + +$defaults = array( + 't' => 'concat', + 'c' => 20, + 's' => 0, + 'f' => 3, + 'h' => 100, + 'b' => '', + 'e' => '', + 'extdb' => '', +); + +$options = $options + $defaults; + +if ( $options['t'] != 'concat' && $options['t'] != 'gzip' ) { + print "Type \"{$options['t']}\" not supported\n"; +} + +print "Depending on the size of your database this may take a while!\n"; +print "If you abort the script while it's running it shouldn't harm anything,\n"; +print "but if you haven't backed up your data, you SHOULD abort now!\n\n"; +print "Press control-c to abort first (will proceed automatically in 5 seconds)\n"; +#sleep(5); + +$success = true; +if ( $options['t'] == 'concat' ) { + $success = compressWithConcat( $options['s'], $options['c'], $options['f'], $options['h'], $options['b'], + $options['e'], $options['extdb'] ); +} else { + compressOldPages( $options['s'], $options['extdb'] ); +} + +if ( $success ) { + print "Done.\n"; +} + +exit(); + +?> |