X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2FsyncFileBackend.php;h=4a74322228338109e118657a837a2549c0025397;hb=d9a965c69d0712567efd68c94a1f38f9cd50056c;hp=c0663a79311389ae61c4974f71a5223fda0f3f53;hpb=fb25d9fe77207c86d3f99934c74d5a0fa96ef0a2;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/syncFileBackend.php b/maintenance/syncFileBackend.php index c0663a7931..4a74322228 100644 --- a/maintenance/syncFileBackend.php +++ b/maintenance/syncFileBackend.php @@ -172,7 +172,7 @@ class SyncFileBackend extends Maintenance { $first = false; $lastPosInBatch = 0; - $pathsInBatch = array(); // changed paths + $pathsInBatch = []; // changed paths foreach ( $entries as $entry ) { if ( $entry['op'] !== 'null' ) { // null ops are just for reference $pathsInBatch[$entry['path']] = 1; // remove duplicates @@ -223,20 +223,20 @@ class SyncFileBackend extends Maintenance { return $status; } - $src->preloadFileStat( array( 'srcs' => $sPaths, 'latest' => 1 ) ); - $dst->preloadFileStat( array( 'srcs' => $dPaths, 'latest' => 1 ) ); + $src->preloadFileStat( [ 'srcs' => $sPaths, 'latest' => 1 ] ); + $dst->preloadFileStat( [ 'srcs' => $dPaths, 'latest' => 1 ] ); - $ops = array(); - $fsFiles = array(); + $ops = []; + $fsFiles = []; foreach ( $sPaths as $i => $sPath ) { $dPath = $dPaths[$i]; // destination - $sExists = $src->fileExists( array( 'src' => $sPath, 'latest' => 1 ) ); + $sExists = $src->fileExists( [ 'src' => $sPath, 'latest' => 1 ] ); if ( $sExists === true ) { // exists in source if ( $this->filesAreSame( $src, $dst, $sPath, $dPath ) ) { continue; // avoid local copies for non-FS backends } // Note: getLocalReference() is fast for FS backends - $fsFile = $src->getLocalReference( array( 'src' => $sPath, 'latest' => 1 ) ); + $fsFile = $src->getLocalReference( [ 'src' => $sPath, 'latest' => 1 ] ); if ( !$fsFile ) { $this->error( "Unable to sync '$dPath': could not get local copy." ); $status->fatal( 'backend-fail-internal', $src->getName() ); @@ -245,15 +245,15 @@ class SyncFileBackend extends Maintenance { } $fsFiles[] = $fsFile; // keep TempFSFile objects alive as needed // Note: prepare() is usually fast for key/value backends - $status->merge( $dst->prepare( array( - 'dir' => dirname( $dPath ), 'bypassReadOnly' => 1 ) ) ); + $status->merge( $dst->prepare( [ + 'dir' => dirname( $dPath ), 'bypassReadOnly' => 1 ] ) ); if ( !$status->isOK() ) { return $status; } - $ops[] = array( 'op' => 'store', - 'src' => $fsFile->getPath(), 'dst' => $dPath, 'overwrite' => 1 ); + $ops[] = [ 'op' => 'store', + 'src' => $fsFile->getPath(), 'dst' => $dPath, 'overwrite' => 1 ]; } elseif ( $sExists === false ) { // does not exist in source - $ops[] = array( 'op' => 'delete', 'src' => $dPath, 'ignoreMissingSource' => 1 ); + $ops[] = [ 'op' => 'delete', 'src' => $dPath, 'ignoreMissingSource' => 1 ]; } else { // error $this->error( "Unable to sync '$dPath': could not stat file." ); $status->fatal( 'backend-fail-internal', $src->getName() ); @@ -263,10 +263,10 @@ class SyncFileBackend extends Maintenance { } $t_start = microtime( true ); - $status = $dst->doQuickOperations( $ops, array( 'bypassReadOnly' => 1 ) ); + $status = $dst->doQuickOperations( $ops, [ 'bypassReadOnly' => 1 ] ); if ( !$status->isOK() ) { sleep( 10 ); // wait and retry copy again - $status = $dst->doQuickOperations( $ops, array( 'bypassReadOnly' => 1 ) ); + $status = $dst->doQuickOperations( $ops, [ 'bypassReadOnly' => 1 ] ); } $ellapsed_ms = floor( ( microtime( true ) - $t_start ) * 1000 ); if ( $status->isOK() && $this->getOption( 'verbose' ) ) { @@ -294,10 +294,10 @@ class SyncFileBackend extends Maintenance { protected function filesAreSame( FileBackend $src, FileBackend $dst, $sPath, $dPath ) { return ( - ( $src->getFileSize( array( 'src' => $sPath ) ) - === $dst->getFileSize( array( 'src' => $dPath ) ) // short-circuit - ) && ( $src->getFileSha1Base36( array( 'src' => $sPath ) ) - === $dst->getFileSha1Base36( array( 'src' => $dPath ) ) + ( $src->getFileSize( [ 'src' => $sPath ] ) + === $dst->getFileSize( [ 'src' => $dPath ] ) // short-circuit + ) && ( $src->getFileSha1Base36( [ 'src' => $sPath ] ) + === $dst->getFileSha1Base36( [ 'src' => $dPath ] ) ) ); }