if (!self::update1349()) {
return false;
}
- if (!self::update1350()) {
- return false;
- }
return true;
}
$default = ['url' => $item['author-link'], 'name' => $item['author-name'],
'photo' => $item['author-avatar'], 'network' => $item['network']];
- $item['author-id'] = Contact::getIdForURL($item["author-link"], 0, false, $default);
+ $item['author-id'] = Contact::getIdForURL($item["author-link"], 0, null, $default);
}
if (empty($item['owner-id'])) {
$default = ['url' => $item['owner-link'], 'name' => $item['owner-name'],
'photo' => $item['owner-avatar'], 'network' => $item['network']];
- $item['owner-id'] = Contact::getIdForURL($item["owner-link"], 0, false, $default);
+ $item['owner-id'] = Contact::getIdForURL($item["owner-link"], 0, null, $default);
}
if (empty($item['psid'])) {
return true;
}
+ if (!DBStructure::existsTable('item-delivery-data')) {
+ DI::config()->set('system', 'post_update_version', 1297);
+ return true;
+ }
+
$max_item_delivery_data = DBA::selectFirst('item-delivery-data', ['iid'], ['queue_count > 0 OR queue_done > 0'], ['order' => ['iid']]);
$max_iid = $max_item_delivery_data['iid'];
return true;
}
+ if (!DBStructure::existsTable('item-delivery-data')) {
+ DI::config()->set('system', 'post_update_version', 1345);
+ return true;
+ }
+
$id = DI::config()->get('system', 'post_update_version_1345_id', 0);
Logger::info('Start', ['item' => $id]);
}
/**
- * update the "vid" (verb) field in the item table
+ * update the "vid" (verb) field in the item table
*
* @return bool "true" when the job is done
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
$start_id = $id;
$rows = 0;
- $items = DBA::p("SELECT `item`.`id`, `item`.`vid`, `item`.`verb` AS `item-verb`, `item-content`.`verb`, `item-activity`.`activity`
+ $items = DBA::p("SELECT `item`.`id`, `item`.`verb` AS `item-verb`, `item-content`.`verb`, `item-activity`.`activity`
FROM `item` LEFT JOIN `item-content` ON `item-content`.`uri-id` = `item`.`uri-id`
LEFT JOIN `item-activity` ON `item-activity`.`uri-id` = `item`.`uri-id` AND `item`.`gravity` = ?
- WHERE `item`.`id` >= ? ORDER BY `item`.`id` LIMIT 10000", GRAVITY_ACTIVITY, $id);
+ WHERE `item`.`id` >= ? AND `item`.`vid` IS NULL ORDER BY `item`.`id` LIMIT 10000", GRAVITY_ACTIVITY, $id);
if (DBA::errorNo() != 0) {
Logger::error('Database error', ['no' => DBA::errorNo(), 'message' => DBA::errorMessage()]);
}
/**
- * update the "gsid" (global server id) field in the contact table
+ * update the "gsid" (global server id) field in the contact table
*
* @return bool "true" when the job is done
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
$id = $contact['id'];
DBA::update('contact',
- ['gsid' => GServer::getID($contact['baseurl']), 'baseurl' => GServer::cleanURL($contact['baseurl'])],
+ ['gsid' => GServer::getID($contact['baseurl'], true), 'baseurl' => GServer::cleanURL($contact['baseurl'])],
['id' => $contact['id']]);
++$rows;
}
/**
- * update the "gsid" (global server id) field in the apcontact table
+ * update the "gsid" (global server id) field in the apcontact table
*
* @return bool "true" when the job is done
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
return true;
}
- $id = DI::config()->get("system", "post_update_version_1349_id", 0);
+ $id = DI::config()->get("system", "post_update_version_1349_id", '');
Logger::info('Start', ['apcontact' => $id]);
$id = $apcontact['url'];
DBA::update('apcontact',
- ['gsid' => GServer::getID($apcontact['baseurl']), 'baseurl' => GServer::cleanURL($apcontact['baseurl'])],
+ ['gsid' => GServer::getID($apcontact['baseurl'], true), 'baseurl' => GServer::cleanURL($apcontact['baseurl'])],
['url' => $apcontact['url']]);
++$rows;
return false;
}
-
- /**
- * update the "gsid" (global server id) field in the gcontact table
- *
- * @return bool "true" when the job is done
- * @throws \Friendica\Network\HTTPException\InternalServerErrorException
- * @throws \ImagickException
- */
- private static function update1350()
- {
- // Was the script completed?
- if (DI::config()->get("system", "post_update_version") >= 1350) {
- return true;
- }
-
- $id = DI::config()->get("system", "post_update_version_1350_id", 0);
-
- Logger::info('Start', ['gcontact' => $id]);
-
- $start_id = $id;
- $rows = 0;
- $condition = ["`id` > ? AND `gsid` IS NULL AND `server_url` != '' AND NOT `server_url` IS NULL", $id];
- $params = ['order' => ['id'], 'limit' => 10000];
- $gcontacts = DBA::select('gcontact', ['id', 'server_url'], $condition, $params);
-
- if (DBA::errorNo() != 0) {
- Logger::error('Database error', ['no' => DBA::errorNo(), 'message' => DBA::errorMessage()]);
- return false;
- }
-
- while ($gcontact = DBA::fetch($gcontacts)) {
- $id = $gcontact['id'];
-
- DBA::update('gcontact',
- ['gsid' => GServer::getID($gcontact['server_url']), 'server_url' => GServer::cleanURL($gcontact['server_url'])],
- ['id' => $gcontact['id']]);
-
- ++$rows;
- }
- DBA::close($gcontacts);
-
- DI::config()->set("system", "post_update_version_1350_id", $id);
-
- Logger::info('Processed', ['rows' => $rows, 'last' => $id]);
-
- if ($start_id == $id) {
- DI::config()->set("system", "post_update_version", 1350);
- Logger::info('Done');
- return true;
- }
-
- return false;
- }
}