Some performance tweeks

This commit is contained in:
Michael Vogel 2020-08-16 13:57:56 +02:00
parent 977e4fe5d9
commit 45c12e7716
5 changed files with 12 additions and 7 deletions

View file

@ -2722,8 +2722,6 @@ class Item
'owner-id' => $owner_id, 'private' => $private, 'psid' => $psid];
self::update($fields, ['id' => $item_id]);
self::updateThread($item_id);
Worker::add(['priority' => PRIORITY_HIGH, 'dont_fork' => true], 'Notifier', Delivery::POST, $item_id);
/// @todo This code should be activated by the end of the year 2020
@ -3285,9 +3283,8 @@ class Item
$fields = ['uid', 'guid', 'created', 'edited', 'commented', 'received', 'changed', 'post-type',
'wall', 'private', 'pubmail', 'moderated', 'visible', 'starred', 'contact-id', 'uri-id',
'deleted', 'origin', 'forum_mode', 'network', 'author-id', 'owner-id'];
$condition = ["`id` = ? AND (`parent` = ? OR `parent` = 0)", $itemid, $itemid];
$item = self::selectFirst($fields, $condition);
$item = self::selectFirst($fields, ['id' => $itemid, 'gravity' => GRAVITY_PARENT]);
if (!DBA::isResult($item)) {
return;
}

View file

@ -166,7 +166,7 @@ class Profile
}
}
$profile = self::getByNickname($nickname, $user['uid']);
$profile = User::getOwnerDataById($user['uid'], false);
if (empty($profile) && empty($profiledata)) {
Logger::log('profile error: ' . DI::args()->getQueryString(), Logger::DEBUG);

View file

@ -97,6 +97,8 @@ class User
* @}
*/
private static $owner;
/**
* Returns true if a user record exists with the provided id
*
@ -213,6 +215,10 @@ class User
*/
public static function getOwnerDataById($uid, $check_valid = true)
{
if (!empty(self::$owner)) {
return self::$owner;
}
$owner = DBA::selectFirst('owner-view', [], ['uid' => $uid]);
if (!DBA::isResult($owner)) {
if (!DBA::exists('user', ['uid' => $uid]) || !$check_valid) {
@ -256,6 +262,7 @@ class User
$owner = self::getOwnerDataById($uid, false);
}
self::$owner = $owner;
return $owner;
}

View file

@ -729,6 +729,7 @@ return [
"resource-id" => ["resource-id"],
"deleted_changed" => ["deleted", "changed"],
"uid_wall_changed" => ["uid", "wall", "changed"],
"uid_unseen_wall" => ["uid", "unseen", "wall"],
"mention_uid_id" => ["mention", "uid", "id"],
"uid_eventid" => ["uid", "event-id"],
"icid" => ["icid"],