2015-01-07 2 views
0

solr을 사용하는 drupal 사이트가 있습니다. 내가 같은 필드의 2 개 범위 쿼리가있을 때, 다음 나누기를 제외하고 잘 작동 나는 다음과 같은 오류 얻을 :solr 단일 필드의 여러 범위로 인해 오류가 발생합니다.

An error occurred while trying to search with Solr: "400" Status: Bad Request: Bad Request{"error":{"msg":"org.apache.solr.search.SyntaxError: Cannot parse '((im_field_products_collection$field_products$field_product_winch_line_length:[\"90\"': Encountered \"\" at line 1, column 83.\nWas expecting one of:\n \"TO\" ...\n ...\n ...\n ","code":400}} .

을 그리고이 모듈이 해당 필드

(({!tag=facet:field_products_collection:field_products:field_product_winch_line_length}((im_field_products_collection$field_products$field_product_winch_line_length:["90" TO ]) (im_field_products_collection$field_products$field_product_winch_line_length:[ TO "99"]))) OR ({!tag=facet:field_products_collection:field_products:field_product_winch_line_length}((im_field_products_collection$field_products$field_product_winch_line_length:["100" TO ]) (im_field_products_collection$field_products$field_product_winch_line_length:[ TO "109"]))))

을 위해 생성하는 쿼리입니다

모든 것이 잘 보입니다. 필드의 단일 범위 쿼리만으로도 제대로 작동합니다. 쿼리의 어떤 부분이 오류의 원인인지 알 수 있습니까? edismax 파서를 사용하고 있습니다.

답변

0

시간을 들여다 보니 모듈은 태그 필드를 쿼리의 각 부분의 시작 부분에 추가했습니다. SOLR은 그렇지 않았습니다. 처음에는 태그 주석을 사용하고 두 번째 태그 주석을 제거하면 쿼리가 올바르게 작동하는 것처럼 보입니다.

관련 문제