mirror of
https://github.com/friendica/friendica
synced 2025-05-03 23:44:10 +02:00
The "term" table is removed
This commit is contained in:
parent
f58d42e317
commit
7a82171bfe
8 changed files with 68 additions and 265 deletions
|
@ -227,31 +227,8 @@ class DBClean {
|
|||
// The legacy functionality had been removed
|
||||
DI::config()->set('system', 'finished-dbclean-6', true);
|
||||
} elseif ($stage == 7) {
|
||||
$last_id = DI::config()->get('system', 'dbclean-last-id-7', 0);
|
||||
|
||||
Logger::log("Deleting orphaned data from term table. Last ID: ".$last_id);
|
||||
$r = DBA::p("SELECT `oid`, `tid` FROM `term`
|
||||
WHERE NOT EXISTS (SELECT `id` FROM `item` WHERE `item`.`id` = `term`.`oid`) AND `tid` >= ?
|
||||
ORDER BY `tid` LIMIT ?", $last_id, $limit);
|
||||
$count = DBA::numRows($r);
|
||||
if ($count > 0) {
|
||||
Logger::log("found term orphans: ".$count);
|
||||
while ($orphan = DBA::fetch($r)) {
|
||||
$last_id = $orphan["tid"];
|
||||
DBA::delete('term', ['oid' => $orphan["oid"]]);
|
||||
}
|
||||
Worker::add(PRIORITY_MEDIUM, 'DBClean', 7, $last_id);
|
||||
} else {
|
||||
Logger::log("No term orphans found");
|
||||
}
|
||||
DBA::close($r);
|
||||
Logger::log("Done deleting ".$count." orphaned data from term table. Last ID: ".$last_id);
|
||||
|
||||
DI::config()->set('system', 'dbclean-last-id-7', $last_id);
|
||||
|
||||
if ($count < $limit) {
|
||||
DI::config()->set('system', 'finished-dbclean-7', true);
|
||||
}
|
||||
// The legacy functionality had been removed
|
||||
DI::config()->set('system', 'finished-dbclean-7', true);
|
||||
} elseif ($stage == 8) {
|
||||
if ($days <= 0) {
|
||||
return;
|
||||
|
|
|
@ -1,60 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @copyright Copyright (C) 2020, Friendica
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace Friendica\Worker;
|
||||
|
||||
use Friendica\Core\Logger;
|
||||
use Friendica\Database\DBA;
|
||||
use Friendica\Model\Term;
|
||||
|
||||
class TagUpdate
|
||||
{
|
||||
public static function execute()
|
||||
{
|
||||
$messages = DBA::p("SELECT `oid`,`item`.`guid`, `item`.`created`, `item`.`received` FROM `term` INNER JOIN `item` ON `item`.`id`=`term`.`oid` WHERE `term`.`otype` = 1 AND `term`.`guid` = ''");
|
||||
|
||||
Logger::log('fetched messages: ' . DBA::numRows($messages));
|
||||
while ($message = DBA::fetch($messages)) {
|
||||
if ($message['uid'] == 0) {
|
||||
$global = true;
|
||||
|
||||
DBA::update('term', ['global' => true], ['otype' => Term::OBJECT_TYPE_POST, 'guid' => $message['guid']]);
|
||||
} else {
|
||||
$global = (DBA::count('term', ['uid' => 0, 'otype' => Term::OBJECT_TYPE_POST, 'guid' => $message['guid']]) > 0);
|
||||
}
|
||||
|
||||
$fields = ['guid' => $message['guid'], 'created' => $message['created'],
|
||||
'received' => $message['received'], 'global' => $global];
|
||||
DBA::update('term', $fields, ['otype' => Term::OBJECT_TYPE_POST, 'oid' => $message['oid']]);
|
||||
}
|
||||
|
||||
DBA::close($messages);
|
||||
|
||||
$messages = DBA::select('item', ['guid'], ['uid' => 0]);
|
||||
|
||||
Logger::log('fetched messages: ' . DBA::numRows($messages));
|
||||
while ($message = DBA::fetch($messages)) {
|
||||
DBA::update('item', ['global' => true], ['guid' => $message['guid']]);
|
||||
}
|
||||
|
||||
DBA::close($messages);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue