영구 삭제 기능이 작동하지 않음

현재 2.9.0.beta14 버전을 사용 중이며, app.yml에서 DISCOURSE_CAN_PERMANENTLY_DELETE를 활성화하여 영구 삭제를 켜 두었습니다.

게시물에 대한 옵션이 포럼에 표시되고, 이 옵션을 클릭하면 확인을 요청하는 모달이 나타납니다. 그러나 확인(OK)을 클릭해도 아무런 반응이 없습니다.

개발자 도구의 네트워크 탭을 확인해 보았지만 요청이 전송되지 않았고, 콘솔에서도 추가적인 오류나 로그가 없습니다.

게시물은 삭제되지 않고 그대로 남아 있습니다.

1개의 좋아요

3.0.0 beta 15 업데이트 후에도 여전히 정상적으로 작동하지 않습니다. 로그 등을 제공하기 위해 제가 할 수 있는 일이 있을까요? 감사합니다

@Soenneker 님, 안녕하세요 :slight_smile:

늦게 답변드려 죄송합니다. 해당 설정을 활성화하고 테스트 사이트에서 직접 실행해 보니, 영구 삭제를 시도하기 전에 페이지를 새로고침하지 않는 경우에만 비슷한 현상이 관찰됩니다.

제 단계별 재현 과정은 다음과 같습니다:

  • 기존 게시글을 소프트 삭제
  • 게시글 wrench(도구) 아이콘을 열고 ‘영구 삭제’ 클릭
  • ‘정말 이 게시글을 영구적으로 삭제하시겠습니까? 복구할 수 없습니다.’ 확인 모달이 표시됨
  • ‘예’ 클릭
  • 모달은 닫히지만 반응이 없습니다. 게시글은 여전히 소프트 삭제된 상태

반면, 페이지를 새로고침하면 의도대로 동작합니다:

  • 기존 게시글을 소프트 삭제
  • 페이지 새로고침
  • '숨겨진 답변 보기’를 사용하여 소프트 삭제된 게시글 표시
  • 게시글 wrench(도구) 아이콘을 열고 ‘영구 삭제’ 클릭
  • ‘정말 이 게시글을 영구적으로 삭제하시겠습니까? 복구할 수 없습니다.’ 확인 모달이 표시됨
  • ‘예’ 클릭
  • 게시글이 영구적으로 삭제됨 (5분을 기다리거나, 관리자 권한이 있는 두 번째 테스트 사용자를 사용한 경우)

이 내용이 익숙한가요, 아니면 제가 확인하실 수 있도록 다른 방법을 시도해 볼까요?

4개의 좋아요

@JammyDodger 님, 안녕하세요

답변 주셔서 감사합니다.

말씀하신 문제를 확인했습니다. 제가 현재 확인하고 있는 기능과도 일치합니다.

관찰 사항에 추가할 몇 가지가 있습니다:

5분이 지난 후 소프트 삭제된 페이지를 새로고침하고 게시물을 영구 삭제하면, 여전히 주제가 삭제되지 않습니다. 님이 보시는 모달이 표시되고 OK를 누릅니다. 원본 게시물이 아닌 다른 게시물에서는 정상적으로 작동합니다.

그러나 /latest?status=deleted 로 이동하면 여전히 주제 목록에 표시됩니다. 해당 주제들은 답변 수 -1로 표시되며, 이러한 주제를 클릭하면 “:frowning: error something went wrong” 페이지가 나타납니다.

한 시점에서 500 에러를 받은 적이 있는데, 이는 주제가 아직 삭제 중이거나, 삭제 진행 중에 삭제하려고 시도한 것 때문으로 보입니다:
에러 로그를 살펴보면 다음과 같은 내용을 확인할 수 있습니다:

NoMethodError (undefined method `topic_id' for nil:NilClass)
lib/post_destroyer.rb:60:in `destroy'
app/controllers/topics_controller.rb:643:in `destroy'
app/controllers/application_controller.rb:413:in `block in with_resolved_locale'
app/controllers/application_controller.rb:413:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:368:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:209:in `call'
1개의 좋아요

훌륭합니다. 재현을 위해 필요한 정보라고 생각합니다. :slight_smile: :+1:

다시 시도해 보았지만, OP(원본 게시물)만 있는 토픽으로 진행했습니다:

  • 토픽 생성 (답글 없음)
  • 토픽 소프트 삭제 (5분 대기)
  • 게시물 렌치 열기 및 ‘영구 삭제’ 선택
  • 확인
  • ‘오류. 문제가 발생했습니다’
  • 토픽은 여전히 ?status=deleted에 표시되지만, 액세스 시 ‘오류. 문제가 발생했습니다’ 화면이 표시되고 콘솔에는 다음 메시지가 출력됩니다:
TypeError: p is undefined
    setupController topic-from-params.js:68
    setup Ember
    s router_js.js:1514
    routeEnteredOrUpdated router_js.js:1524
    setupContexts router_js.js:1470
    finalizeTransition router_js.js:1378
    promise router_js.js:1321
    b rsvp.js:435
    g rsvp.js:421
    invoke queue.ts:203
    flush queue.ts:98
    flush deferred-action-queues.ts:75
    _end index.ts:616
    end index.ts:298
    _run index.ts:667
    run index.ts:339
    d Ember
    success ajax.js:101
    jQuery 6
    y ajax.js:150
    E rsvp.js:460
    E rsvp.js:916
    f ajax.js:163
    loadTopicView topic.js:24
    getAndRemove preload-store.js:28
    E rsvp.js:460
    E rsvp.js:916
    getAndRemove preload-store.js:27
    loadTopicView topic.js:24
    refresh post-stream.js:264
    model topic-from-params.js:25
    deserialize Ember
    getModel router_js.js:775
    resolve router_js.js:616
    b rsvp.js:435
    g rsvp.js:421
    invoke queue.ts:203
    flush queue.ts:98
    flush deferred-action-queues.ts:75
    _end index.ts:616
    _boundAutorunEnd index.ts:257
    promise callback*n/< platform.ts:28
    flush Ember
    _scheduleAutorun index.ts:803
    _ensureInstance index.ts:791
    schedule index.ts:384
    <anonymous> Ember
    v rsvp.js:492
    resolve router_js.js:934
    y router_js.js:249
    getTransitionByIntent router_js.js:1305
    transitionByIntent router_js.js:1247
    doTransition router_js.js:1366
    transitionTo router_js.js:1776
    Ember 2
    handleURL url.js:366
    routeTo url.js:211
    w topic-list-item.js:31
    click topic-list-item.js:187
    Ember 5
application.js:83

확인해 볼 수 있기를 바랍니다. :+1: :slight_smile:

1개의 좋아요

며칠 전 영구 삭제와 관련된 몇 가지 수정 사항을 병합했습니다. 이제 모든 것이 예상대로 작동해야 합니다.

버그 리포트 감사합니다!

2개의 좋아요

이 주제는 3일 후 자동으로 닫혔습니다. 새로운 답글은 더 이상 허용되지 않습니다.