Issue 9906: Improved view speed

This commit is contained in:
Michael 2021-02-09 16:35:01 +00:00
parent ab5a447bc2
commit f1377ce7fb
7 changed files with 76 additions and 50 deletions

View file

@ -1015,6 +1015,7 @@ class Item
}
if ($item['gravity'] == GRAVITY_PARENT) {
$item['post-user-id'] = $id;
Post\ThreadUser::insert($item['uri-id'], $item['uid'], $item);
}

View file

@ -464,12 +464,7 @@ class Post
if (!empty($update_fields)) {
$rows = DBA::selectToArray('post-view', ['post-user-id'], $thread_condition);
$thread_puids = array_column($rows, 'post-user-id');
$post_thread_condition = DBA::collapseCondition(['id' => $thread_puids]);
$post_thread_condition[0] = "EXISTS(SELECT `id` FROM `post-user` WHERE " .
$post_thread_condition[0] . " AND `uri-id` = `post-thread-user`.`uri-id` AND `uid` = `post-thread-user`.`uid`)";
if (!DBA::update('post-thread-user', $update_fields, $post_thread_condition)) {
if (!DBA::update('post-thread-user', $update_fields, ['post-user-id' => $thread_puids])) {
DBA::rollback();
Logger::notice('Updating post-thread-user failed', ['fields' => $update_fields, 'condition' => $condition]);
return false;