返回列表 发帖
楼主: cordless

[已解决] X3.4 forum_post 主键问题

12

主题

1637

回帖

2762

积分

Giter

贡献
145 点
金币
359 个
发表于 2023-2-19 15:28:55 | 显示全部楼层
stonys 发表于 2023-2-19 11:14
之前的innoDB性能非常高,
3.4时我的服务器CPU是1核,平时负载非常低,CPU30%以下,
升级到3.5后的负载超 ...

x3.4 innodb框架和3.5的主要区别在回帖这块,如果你的站点不是高频回帖场景占比很大的话,一般不至于。
有条件的话可以尝试短暂禁用回帖功能,观察CPU是否有明显的下降。

另外3.5这套方案早在测试阶段就给过超大型站点用过的,现在内置的是根据反馈做了优化后的版本,按理说应该可以才对。

看帖这块3.4 3.5逻辑都是一样的,重定position值优化的是看帖,理论上对3.4和3.5都有帮助,可以在查看阶段走快速查询。
你那边重写position以后,记得抽几条数据检查一下,position是否为当前帖子的楼层号。
另外forum_threaddisablepos这个表一定要清理下,凡是这个表里有数值的帖子都不走快速查询。
回复 支持 反对

使用道具 举报

12

主题

1637

回帖

2762

积分

Giter

贡献
145 点
金币
359 个
发表于 2023-2-19 15:31:44 | 显示全部楼层
cordless 发表于 2023-2-19 01:46
我看了下,我大概错误的地方只有几页,是不是我升级完X3.5后我查出forum_post表
每一个tid相同的,将positio ...

是这样的。
回复 支持 反对

使用道具 举报

16

主题

66

回帖

92

积分

渐入佳境

贡献
0 点
金币
5 个
发表于 2023-2-19 16:16:14 | 显示全部楼层
专家 发表于 2023-2-19 15:28
x3.4 innodb框架和3.5的主要区别在回帖这块,如果你的站点不是高频回帖场景占比很大的话,一般不至于。
...

感谢解答。
论坛回帖人很少,不是高频回帖场景。
又将thread表的maxposition重算修复了,之前的值都比较大,几万到几十万以上,不晓得是不是这个原因。
另外,pre_forum_threaddisablepos这个表有4000多条记录,这个表的数据是自动生成的吗?直接清理掉吗 ?
回复 支持 反对

使用道具 举报

12

主题

1637

回帖

2762

积分

Giter

贡献
145 点
金币
359 个
发表于 2023-2-19 16:17:46 | 显示全部楼层
stonys 发表于 2023-2-19 16:16
感谢解答。
论坛回帖人很少,不是高频回帖场景。
又将thread表的maxposition重算修复了,之前的值都比较 ...

threaddisablepos 理论上可以直接清空表,在早期版本这就是个内存表,重启一下服务器数据就没了那种的。
当然不放心的话可以备份一下。
回复 支持 反对

使用道具 举报

16

主题

66

回帖

92

积分

渐入佳境

贡献
0 点
金币
5 个
发表于 2023-2-19 16:34:18 | 显示全部楼层
专家 发表于 2023-2-19 16:17
threaddisablepos 理论上可以直接清空表,在早期版本这就是个内存表,重启一下服务器数据就没了那种的。
...

谢谢,已经清空。
观察两天看下
回复 支持 反对

使用道具 举报

7

主题

36

回帖

61

积分

渐入佳境

贡献
1 点
金币
10 个
发表于 2023-2-19 21:23:24 | 显示全部楼层
cordless 发表于 2023-2-19 01:46
我看了下,我大概错误的地方只有几页,是不是我升级完X3.5后我查出forum_post表
每一个tid相同的,将positio ...

我遇到这个情况。

当时升级完之后,我发现异常,回复升级之前的主题,升级之前的帖子会显示不出来,只有升级之后发的帖子,我检查了post表,发现position默认是从0开始的,于是修改为1开始,并且手动修改了有问题的帖子的position的值,一切正常了。

以下是升级之前的主题:

