| @@ 1152-1165 (lines=14) @@ | ||
| 1149 | * @since 1.25 |
|
| 1150 | * @return float|bool UNIX timestamp or false |
|
| 1151 | */ |
|
| 1152 | public function lastMasterChangeTimestamp() { |
|
| 1153 | $lastTime = false; |
|
| 1154 | $masterIndex = $this->getWriterIndex(); |
|
| 1155 | foreach ( $this->mConns as $conns2 ) { |
|
| 1156 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1157 | continue; |
|
| 1158 | } |
|
| 1159 | /** @var DatabaseBase $conn */ |
|
| 1160 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1161 | $lastTime = max( $lastTime, $conn->lastDoneWrites() ); |
|
| 1162 | } |
|
| 1163 | } |
|
| 1164 | return $lastTime; |
|
| 1165 | } |
|
| 1166 | ||
| 1167 | /** |
|
| 1168 | * Check if this load balancer object had any recent or still |
|
| @@ 1188-1203 (lines=16) @@ | ||
| 1185 | * @return array |
|
| 1186 | * @since 1.27 |
|
| 1187 | */ |
|
| 1188 | public function pendingMasterChangeCallers() { |
|
| 1189 | $fnames = []; |
|
| 1190 | ||
| 1191 | $masterIndex = $this->getWriterIndex(); |
|
| 1192 | foreach ( $this->mConns as $conns2 ) { |
|
| 1193 | if ( empty( $conns2[$masterIndex] ) ) { |
|
| 1194 | continue; |
|
| 1195 | } |
|
| 1196 | /** @var DatabaseBase $conn */ |
|
| 1197 | foreach ( $conns2[$masterIndex] as $conn ) { |
|
| 1198 | $fnames = array_merge( $fnames, $conn->pendingWriteCallers() ); |
|
| 1199 | } |
|
| 1200 | } |
|
| 1201 | ||
| 1202 | return $fnames; |
|
| 1203 | } |
|
| 1204 | ||
| 1205 | /** |
|
| 1206 | * @param mixed $value |
|