MDVA-30284 패치: Elasticsearch 7 - 총 필드 제한 [XXXXX] 의 색인이 초과되었습니다.

MDVA-30284 패치는 Elasticsearch 7을 사용할 때 "인덱스의 총 필드 수 제한 [XXXXX]이(가) 초과되었습니다"라는 오류 메시지가 표시되는 문제를 해결합니다. 이 패치는 다음 경우에 사용할 수 있습니다. 품질 패치 도구(QPT) v.1.0.5가 설치되어 있습니다. 패치 ID는 MDVA-30284입니다.

영향을 받는 제품 및 버전

  • 이 패치는 클라우드 인프라 2.3.5-p2의 Adobe Commerce용으로 설계되었습니다
  • Elasticsearch 7은 Adobe Commerce 2.3.5 및 2.4.x와 호환됩니다
NOTE
이 패치는 새로운 품질 패치 도구 릴리스가 있는 다른 버전에 적용할 수 있습니다. 패치가 Adobe Commerce 버전과 호환되는지 확인하려면 magento/quality-patches 최신 버전으로 패키지하고 Quality Patches Tool: 패치 검색 페이지. 패치 ID를 검색 키워드로 사용하여 패치를 찾습니다.

문제

Elasticsearch 필드 제한이 잘못되어 [catalogsearch_fulltext] 인덱서를 실행할 때 다음 오류가 발생합니다.

총 필드 수 제한 [xxx] 색인 [xxxxxx] 을(를) 초과했습니다.

이 문제는 제품 속성이 많을 때 발생합니다. 이 문제는 Elasticsearch이 필드 수를 계산하는 방식에 의해 트리거됩니다. 필드에 할당된 특성이 있는 경우 이러한 필드가 별도의 인덱서로 인덱싱되는 경우가 있습니다. 이로 인해 제한 초과 경고가 발생합니다.

재현 단계:

전제 조건

  • module-elasticsearch 100.3.5가 설치되었습니다.
  • Elasticsearch 7이 설치되었습니다.
  • Elasticsearch을 검색 백엔드로 설정합니다.
  1. 제품에 대해 1000개 이상의 속성을 만듭니다.
  2. 각 패밀리에 대한 제품을 만듭니다.
  3. 인덱서를 실행합니다.

예상 결과:

모든 제품은 Elasticsearch 색인에서 사용할 수 있습니다.

실제 결과:

  1. Elasticsearch 오류:

    code language-none
     {"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Limit
     of total fields [3000] in index [magento2_product_2_v11] has been exceeded"}],"type":"illegal_argument_exception","reason":"Limit
     of total fields [3000] in index [magento2_product_2_v11] has been exceeded"},"status":400}
    
  2. 새 제품이 색인화되지 않았습니다.

패치 적용

개별 패치를 적용하려면 배포 방법에 따라 다음 링크를 사용합니다.

관련 읽기

품질 패치 도구에 대한 자세한 내용은 다음을 참조하십시오.

QPT에서 사용할 수 있는 다른 패치에 대한 정보는 다음을 참조하십시오. QPT에서 사용 가능한 패치 개발자 설명서에서 확인할 수 있습니다.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a