select tid,pid,first,position from nb_forum_post where tid=2024807;
+---------+----------+-------+----------+
| tid     | pid      | first | position |
+---------+----------+-------+----------+
| 2024807 | 34659470 |     1 | 41358421 |
| 2024807 | 34659556 |     0 | 41358507 |
| 2024807 | 34659706 |     0 | 41358657 |
| 2024807 | 34660591 |     0 | 41359542 |
| 2024807 | 34660729 |     0 | 41359680 |
| 2024807 | 34660731 |     0 | 41359682 |
| 2024807 | 34660738 |     0 | 41359689 |
+---------+----------+-------+----------+
7 rows in set (0.00 sec)


以下是升级之后发的主题:

select tid,pid,first,position from nb_forum_post where tid=2029587;
+---------+----------+-------+----------+
| tid     | pid      | first | position |
+---------+----------+-------+----------+
| 2029587 | 34746471 |     1 |        1 |
| 2029587 | 34746741 |     0 |        2 |
| 2029587 | 34746921 |     0 |        3 |
| 2029587 | 34747024 |     0 |        4 |
| 2029587 | 34747033 |     0 |        5 |
| 2029587 | 34747189 |     0 |        6 |
| 2029587 | 34747264 |     0 |        7 |
| 2029587 | 34748053 |     0 |        8 |
| 2029587 | 34748834 |     0 |        9 |
| 2029587 | 34749684 |     0 |       10 |
| 2029587 | 34749690 |     0 |       11 |
| 2029587 | 34750748 |     0 |       12 |
| 2029587 | 34750773 |     0 |       13 |
| 2029587 | 34753543 |     0 |       14 |
| 2029587 | 34755084 |     0 |       15 |
+---------+----------+-------+----------+
15 rows in set (0.01 sec)

回复 支持 反对

使用道具 举报

13

主题

88

回帖

124

积分

渐入佳境

贡献
1 点
金币
1 个
 楼主| 发表于 2023-2-19 22:04:24 | 显示全部楼层
hopejyb 发表于 2023-2-19 21:23
我遇到这个情况。

当时升级完之后,我发现异常,回复升级之前的主题,升级之前的帖子会显示不出来,只有 ...

我已经试过手动修改forum_post符合3.5后把forum_post加入那五个不转换的表中,就不让升级程序帮我改就可以了,唯一要做的是最后取消AI再把楼层修改回来.
回复 支持 反对

使用道具 举报

12

主题

1637

回帖

2762

积分

Giter

贡献
145 点
金币
359 个
发表于 2023-2-19 22:46:24 | 显示全部楼层
hopejyb 发表于 2023-2-19 21:23
我遇到这个情况。

当时升级完之后,我发现异常,回复升级之前的主题,升级之前的帖子会显示不出来,只有 ...

官方版本的X3.5表里的position没有默认值,不过这个应该影响不大。
回复 支持 反对

使用道具 举报

13

主题

88

回帖

124

积分

渐入佳境

贡献
1 点
金币
1 个
 楼主| 发表于 2023-3-2 01:38:01 | 显示全部楼层
专家 发表于 2023-2-19 22:46
官方版本的X3.5表里的position没有默认值,不过这个应该影响不大。

用修改后的update正常升级到x3.5了,
也把position修改好,看起来都正常了,
谢谢你的解说.
回复 支持 反对

使用道具 举报

13

主题

88

回帖

124

积分

渐入佳境

贡献
1 点
金币
1 个
 楼主| 发表于 2023-3-6 18:41:54 | 显示全部楼层
本帖最后由 cordless 于 2023-3-6 18:59 编辑
专家 发表于 2023-2-19 22:46
官方版本的X3.5表里的position没有默认值,不过这个应该影响不大。

我的forum_post都修正了,现在正在想办法修正forum_thread的maxposition.
发现到有3000多笔要修正,我的好像都是1.
0的只有几个都已修正,想问一下这个栏位错误到底有没有问题?
会参考到这个栏位吗?还是有回覆时会自动修正?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-6-18 23:03 , Processed in 0.104087 second(s), 9 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表