MDVA-32655: "quoteItemCleaner" 소비자는 실행당 하나의 메시지를 실행합니다.
MDVA-32655 패치는 여러 제품을 삭제한 후 잘못된 "진행 중" 메시지 상태를 소비자 quoteItemCleaner
에 대한 올바른 "완료" 메시지로 수정합니다. 이 패치는 품질 패치 도구(QPT) 1.0.18이 설치된 경우에 사용할 수 있습니다. 패치 ID가 32655. 이 문제는 Adobe Commerce 2.4.3에서 수정됩니다.
영향을 받는 제품 및 버전
Adobe Commerce 버전에 대한 패치가 만들어졌습니다.
클라우드 인프라의 Adobe Commerce 2.3.3
Adobe Commerce 버전과 호환:
Adobe Commerce on cloud infrastructure 및 Adobe Commerce on-premise 2.3.0 - 2.4.2
magento/quality-patches
패키지를 최신 버전으로 업데이트하고 Quality Patches Tool에서 호환성을 확인합니다. 패치 검색 페이지. 패치 ID를 검색 키워드로 사용하여 패치를 찾습니다.문제
quoteItemCleaner
소비자는 각 실행 시 하나의 메시지만 실행합니다.
재현 단계:
-
queue_message_status
데이터베이스 테이블을 확인하고 기존의 모든 큐 메시지가 "완료" 상태(상태 ID 4)인지 확인하십시오. -
자동 Adobe Commerce cron 실행을 중지합니다.
-
두 개 또는 세 개의 간단한 제품을 만듭니다.
-
이 세 가지 간단한 제품을 대량으로 삭제합니다.
-
queue_message_status
표에 상태 ID 2(새 레코드)의catalog_product_removed_queue
주제에 대한 새 레코드가 3개 있습니다. -
다음 명령을 실행하여 보류 중인
catalog_product_removed_queue
개의 메시지를 처리합니다.code language-bash bin/magento queue:consumers:start quoteItemCleaner --single-thread --max-messages=100
예상 결과:
select * from queue_message_status s join queue q on s.queue_id = q.id where q.name = "catalog_product_removed_queue";
catalog_product_removed_queue
메시지 상태가 모두 완료되도록 업데이트됩니다(ID=4).
실제 결과:
셋 중 하나의 레코드만 "완료" 상태로 업데이트됩니다(ID = 4). 다른 두 메시지의 상태는 상태 ID = 3(진행 중)입니다. 처리되지 않은 대기열 메시지가 있는 백로그가 생성됩니다.
패치 적용
개별 패치를 적용하려면 배포 방법에 따라 다음 링크를 사용합니다.
- 개발자 설명서에서 Adobe Commerce 또는 Magento Open Source 온-프레미스: 소프트웨어 업데이트 안내서 > 패치 적용.
- 클라우드 인프라의 Adobe Commerce: 개발자 설명서에서 업그레이드 및 패치 > 패치 적용.
관련 읽기
품질 패치 도구에 대한 자세한 내용은 다음을 참조하십시오.
QPT에서 사용할 수 있는 다른 패치에 대한 정보는 개발자 설명서에서 QPT에서 사용할 수 있는 패치를 참조하십시오.