| @@ 1186-1199 (lines=14) @@ | ||
| 1183 | * @since 1.25 |
|
| 1184 | * @return float|bool UNIX timestamp or false |
|
| 1185 | */ |
|
| 1186 | public function lastMasterChangeTimestamp() { |
|
| 1187 | $lastTime = false; |
|
| 1188 | $masterIndex = $this->getWriterIndex(); |
|
| 1189 | foreach ( $this->mConns as $conns2 ) { |
|
| 1190 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1191 | continue; |
|
| 1192 | } |
|
| 1193 | /** @var DatabaseBase $conn */ |
|
| 1194 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1195 | $lastTime = max( $lastTime, $conn->lastDoneWrites() ); |
|
| 1196 | } |
|
| 1197 | } |
|
| 1198 | return $lastTime; |
|
| 1199 | } |
|
| 1200 | ||
| 1201 | /** |
|
| 1202 | * Check if this load balancer object had any recent or still |
|
| @@ 1222-1237 (lines=16) @@ | ||
| 1219 | * @return array |
|
| 1220 | * @since 1.27 |
|
| 1221 | */ |
|
| 1222 | public function pendingMasterChangeCallers() { |
|
| 1223 | $fnames = []; |
|
| 1224 | ||
| 1225 | $masterIndex = $this->getWriterIndex(); |
|
| 1226 | foreach ( $this->mConns as $conns2 ) { |
|
| 1227 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1228 | continue; |
|
| 1229 | } |
|
| 1230 | /** @var DatabaseBase $conn */ |
|
| 1231 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1232 | $fnames = array_merge( $fnames, $conn->pendingWriteCallers() ); |
|
| 1233 | } |
|
| 1234 | } |
|
| 1235 | ||
| 1236 | return $fnames; |
|
| 1237 | } |
|
| 1238 | ||
| 1239 | /** |
|
| 1240 | * @param mixed $value |
|