@felix @dessalines that's nice. I use MySQL and it's pretty barebones. Anyway, here's how I get all replies (and replies to those, as far as they go) for an arbitrary comment:
https://github.com/grishka/Smithereen/blob/master/src/main/java/smithereen/storage/PostStorage.java#L415
Here's its usage: https://github.com/grishka/Smithereen/blob/master/src/main/java/smithereen/routes/PostRoutes.java#L276
I take the reply key of the parent post/comment and append its ID to it.
And here's how it looks in the database.
I'm curious as to why you send the entire reply chain in each comment. To solve the case when a comment in the middle of a thread is deleted?
@grishka @dessalines seeing that code formatting makes me really happy that Rust has auto-formatting :p
We dont send the entire reply chain, only the ID of the parent post and the immediate parent comment, if it exists. Further parent comments are fetched one by one after that.