| @@ 1204-1217 (lines=14) @@ | ||
| 1201 | * @since 1.25 |
|
| 1202 | * @return float|bool UNIX timestamp or false |
|
| 1203 | */ |
|
| 1204 | public function lastMasterChangeTimestamp() { |
|
| 1205 | $lastTime = false; |
|
| 1206 | $masterIndex = $this->getWriterIndex(); |
|
| 1207 | foreach ( $this->mConns as $conns2 ) { |
|
| 1208 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1209 | continue; |
|
| 1210 | } |
|
| 1211 | /** @var DatabaseBase $conn */ |
|
| 1212 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1213 | $lastTime = max( $lastTime, $conn->lastDoneWrites() ); |
|
| 1214 | } |
|
| 1215 | } |
|
| 1216 | return $lastTime; |
|
| 1217 | } |
|
| 1218 | ||
| 1219 | /** |
|
| 1220 | * Check if this load balancer object had any recent or still |
|
| @@ 1240-1255 (lines=16) @@ | ||
| 1237 | * @return array |
|
| 1238 | * @since 1.27 |
|
| 1239 | */ |
|
| 1240 | public function pendingMasterChangeCallers() { |
|
| 1241 | $fnames = []; |
|
| 1242 | ||
| 1243 | $masterIndex = $this->getWriterIndex(); |
|
| 1244 | foreach ( $this->mConns as $conns2 ) { |
|
| 1245 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1246 | continue; |
|
| 1247 | } |
|
| 1248 | /** @var DatabaseBase $conn */ |
|
| 1249 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1250 | $fnames = array_merge( $fnames, $conn->pendingWriteCallers() ); |
|
| 1251 | } |
|
| 1252 | } |
|
| 1253 | ||
| 1254 | return $fnames; |
|
| 1255 | } |
|
| 1256 | ||
| 1257 | /** |
|
| 1258 | * @param mixed $value |
|