# Moving posts into an existing topic doesn't keep chronology

**URL:** https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392
**Category:** Feature
**Tags:** completed
**Created:** [October 21, 2014, 11:45pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392 "2014-10-21T23:45:42Z")
**Posts on this page:** 20
**Page:** 2

<div class="post-metadata">

### Author: ![JamesNorth](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jamesnorth/32/283740_2.png) [@JamesNorth](https://meta.discourse.org/u/JamesNorth)
#### Post date: [February 3, 2017, 11:17pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/21 "2017-02-03T23:17:33Z")

</div>

> [@codinghorror](#):
>
> Not buggy – inserting year old posts in as if they are new is a terrible idea. Chronology matters.

But you agree that year old posts being inserted as new is a terrible idea! 🙂

The opposite of that is to keep chronology so that when a duplicate topic is created by someone and merged to an established topic, the new post gets put it at the right point.

---

<div class="post-metadata">

### Author: ![ChrisBeach](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/chrisbeach/32/214628_2.png) [@ChrisBeach](https://meta.discourse.org/u/ChrisBeach)
#### Post date: [February 3, 2017, 11:28pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/22 "2017-02-03T23:28:43Z")

</div>

Could I be so bold as to run a poll?

As a forum moderator, which behaviour would you prefer to see?

_Poll ([view on site](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/22))_

---

<div class="post-metadata">

### Author: ![JamesNorth](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jamesnorth/32/283740_2.png) [@JamesNorth](https://meta.discourse.org/u/JamesNorth)
#### Post date: [February 3, 2017, 11:31pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/23 "2017-02-03T23:31:23Z")

</div>

But the existing behaviour is **not** B.

The existing behaviour shoves the posts in a totally random point … in my case about 200 posts back and ‘2 years ago’ despite having dates of ‘1 day ago’.

---

<div class="post-metadata">

### Author: ![JamesNorth](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jamesnorth/32/283740_2.png) [@JamesNorth](https://meta.discourse.org/u/JamesNorth)
#### Post date: [February 3, 2017, 11:46pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/24 "2017-02-03T23:46:36Z")

</div>

In addition to this, when listing the posts in latest or category view, the most recently dated post (which comes from the newer merged thread) is marked … but it’s actually buried in the thread way earlier.

That has to be a bug?

---

<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: [February 4, 2017, 1:47am UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/25 "2017-02-04T01:47:37Z")

</div>

Did you have any weird migrations on your site? Will I be able to repro this on [try.discourse.org](http://try.discourse.org)?

---

<div class="post-metadata">

### Author: ![JamesNorth](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jamesnorth/32/283740_2.png) [@JamesNorth](https://meta.discourse.org/u/JamesNorth)
#### Post date: [February 4, 2017, 5:41am UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/26 "2017-02-04T05:41:17Z")

</div>

> [@codinghorror](#):
>
> Did you have any weird migrations on your site?

Yes this forum was a perfect once-run import from phpBB. Would that make a difference?

> [@codinghorror](#):
>
> Will I be able to repro this on [try.discourse.org](http://try.discourse.org)?

Don’t know, but I’ll give it a run at some point. I have reproduced it on 3 forums that have come from phpBB, but not on a clean install yet.

---

<div class="post-metadata">

### Author: ![chiQ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/chiq/32/65917_2.png) [@chiQ](https://meta.discourse.org/u/chiQ)
#### Post date: [February 14, 2017, 9:50pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/27 "2017-02-14T21:50:01Z")

</div>

The option to do one or the other would be lovely. I like the other way, and so does my community, so the status quo is an irritant 🙂

---

<div class="post-metadata">

### Author: ![tjb1013](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tjb1013/32/120402_2.png) [@tjb1013](https://meta.discourse.org/u/tjb1013)
#### Post date: [March 6, 2017, 5:36pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/28 "2017-03-06T17:36:34Z")

</div>

> [@codinghorror](#):
>
> I guess my larger point is that none of these options is “correct” so either behavior will be objected to by someone.
> 
> Pick your poison?

Just experienced this and agree that it is a difficult problem. Had two parallel discussions on exact same topic and interleaving merged list according to chronology looks like it might have worked better. Latest post to original (merged into) topic is now quite a ways up in the thread. Tradeoff hard to analyze at glance.

---

<div class="post-metadata">

### Author: ![RickRoll](https://avatars.discourse-cdn.com/v4/letter/r/ed8c4c/32.png) [@RickRoll](https://meta.discourse.org/u/RickRoll)
#### Post date: [November 17, 2020, 6:09am UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/29 "2020-11-17T06:09:02Z")

</div>

> [@codinghorror](#):
>
> I guess my larger point is that none of these options is “correct” so either behavior will be objected to by someone.
> 
> Pick your poison?

Can’t discourse provides both ways and let mod/admin choose which one to use when merging?

---

<div class="post-metadata">

### Author: ![sunjam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sunjam/32/175682_2.png) [@sunjam](https://meta.discourse.org/u/sunjam)
#### Post date: [January 2, 2021, 1:02am UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/30 "2021-01-02T01:02:47Z")

</div>

I’m looking to insert moved posts to the last post on an existing topic. Seems this is not possible, so moved posts appear out of order and are listed after the original post in the existing topic.

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [January 2, 2021, 7:47pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/31 "2021-01-02T19:47:07Z")

</div>

Merging topics maybe isn’t usually a great idea, but I’d expect the posts to be displayed chronologically.

The current way is almost like threading (the original first post and its replies, followed by the parachuted-in first post and its replies, followed by subsequent posts) and, based on my understanding at least, goes against the spirit if not the letter of the Discourse philosophy.

As it stands, closing one topic and displaying some sort of admin notice at the top of both topics, drawing attention to the other topic, might often be a better approach.

---

<div class="post-metadata">

### Author: ![jericson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jericson/32/116215_2.png) [@jericson](https://meta.discourse.org/u/jericson)
#### Post date: [January 21, 2021, 5:03pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/32 "2021-01-21T17:03:37Z")

</div>

We’ve noticed this oddity too. I think the mental model our users have is that threads are **by definition** a chronological list of replies. Whether I’m replying to a new post or a post that’s months old, my reply goes at the end. Merging topics beaks that model since a portion of the thread gets inserted into the timeline at whatever point the moderator merges.

In the abstract, I can see the reasoning for the current behavior: it maintains the integrity of the conversation within the merged-in topic. But it also raises the question of _why topics are merged in the first place_.

In the case of our community, we want to consolidate discussion about a discrete topic in one thread. For instance, we want one topic for people to report whether or not they were [admitted to Ohio State’s class of 2025](https://talk.collegeconfidential.com/t/ohio-state-class-of-2025-official-thread/2106869/612?u=ccadmin_jon). If someone starts a new thread, it’ll get merged into the official topic. The replies are often independent of other replies in the thread. Most of the time people use the “Reply” button to respond to a particular post, so it’s not quite so important that replies are close to each other on the page.

If the replies were tightly linked together, I’m not sure there would be a need to merge threads. Instead, it makes sense to reply in one thread with a link to the other. Or maybe both directions. And perhaps close one of the threads. Merging implies that the two topics overlap to a large degree. There are other (and better) tools for dealing with parallel conversations.

At any rate, I’m just adding a data point: this implementation of merging is difficult to fit into the mental model our users have and makes the feature somewhat less useful than it could be if the replies were ordered chronologically.

---

<div class="post-metadata">

### Author: ![downey](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/downey/32/166878_2.png) [@downey](https://meta.discourse.org/u/downey)
#### Post date: [March 17, 2021, 7:34pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/33 "2021-03-17T19:34:05Z")

</div>

Maybe someday there could be an option in the topic’s 🔧 menu to “Sort Posts By Date”?

That way, the default remains the same, with posts merged in at the end. If an admin thinks that topic is better served by those posts being woven into the old discussion, a quick click of such an option would take care of it as needed.

---

<div class="post-metadata">

### Author: ![Tomas\_Hnyk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tomas_hnyk/32/217289_2.png) [@Tomas\_Hnyk](https://meta.discourse.org/u/Tomas_Hnyk)
#### Post date: [July 7, 2021, 12:43pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/34 "2021-07-07T12:43:07Z")

</div>

This seems to be coming back and back, is there a feature request somewhere? I would really appreciate this.

---

<div class="post-metadata">

### Author: ![supermathie](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/supermathie/32/507518_2.png) [@supermathie](https://meta.discourse.org/u/supermathie)
#### Post date: [July 12, 2021, 8:51pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/35 "2021-07-12T20:51:34Z")

</div>

There is a rake task to do this, but no trigger from the UI at the moment.

---

<div class="post-metadata">

### Author: ![Simon\_Manning](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon_manning/32/198596_2.png) [@Simon\_Manning](https://meta.discourse.org/u/Simon_Manning)
#### Post date: [October 26, 2021, 9:18pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/36 "2021-10-26T21:18:59Z")

</div>

> [@supermathie](#):
>
> There is a rake task to do this

I had a need to use this for some email threads that were split into separate topics during import so I thought I would elaborate on this in case anyone else also needs it. You’ll need to be able to access the command line on the server running your Discourse instance.

Start by moving all the desired posts into the target topic, then get the topic ID. In the address bar you might see something like the following, where the topic ID is 24855:  
`/t/topic-slug/24855/9`

On your server, enter the Discourse app with the following commands. You may need to clear some space if you have less than 5GB available.

```plaintext
cd /var/discourse
./launcher enter app

```

If that is successful, you can then reorder the posts by their timestamps with the following command, replacing the topic ID as appropriate.

```plaintext
rake posts:reorder_posts[24855]

```

---

<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: [October 27, 2021, 8:20pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/37 "2021-10-27T20:20:30Z")

</div>

> [@codinghorror](#):
>
> Pick your poison?

We are adding a “pick your poison” option to merging posts in, so you can choose which wrong method is least wrong for your use cases. 😉

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [February 8, 2022, 7:28pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/38 "2022-02-08T19:28:30Z")

</div>

> [@Michael Downey](#):
>
> Maybe someday there could be an option in the topic’s 🔧 menu to “Sort Posts By Date”?

Are there any plans to add this to the roadmap in the (near) future?

---

<div class="post-metadata">

### Author: ![jrgong](https://avatars.discourse-cdn.com/v4/letter/j/c57346/32.png) [@jrgong](https://meta.discourse.org/u/jrgong)
#### Post date: [February 9, 2022, 5:51am UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/39 "2022-02-09T05:51:43Z")

</div>

I am also very interested in this! At least in our forum we often restructure whole discussions into new topics since they often go offtopic. Also we often move posts for SEO reasons whenever a “moved+closed” topic ranks better than the follow-up one.

---

<div class="post-metadata">

### Author: ![Tomas\_Hnyk](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tomas_hnyk/32/217289_2.png) [@Tomas\_Hnyk](https://meta.discourse.org/u/Tomas_Hnyk)
#### Post date: [March 6, 2022, 12:06pm UTC](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392/40 "2022-03-06T12:06:22Z")

</div>

> [@codinghorror](#):
>
> We are adding a “pick your poison” option to merging posts in, so you can choose which wrong method is least wrong for your use cases. 😉

Has this been implemented yet?

[Previous page](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392.md?page=1)

[Next page](https://meta.discourse.org/t/moving-posts-into-an-existing-topic-doesnt-keep-chronology/21392.md?page=3)
