Moving posts into an existing topic doesn't keep chronology


(Michael Downey) #1

I wanted to merge two topics, so tried to select all posts in the “old” topic and then move them into the new topic with the topic wrench menu.

Now, the “newer” topic has dates as follows:

  • 10h (lead post in the “new” topic)
  • 10h (1st reply in the “new” topic)
  • 8h (2nd reply in the “new” topic)
  • 1m (this is the original top post in the “old” topic)
  • 1d (reply to the above from “old” topic)
  • 1d (reply to the above reply from “old” topic)

To top it off, the first time I did a “select all”, the only thing that moved out of the old topic was the top/lead post. I tried again and manually selected each post in the topic, and everything moved.


(Kane York) #2

Perhaps there should be a radio-button setting when moving posts:

  • Place posts at the end of the destination topic
  • Merge posts chronologically with the destination topic

(Michael Downey) #3

Is the only rationale for placing them at the end of the topic so that people can notice them? If so, maybe a different design approach would be more appropriate.


(Jeff Atwood) #4

Why does randomly stitching posts together that were in sequence in their original topic, making them completely out of sequence in the new topic and interspersing them between a bunch of unrelated posts in the new topic… make sense?

That would destroy locality of replies.

As @riking said it could make sense as an option, but as a default?


(Michael Downey) #5

Because two threads were discussing the same topic, and the discussion was happening in parallel. A merged topic should represent the conversation as it occurred, no? Otherwise, as you scroll through a topic, you’ll suddenly shift back in time to a point when people were less informed and collective knowledge was less developed, and no one will notice because their mental model is one of a chronological conversation. If they do notice, they’ll wonder why all of a sudden people were talking about the previous state of things.

Discourse topics do not exist in a vacuum. :slight_smile: Preserving the chronology when merging topics represents an accurate portrayal of the conversation within a community.


(Mittineague) #6

I don’t know, I can think of examples where either as a default would result in a mess.
Perhaps a better solution would be to have a manual post ordering within a topic feature.

But that sounds like more than most moderators would want to deal with.

Maybe it would be best to Close cross-topics with a "already being discussed here ____ " or a “discussion continued here ____” ?


(Dave McClure) #7

This approach makes the most sense to me.


(Michael Downey) #8

Hmm. This is good for people reading the topic that got killed off, but doesn’t show people reading the surviving topic that the other conversation occurred and that there’s content elsewhere. :mailbox_with_no_mail:


(Mittineague) #9

Sorry for not making my example more explicit and complete.

For those it would be similar, except like
"discussion continued from ____" or “for a related discussion see ___”

@codinghorror doesn’t Discourse have this type of thing already covered via the gutter links?
And hasn’t post ordering already been discussed elsewhere?

Or I’m only very tired and confused :sleepy:


(Barbie) #10

Sorry if I’m out of line for jumping in here. Currently my mod privileges don’t give me merging capabilities, yet I see this on our forum all the time. I usually lock one thread, sometimes with a note and put a link to it in the other thread. Members can read the locked thread or not however at least they are being directed to respond in the open thread.


(TechnoBear) #11

We do have instances where a member starts two topics in different categories and after a short while it becomes apparent that the issues are different aspects of the same problem. In these instances it makes perfect sense to merge the two topics so members are not repeating advice or asking for code already given in the other topic.


Don't merge topics!
(ljpp) #12

Grave digging an old thread, as chronology is still breaking when moving messages from a thread to another. I agree with @downey that a sane default would be to keep the chronological order. At least I would say so, with 15+ years of moderation experience.


(Michael Downey) #13

Yes, this will always be an annoyance AFAICT. Without it, the content of
the topic doesn’t make sense.


(Mittineague) #14

As I posted last year, no simple solution is ideal. For example, say I have a code problem that involves PHP getting info from a MySQL database, and because I don’t know exactly what the problem is I think it’s two separate problems and start two topics, one for each.

First topic, replies ABCDEFG
Second topic, replies 123456789

Both are active and getting replies, the post datetimes of both taken together overlap

If it eventually becomes known that the problem of First topic is in reality the same problem as the Second topic, it could be decided to move First topic to the Second topic.

Results
123456789ABCDEFG - post datetimes are out of sequence, and it is likely that new posts will be jumbled much like a busy chat session.

Alternative
A12B3C45DE6F78G9 - post datetimes are in sequence, but the discussion flow is horribly jumbled.

I guess the ideal would be to have a way for Moderators to sort topic posts.
But I wonder how difficult that feature would be to code up. and even more so, how many Moderators would want to sort posts in a long topic?

IMHO the best alternative is to make two posts something like
First topic - “discussion continued {link here}” and Close topic
Second topic - “also discussed {link here}” and leave topic Open


(Joshua Rosenfeld) #15

With the understanding that there is no ideal solution to this topic, I think that the fact that the first post that is merged gets a “new” timestamp while the remainder of the merged posts maintain their original time stamp is a bug and should be fixed regardless of when/if a decision is made on the larger issue of merged topics.


#16

I just ran into this. We have a small community which uses discourse as a mailing list which had two active threads. Someone replied to thread B with a comment intended for thread A, which had drifted off to a new topic ©. By the time the problem was realized, there were a bunch of comments in thread B about topic C.

So I created a new thread for topic C, and moved all the posts from B, then moved all the posts from A also. But now I have all the later posts from B after the earlier posts from A, which is really confusing.

Is there any way to reset or change an individual posts time? I would be willing to manually set the order of each message if that was possible.


Don't merge topics!
(James North) #17

I just merged two topics with the ‘move to existing topic’ function and found that all the posts from the newly created redundant topic were randomly shoved into a timeline from about a year earlier and the ‘latest’ post is from Oct 2016 despite the new content coming from the last couple of months.

In the overall view on the main page it shows the poster and date from the newest posts that should be there, but the last post is actually from the previously untouched thread.

This seems buggy, but is there a solution to correctly reorder them with a command?


(Jeff Atwood) #18

Not buggy – inserting year old posts in as if they are new is a terrible idea. Chronology matters.


Error while moving first post of topic to another topic
(James North) #19

I don’t think I’ve made myself clear or there’s a misunderstanding.

The chronology is not being kept.

So I merged a newly created topic that should’ve been part of an older topic and the posts from that new topic just got dumped somewhere in the old topic about 2 years ago.


(Jeff Atwood) #20

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?


Don't merge topics!