MediaWiki master
|
Copy all files in one container of one backend to another. More...
Inherits Maintenance.
Public Member Functions | |
__construct () | |
Default constructor. | |
execute () | |
Do the actual work. | |
Public Member Functions inherited from Maintenance | |
canExecuteWithoutLocalSettings () | |
Whether this script can run without LocalSettings.php. | |
checkRequiredExtensions () | |
Verify that the required extensions are installed. | |
cleanupChanneled () | |
Clean up channeled output. | |
clearParamsAndArgs () | |
Clear all params and arguments. | |
createChild (string $maintClass, ?string $classFile=null) | |
Returns an instance of the given maintenance script, with all of the current arguments passed to it. | |
finalSetup (SettingsBuilder $settingsBuilder) | |
Handle some last-minute setup here. | |
getConfig () | |
getDbType () | |
Does the script need different DB access? By default, we give Maintenance scripts normal rights to the DB. | |
getName () | |
Get the script's name. | |
getParameters () | |
isQuiet () | |
loadParamsAndArgs ( $self=null, $opts=null, $args=null) | |
Process command line arguments when running as a child script. | |
loadWithArgv ( $argv) | |
Load params and arguments from a given array of command-line arguments. | |
memoryLimit () | |
Normally we disable the memory_limit when running admin scripts. | |
outputChanneled ( $msg, $channel=null) | |
Message outputter with channeled message support. | |
purgeRedundantText ( $delete=true) | |
Support function for cleaning up redundant text records. | |
runChild ( $maintClass, $classFile=null) | |
Returns an instance of the given maintenance script, with all of the current arguments passed to it. | |
setArg ( $argId, $value) | |
Programmatically set the value of the given argument. | |
setConfig (Config $config) | |
setDB (IMaintainableDatabase $db) | |
Sets database object to be returned by getDB(). | |
setDBProvider (IConnectionProvider $dbProvider) | |
setName (string $name) | |
setOption (string $name, $value) | |
Programmatically set the value of the given option. | |
setup () | |
Provides subclasses with an opportunity to perform initial checks. | |
validateParamsAndArgs () | |
Run some validation checks on the params, etc. | |
Protected Member Functions | |
copyFileBatch (array $srcPathsRel, $backendRel, FileBackend $src, FileBackend $dst) | |
delFileBatch (array $dstPathsRel, $backendRel, FileBackend $dst) | |
filesAreSame (FileBackend $src, FileBackend $dst, $sPath, $dPath) | |
getListingDiffRel (FileBackend $src, FileBackend $dst, $backendRel) | |
Protected Member Functions inherited from Maintenance | |
addArg ( $arg, $description, $required=true, $multi=false) | |
Add some args that are needed. | |
addDefaultParams () | |
Add the default parameters to the scripts. | |
addDescription ( $text) | |
Set the description text. | |
addOption ( $name, $description, $required=false, $withArg=false, $shortName=false, $multiOccurrence=false) | |
Add a parameter to the script. | |
afterFinalSetup () | |
Override to perform any required operation at the end of initialisation. | |
beginTransaction (IDatabase $dbw, $fname) | |
Begin a transaction on a DB. | |
commitTransaction (IDatabase $dbw, $fname) | |
Commit the transaction on a DB handle and wait for replica DBs to catch up. | |
countDown ( $seconds) | |
Count down from $seconds to zero on the terminal, with a one-second pause between showing each number. | |
deleteOption ( $name) | |
Remove an option. | |
error ( $err, $die=0) | |
Throw an error to the user. | |
fatalError ( $msg, $exitCode=1) | |
Output a message and terminate the current script. | |
getArg ( $argId=0, $default=null) | |
Get an argument. | |
getArgName (int $argId) | |
Get the name of an argument. | |
getArgs ( $offset=0) | |
Get arguments. | |
getBatchSize () | |
Returns batch size. | |
getDB ( $db, $groups=[], $dbDomain=false) | |
Returns a database to be used by current maintenance script. | |
getDir () | |
Get the maintenance directory. | |
getHookContainer () | |
Get a HookContainer, for running extension hooks or for hook metadata. | |
getHookRunner () | |
Get a HookRunner for running core hooks. | |
getOption ( $name, $default=null) | |
Get an option, or return the default. | |
getPrimaryDB () | |
getReplicaDB () | |
getServiceContainer () | |
Returns the main service container. | |
getStdin ( $len=null) | |
Return input from stdin. | |
hasArg ( $argId=0) | |
Does a given argument exist? | |
hasOption ( $name) | |
Checks to see if a particular option was set. | |
loadSpecialVars () | |
Handle the special variables that are global to all scripts. | |
maybeHelp ( $force=false) | |
Maybe show the help. | |
output ( $out, $channel=null) | |
Throw some output to the user. | |
parseIntList ( $text) | |
Utility function to parse a string (perhaps from a command line option) into a list of integers (perhaps some kind of numeric IDs). | |
prompt (string $prompt, string $default=null) | |
requireExtension ( $name) | |
Indicate that the specified extension must be loaded before the script can run. | |
rollbackTransaction (IDatabase $dbw, $fname) | |
Rollback the transaction on a DB handle. | |
setAllowUnregisteredOptions ( $allow) | |
Sets whether to allow unregistered options, which are options passed to a script that do not match an expected parameter. | |
setBatchSize ( $s=0) | |
showHelp () | |
Definitely show the help. | |
supportsOption ( $name) | |
Checks to see if a particular option in supported. | |
validateUserOption ( $errorMsg) | |
waitForReplication () | |
Wait for replica DBs to catch up. | |
Protected Attributes | |
array null | $statCache = null |
(path sha1 => stat) Pre-computed dst stat entries from listings | |
Protected Attributes inherited from Maintenance | |
array | $mArgs = [] |
This is the list of arguments that were actually passed. | |
int null | $mBatchSize = null |
Batch size. | |
string | $mDbPass = null |
string | $mDbUser = null |
string | $mDescription = '' |
A description of the script, children should change this via addDescription() | |
bool | $mInputLoaded = false |
Have we already loaded our user input? | |
array | $mOptions = [] |
This is the list of options that were actually passed. | |
array[] | $mParams = [] |
Empty. | |
bool | $mQuiet = false |
Special vars for params that are always used. | |
string null | $mSelf |
Name of the script currently running. | |
MaintenanceParameters | $parameters |
Additional Inherited Members | |
Static Public Member Functions inherited from Maintenance | |
static | getTermSize () |
Get the terminal size as a two-element array where the first element is the width (number of columns) and the second element is the height (number of rows). | |
static | posix_isatty ( $fd) |
Wrapper for posix_isatty() We default as considering stdin a tty (for nice readline methods) but treating stout as not a tty to avoid color codes. | |
static | readconsole ( $prompt='> ') |
Prompt the console for input. | |
static | requireTestsAutoloader () |
Call this to set up the autoloader to allow classes to be used from the tests directory. | |
Public Attributes inherited from Maintenance | |
resource null | $fileHandle |
Used when creating separate schema files. | |
array | $orderedOptions = [] |
Used to read the options in the order they were passed. | |
const | DB_ADMIN = 2 |
const | DB_NONE = 0 |
Constants for DB access type. | |
const | DB_STD = 1 |
const | GENERIC_MAINTENANCE_PARAMETERS = 'Script runner options' |
const | SCRIPT_DEPENDENT_PARAMETERS = 'Common options' |
const | STDIN_ALL = -1 |
Copy all files in one container of one backend to another.
This can also be used to re-shard the files for one backend using the config of second backend. The second backend should have the same config as the first, except for it having a different name and different sharding configuration. The backend should be made read-only while this runs. After this script finishes, the old files in the containers can be deleted.
Definition at line 41 of file copyFileBackend.php.
CopyFileBackend::__construct | ( | ) |
Default constructor.
Children should call this first if implementing their own constructors
Reimplemented from Maintenance.
Definition at line 45 of file copyFileBackend.php.
References Maintenance\addDescription(), Maintenance\addOption(), and Maintenance\setBatchSize().
|
protected |
string[] | $srcPathsRel | |
string | $backendRel | |
FileBackend | $src | |
FileBackend | $dst |
Definition at line 212 of file copyFileBackend.php.
References Wikimedia\FileBackend\FileBackend\clearCache(), Wikimedia\FileBackend\FileBackend\doQuickOperations(), Maintenance\error(), Maintenance\fatalError(), Wikimedia\FileBackend\FileBackend\fileExists(), filesAreSame(), Wikimedia\FileBackend\FileBackend\getDomainId(), Wikimedia\FileBackend\FileBackend\getLocalReference(), Wikimedia\FileBackend\FileBackend\getLocalReferenceMulti(), Wikimedia\FileBackend\FileBackend\getRootStoragePath(), Maintenance\hasOption(), Maintenance\output(), and Wikimedia\FileBackend\FileBackend\prepare().
Referenced by execute().
|
protected |
string[] | $dstPathsRel | |
string | $backendRel | |
FileBackend | $dst |
Definition at line 299 of file copyFileBackend.php.
References Wikimedia\FileBackend\FileBackend\doQuickOperations(), Maintenance\error(), Maintenance\fatalError(), Wikimedia\FileBackend\FileBackend\getDomainId(), Wikimedia\FileBackend\FileBackend\getRootStoragePath(), and Maintenance\output().
Referenced by execute().
CopyFileBackend::execute | ( | ) |
Do the actual work.
All child classes will need to implement this
Reimplemented from Maintenance.
Definition at line 61 of file copyFileBackend.php.
References $path, copyFileBatch(), delFileBatch(), Maintenance\fatalError(), Maintenance\getBatchSize(), getListingDiffRel(), Maintenance\getOption(), Maintenance\getServiceContainer(), Maintenance\hasOption(), Maintenance\output(), and Maintenance\setBatchSize().
|
protected |
FileBackend | $src | |
FileBackend | $dst | |
string | $sPath | |
string | $dPath |
Definition at line 337 of file copyFileBackend.php.
References Wikimedia\FileBackend\FileBackend\getFileSha1Base36(), Wikimedia\FileBackend\FileBackend\getFileStat(), and Maintenance\hasOption().
Referenced by copyFileBatch().
|
protected |
FileBackend | $src | |
FileBackend | $dst | |
string | $backendRel |
Definition at line 176 of file copyFileBackend.php.
References Maintenance\fatalError(), Wikimedia\FileBackend\FileBackend\getFileList(), and Wikimedia\FileBackend\FileBackend\getRootStoragePath().
Referenced by execute().
|
protected |
(path sha1 => stat) Pre-computed dst stat entries from listings
Definition at line 43 of file copyFileBackend.php.