# 合并非常长的帖子会删除它们

**URL:** https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597
**Category:** Bug
**Created:** [2021年三月17日 22:28 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597 "2021-03-17T22:28:44Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![ggurbet](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ggurbet/32/120188_2.png) [@ggurbet](https://meta.discourse.org/u/ggurbet)
#### Post date: [2021年三月17日 22:28 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/1 "2021-03-17T22:28:44Z")

</div>

有一位用户发布了一篇包含文本的帖子，接着是两篇包含日志的长帖，最后又发布了一篇求助帖。我尝试合并这四篇帖子。在选中全部四篇帖子并点击“合并”后，只有选中的最后一篇帖子保留下来，其他帖子并未合并到其中，而是被标记为已删除。我恢复了这些帖子并再次尝试，但得到了相同的结果。

我安装的是 2.7.0.beta5 版本（[5c84f702b0](https://github.com/discourse/discourse/commits/5c84f702b0f846139f040066c878e28f4674e787)）。

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2021年三月17日 22:34 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/2 "2021-03-17T22:34:28Z")

</div>

合在一起会超过最大帖子长度吗？（听起来像是个 bug）

---

<div class="post-metadata">

### Author: ![ggurbet](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ggurbet/32/120188_2.png) [@ggurbet](https://meta.discourse.org/u/ggurbet)
#### Post date: [2021年三月17日 22:35 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/3 "2021-03-17T22:35:16Z")

</div>

可能吧。我想这也是为什么用户把日志分成了两条帖子发布。

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2021年三月23日 09:10 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/4 "2021-03-23T09:10:39Z")

</div>

这些帖子具体有多长？

---

<div class="post-metadata">

### Author: ![ggurbet](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ggurbet/32/120188_2.png) [@ggurbet](https://meta.discourse.org/u/ggurbet)
#### Post date: [2021年三月23日 10:06 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/5 "2021-03-23T10:06:26Z")

</div>

它们的原始大小如下：  
第 1 条帖子：101 个字符  
第 2 条帖子：28007 个字符  
第 3 条帖子：21840 个字符  
第 4 条帖子：21 个字符

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2021年三月23日 21:09 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/6 "2021-03-23T21:09:13Z")

</div>

好的，@dax，我们能复现这个问题吗？

---

<div class="post-metadata">

### Author: ![dax](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/dax/32/244677_2.png) [@dax](https://meta.discourse.org/u/dax)
#### Post date: [2021年三月24日 19:38 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/8 "2021-03-24T19:38:56Z")

</div>

是的，我可以复现该问题。

合并操作静默失败（控制台和日志中均未显示任何错误），帖子被软删除但未完成合并。

正如 @pfaffman 指出的，问题在于：由于“最大帖子长度”站点设置（默认为 32,000 个字符），过长的帖子无法合并，系统应显示错误提示，说明因字符数超过允许上限而无法执行合并操作。

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [2021年三月25日 05:07 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/9 "2021-03-25T05:07:14Z")

</div>

哎呀，这完全不理想 @techAPJ 能修复一下吗？我觉得显示错误信息就可以了。

---

<div class="post-metadata">

### Author: ![techAPJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/techapj/32/342990_2.png) [@techAPJ](https://meta.discourse.org/u/techAPJ)
#### Post date: [2021年四月1日 01:23 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/11 "2021-04-01T01:23:23Z")

</div>

现在我们将显示一个错误提示框，而不是静默失败，并且不会软删除帖子，具体通过以下方式实现：

> <https://github.com/discourse/discourse/commit/c478ffc6620cdc83c2a7e830b05b7cb7354663f3>
>
> https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597

感谢报告此问题 @ggurbet 👍

---

<div class="post-metadata">

### Author: ![techAPJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/techapj/32/342990_2.png) [@techAPJ](https://meta.discourse.org/u/techAPJ)
#### Post date: [2021年四月1日 01:45 UTC](https://meta.discourse.org/t/merging-very-long-posts-removes-them/183597/12 "2021-04-01T01:45:34Z")

</div>


