mirror of
https://github.com/friendica/friendica
synced 2024-12-23 04:00:15 +00:00
Merge pull request #12910 from annando/delete-blocked
Blocked servers can now be deleted
This commit is contained in:
commit
34b575233a
2 changed files with 18 additions and 3 deletions
|
@ -23,6 +23,7 @@ namespace Friendica\Worker;
|
|||
|
||||
use Friendica\Core\Logger;
|
||||
use Friendica\Database\DBA;
|
||||
use Friendica\DI;
|
||||
use Friendica\Model\GServer;
|
||||
use Friendica\Util\Network;
|
||||
|
||||
|
@ -33,11 +34,14 @@ class UpdateBlockedServers
|
|||
*/
|
||||
public static function execute()
|
||||
{
|
||||
Logger::debug('Update blocked servers - start');
|
||||
Logger::info('Update blocked servers - start');
|
||||
$gservers = DBA::select('gserver', ['id', 'url', 'blocked']);
|
||||
$changed = 0;
|
||||
$unchanged = 0;
|
||||
while ($gserver = DBA::fetch($gservers)) {
|
||||
$blocked = Network::isUrlBlocked($gserver['url']);
|
||||
if (!is_null($gserver['blocked']) && ($blocked == $gserver['blocked'])) {
|
||||
$unchanged++;
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -46,8 +50,15 @@ class UpdateBlockedServers
|
|||
} else {
|
||||
GServer::setUnblockedById($gserver['id']);
|
||||
}
|
||||
$changed++;
|
||||
}
|
||||
DBA::close($gservers);
|
||||
Logger::debug('Update blocked servers - done');
|
||||
Logger::info('Update blocked servers - done', ['changed' => $changed, 'unchanged' => $unchanged]);
|
||||
|
||||
if (DI::config()->get('system', 'delete-blocked-servers')) {
|
||||
Logger::info('Delete blocked servers - start');
|
||||
$ret = DBA::delete('gserver', ["`blocked` AND NOT EXISTS(SELECT `gsid` FROM `inbox-status` WHERE `gsid` = `gserver`.`id`) AND NOT EXISTS(SELECT `gsid` FROM `contact` WHERE gsid= `gserver`.`id`) AND NOT EXISTS(SELECT `gsid` FROM `apcontact` WHERE `gsid` = `gserver`.`id`) AND NOT EXISTS(SELECT `gsid` FROM `delivery-queue` WHERE `gsid` = `gserver`.`id`) AND NOT EXISTS(SELECT `gsid` FROM `diaspora-contact` WHERE `gsid` = `gserver`.`id`) AND NOT EXISTS(SELECT `gserver-id` FROM `gserver-tag` WHERE `gserver-id` = `gserver`.`id`)"]);
|
||||
Logger::info('Delete blocked servers - done', ['ret' => $ret, 'rows' => DBA::affectedRows()]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -237,6 +237,10 @@ return [
|
|||
// Periodically delete waiting database processes.
|
||||
'delete_sleeping_processes' => false,
|
||||
|
||||
// delete-blocked-servers (Boolean)
|
||||
// Delete blocked servers if there are no foreign key violations.
|
||||
'delete-blocked-servers' => false,
|
||||
|
||||
// dice_profiler_threshold (Float)
|
||||
// For profiling Dice class creation (0 = disabled, >0 = seconds threshold for profiling)
|
||||
'dice_profiler_threshold' => 0.5,
|
||||
|
@ -508,7 +512,7 @@ return [
|
|||
'png_quality' => 8,
|
||||
|
||||
// process_view (Boolean)
|
||||
// Process the "View" activity that is used by Peertube. View activities are displayed, when "emoji_activities" are enabled.
|
||||
// Process the "View" activity that is used by Peertube. View activities are displayed, when "emoji_activities" are enabled.
|
||||
'process_view' => false,
|
||||
|
||||
// profiler (Boolean)
|
||||
|
|
Loading…
Reference in a new issue