자동 삭제되는 게시글이 있는 주제의 답글 수

방금 확인해 보니, 읽지 않은 답글이 있을 때 Postgres 12 공지 주제에 표시된 읽지 않은 답글 수가 303(파란 원 안에 303)으로 표시되어 있었습니다. 주제를 열면 최신 답글로 바뀌면서 수가 1로 변경되었습니다.

해당 주제는 5일 이상 지난 답글을 자동 삭제하도록 설정되어 있으며, 현재 그 주제에는 답글이 하나만 있습니다.

읽지 않은 게시글이 있는 자동 정리(auto pruning) 주제에서 답글 수가 올바르게 계산되지 않는 것 같습니다?

이 문제는 모바일에서 발생했으며, 주제를 열어서 읽음으로 표시하기 전에 데스크톱에서 확인해야 했다는 생각이 들지 않았습니다.

2개의 좋아요

네, 이것은 사실상 Discourse V1부터 존재해 온 알려진 문제입니다. 많은 삭제 작업이 이루어진 후 답변을 작성하면, 해당 주제를 다음으로 방문할 때까지 항상 이러한 불일치가 발생합니다. 삭제 작업이 자동이든 수동이든 관계없습니다.

2개의 좋아요

자동 삭제 기능과 그 특정 주제가 결합되니까 훨씬 더 분명해지는 것 같아요.

수정하는 게 얼마나 불편할까요?

1개의 좋아요

나한테는 좀 특이한 기능이지만, 그래도 기능인 것 같아… 방문할 때 꽤 많은 것들이 삭제된 걸 알 수 있으니까.

1개의 좋아요

여기서 원점을 닫기 위해 말씀드리자면, 이 수정은 엄청나게, 그리고 극도로 불편합니다. 백엔드는 사용자가 읽지 않은 게시물의 정확한 개수를 직접 카운트하지 않으며, highest_post_number와 사용자가 해당 주제에서 마지막으로 방문한 post_number 사이의 차이(delta)에 의존합니다.

숫자로 환산하자면, 제 유일한 업무가 이 버그를 수정하는 것이라면 수개월이 걸릴 것이며, 이를 작동시키기 위해 커스텀 데이터 스토어를 발명해야 할 것입니다. 모든 읽지 않은 주제에 대해 count(*) 쿼리를 실행하는 것은 불가능합니다.

3개의 좋아요