| @@ 1174-1187 (lines=14) @@ | ||
| 1171 | * @since 1.25 |
|
| 1172 | * @return float|bool UNIX timestamp or false |
|
| 1173 | */ |
|
| 1174 | public function lastMasterChangeTimestamp() { |
|
| 1175 | $lastTime = false; |
|
| 1176 | $masterIndex = $this->getWriterIndex(); |
|
| 1177 | foreach ( $this->mConns as $conns2 ) { |
|
| 1178 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1179 | continue; |
|
| 1180 | } |
|
| 1181 | /** @var DatabaseBase $conn */ |
|
| 1182 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1183 | $lastTime = max( $lastTime, $conn->lastDoneWrites() ); |
|
| 1184 | } |
|
| 1185 | } |
|
| 1186 | return $lastTime; |
|
| 1187 | } |
|
| 1188 | ||
| 1189 | /** |
|
| 1190 | * Check if this load balancer object had any recent or still |
|
| @@ 1210-1225 (lines=16) @@ | ||
| 1207 | * @return array |
|
| 1208 | * @since 1.27 |
|
| 1209 | */ |
|
| 1210 | public function pendingMasterChangeCallers() { |
|
| 1211 | $fnames = []; |
|
| 1212 | ||
| 1213 | $masterIndex = $this->getWriterIndex(); |
|
| 1214 | foreach ( $this->mConns as $conns2 ) { |
|
| 1215 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1216 | continue; |
|
| 1217 | } |
|
| 1218 | /** @var DatabaseBase $conn */ |
|
| 1219 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1220 | $fnames = array_merge( $fnames, $conn->pendingWriteCallers() ); |
|
| 1221 | } |
|
| 1222 | } |
|
| 1223 | ||
| 1224 | return $fnames; |
|
| 1225 | } |
|
| 1226 | ||
| 1227 | /** |
|
| 1228 | * @param mixed $value |
|