위키 게시물 편집 충돌

Edit Conflict: That post was edited by another user and your changes can no longer be saved에서 이어지는 토론입니다:

제 포럼에서 다시 “Edit Conflict(편집 충돌)” 문제가 발생하고 있습니다. 지금은 여러 사용자가 편집한 위키 포스트로 제한되어 있는 것으로 보입니다.

사람들이 동시에 편집할 때 발생하는 문제가 아닙니다. 이미 작성된 게시글을 다른 사용자가 편집하려고 할 때 발생하는 문제입니다.

예시:

  • 사용자 1의 최초 게시글
  • 사용자 1의 편집
  • 사용자 2가 편집을 시도하면 "Edit Conflict"가 표시되고, 사용자 1의 첫 번째 편집 내용이 사라집니다.

우리가 찾은 유일한 해결 방법은 게시글에서 나간 뒤 페이지를 새로고침(가끔 두 번)한 후 진행하는 것입니다.

1개의 좋아요

음, 바로 문제를 재현할 수 없습니다. 혹시 제가 진행하신 단계를 제대로 이해하지 못하고 있다면, 제가 시도해 본 내용을 담은 영상을 첨부합니다. 추가로 수행해야 할 단계가 있다면 알려 주세요. 관련 사용자의 상태(예: 관리자? модератор? 신뢰 수준은?)를 아는 것도 도움이 될 수 있습니다.

1개의 좋아요

관련된 모든 게시자는 модератор입니다.

우리는 하루 종일 업데이트되는 뉴스 게시글을 보유하고 있습니다.

사용자 1이 초기 게시글을 작성하고 제출합니다. 그런 다음, 보통 최소 45분에서 1시간 후에 같은 사용자가 다른 기사를 추가하기 위해 게시글을 수정합니다.

사용자 2가 나중에(아마도 한 시간 후에) 게시글에 내용을 추가하기 시작하지만, 작성 영역 하단에 “편집 충돌” 경고가 표시됩니다.

우리(모더레이터들)는 이 문제에 대해 충분히 논의했기 때문에, 우리 중 두 명 이상이 게시글을 작성할 때는 매우 신중하게 접근하며 이 상황을 주시하고 있습니다.

여기서 재현하지 못한 이유는, 수정할 위키 게시글을 아직 만나지 못했기 때문입니다.

2개의 좋아요

음, 편집 충돌을 재현하는 데 성공했습니다. 열린 탭/창이 오래 방치되어 상태가 오래된(stale) 상태에서 발생하는 것 같습니다. 아래 영상에 있는 창들은 약 20분 동안 아무 상호작용도 없이 방치되어 있었습니다. 영상 끝부분의 편집 충돌 메시지는 영상 진행 막대 뒤에 살짝 가려져 있을 수 있습니다.

@sam 어떻게 생각하시나요? 이것이 예상되는 동작인가요? MessageBus 문제일까요?

2개의 좋아요

네, @nbianca 이 부분을 본 기억이 나요. 게시물의 최신 “raw” 데이터를 가져온 후에 편집을 지연시키는 방식으로 처리했었죠.

메시지 버스 메시지를 누락하는 경우를 항상 방지하는 것이 옳다고 생각합니다.

기술적으로는 이 문제가 메시지 버스의 일시적 오류(glitch)처럼 보입니다. 과거에 오래된 탭을 다시 활성화할 때 롱 폴링으로 복구하고 전환하도록 하는 코드를 추가했었는데, 아마 이 특정 사용 사례는 빠져 있는 것 같습니다.

3개의 좋아요

코드는 좋았지만, MessageBus API가 어느 시점에 변경되어 더 이상 작동하지 않았습니다. 이 관련 버그 2건을 PR을 통해 수정했습니다:

2개의 좋아요

@Slowhand, 지난 한 주 동안 그 버그를 다시 확인해 보셨나요?

네, 어제는 하루에 최소 한 번씩 발생했습니다.

오늘은 아직 확인해 볼 기회가 없었습니다.

이 문제를 해결하기 위한 또 다른 수정 사항을 구현했습니다. 정상적으로 작동하므로 이 주제를 닫겠습니다.

3개의 좋아요