마지막 답변 후 몇 초 후 이 주제가 닫힙니다

기본 주제 타이머가 적용되어 6개월 후 자동으로 닫히도록 설정된 카테고리가 있습니다.

image

업데이트 이후로 "이 주제는 마지막 답변 후 몇 초 안에 닫힙니다."라는 버그 메시지가 표시됩니다.

image

렌치 → 주제 타이머로 이동하면 모달이 뜨고, 아래에 있는 메시지가 즉시 올바르게 수정됩니다.

문제는 모든 주제에서 이 문제가 발생하는 것이 아니라는 점입니다. 일부는 정상이고 일부는 그렇지 않습니다. 또한 업데이트 이후 생성된 일부 주제에서도 오류가 나타나므로(따라서 마이그레이션 때문은 아닐 가능성이 높습니다) 문제가 지속되고 있습니다.

다행히 화면에는 몇 초 안에 닫힌다고 표시되지만, 실제로는 주제들은 올바른 일정(예: 6개월)에 따라 닫힙니다.

재현이 가능합니까? 미리 감사합니다!

2개의 좋아요

@martin 님이 현재 이 분야에 종사하고 계신 것 같습니다. 혹시 의견이 있으신가요?

1개의 좋아요

음, 모달을 열면 스스로 수정된다는 점이 흥미롭네요. 이 부분을 살펴볼게요. 또한, 새로운 duration 컴포넌트를 도입하기 위한 PR이 열려 있는 상태인데요, 이 이슈를 열어주셔서 감사해요. 덕분에 이것도 바꿀 수 있게 되었거든요:

이걸 이렇게:

바꿀 수 있게 되었어요. 그래서 시간 → 월 계산은 직접 하지 않아도 됩니다.

4개의 좋아요

이 최신 PR(FEATURE: Relative time input for timers and bookmarks and promote auto-close after last post timer - Pull Request #12063 - discourse/discourse - GitHub)를 기반으로 이 문제를 재현할 수 없는 것 같습니다.

설정값을 동일하게 맞춰서 새 주제를 만들면 다음과 같은 화면이 표시됩니다:

그리고 주제 타이머 모달로 들어가면 (이 부분은 최신 PR에서 약간 변경했습니다):

따라서 최신 변경 사항이 병합될 때까지 기다렸다가 결과를 확인해 보시고, 그래도 문제가 해결되지 않으면 제가 추가로 조사하겠습니다. 병합이 완료되면 다시 이곳에 업데이트를 남기겠습니다.

2개의 좋아요

위에서 설명한 변경 사항은 이제 병합되었으며, 테스트 통과(tests-passed) 브랜치에 있습니다.

2개의 좋아요

시간 내주셔서 감사합니다!

f6e6ae5e24 에서 추가로 조사해 본 결과, 이 이상한 동작은 오래된 주제(topic)에서만 나타나므로 결국 마이그레이션 버그인 것으로 보입니다.

오래된 버그 있는 타이머는 duration = 4320 and duration_minutes = NULL입니다.
잘 동작하는 새로운 타이머는 duration = NULL and duration_minutes = 259200입니다.

다음 두 커밋 중 하나를 의심하고 있습니다:

FEATURE: Topic timer UI revamp (#11912) · discourse/discourse@6d72c8a · GitHub

FEATURE: Allow durations < 1 hour and < 1 day for topic timers where … · discourse/discourse@4af77f1 · GitHub

2개의 좋아요

아, 무슨 일이 있었는지 알겠어요. 제 실수였어요. 초기 마이그레이션이 정확하지 않았습니다. 이 문제를 해결하려면 FIX: Topic timer duration_minutes was not backfilled correctly (#12004) · discourse/discourse@18da1d5 · GitHub 또는 최신 버전으로 업그레이드해야 합니다. (만약 정말로 업그레이드가 불가능하다면, 링크된 커밋의 마이그레이션 후 업데이트 쿼리를 실행하세요.)

3개의 좋아요

좋아요, 정말 감사합니다! 최대한 빨리 최신 버전으로 업데이트할게요..

2개의 좋아요