У меня есть один сервер SOLR (не облако) с автоматической фиксацией каждые 15 секунд. Проиндексировав в него множество документов, теперь я хочу внести изменения в некоторые поля. Поскольку это изменение очень большое, мне нужно сделать это с помощью ~ 40 потоков.
Я использую один concurrentUpdateSorrServer для всех потоков. Я настроил этот сервер на очистку каждой 1000 документов и использовал 48 внутренних потоков. (темы не мои).
Поскольку я хочу добавить значения в многозначное поле, я использовал атомарное добавление.
Я останавливаю процесс после обновления ~ 5000 документов. Я вызываю commit + blockUntilFinshed + shutdown перед выходом.
Когда я запрашиваю сервер SOLR, кажется, что только около 200 документов получают обновление.
Я пробовал это также только с 1 потоком (мой поток - все еще 48 на сервере обновлений) и все та же проблема.
Когда я перехожу с concurrentUpdateSollrServer на HttpSolrServer (1 поток), все работает нормально.