15 초마다 자동 커밋을 사용하는 단일 SOLR 서버 (클라우드가 아님)가 있습니다. 많은 문서를 색인에 추가 한 후에 일부 필드를 변경하려고합니다. 이 변경은 매우 커서 ~ 40 개의 스레드로 수행해야합니다.concurrentUpdateSolrServer 및 원자 적 업데이트를 사용하여 SOLR 업데이트가 손실되었습니다.
모든 스레드에 대해 하나의 concurrentUpdateSolrServer를 사용합니다. 나는 1000 개의 문서를 모두 내리고 내부적으로 48 개의 쓰레드를 사용하도록이 서버를 설정했다. (내 스레드가 아님).
다중 값 필드에 값을 추가하려면 원자 추가를 사용했습니다.
~ 5000 개의 문서를 업데이트 한 후 프로세스가 중지됩니다. 나가기 전에 commit + blockUntilFinshed + shutdown을 호출합니다.
SOLR 서버를 쿼리 할 때 ~ 200 개의 문서 만 업데이트를받는 것으로 보입니다.
나는 또한 단지 하나의 스레드 (내 스레드 - 여전히 업데이트 서버의 48 개)와 여전히 동일한 문제로이 문제를 해결했습니다.
concurrentUpdateSolrServer에서 HttpSolrServer (1 thread)로 변경할 때 정상적으로 작동합니다.
로그에 얼마나 많은 커밋/추가가 표시됩니까? – MatsLindh