Индекс TYPO3 tt_content записей в Solr - PullRequest
0 голосов
/ 30 октября 2018

В TYPO3 мы пытаемся индексировать записи tt_content, используя расширение solr. Я знаю, что записи tt_content обрабатываются Solr не так, как другие записи. Если запись tt_content добавлена, отредактирована или удалена, страница обновляется в индексе solr вместо записи tt_content. Чтобы это исправить, я создал специальный монитор записей для обновления записи tt_content в индексе solr. Это работает, но есть проблема при удалении элемента содержимого.

Похоже, что при удалении элемента содержимого solr удаляет страницу из индекса solr, а затем добавляет ее снова. Однако из-за моего пользовательского монитора записей страница снова удаляется, когда я удаляю запись tt_content из индекса, и она больше не добавляется. Мне нужно снова добавить страницу в указатель в моем мониторе записей.

Это означает, что при удалении элемента содержимого происходит следующее в индексе solr:

  1. Страница, на которой находился элемент содержимого, удалена (расширение solr)
  2. Добавлена ​​страница, на которой находился элемент содержимого (расширение solr)
  3. Элемент содержимого удален (пользовательский монитор записи)
  4. Страница, на которой находился элемент содержимого, удалена (расширение solr)
  5. Добавлена ​​страница, на которой находился элемент контента (монитор пользовательских записей)

Это кажется немного неэффективным. Есть ли правильный способ индексировать и отслеживать отдельные записи tt_content с расширением TYPO3 solr без этих проблем?

Используемая версия TYPO3 - 8.7, а версия расширения Solr - 8.0.2.

В моем собственном мониторе записей я использую \ApacheSolrForTypo3\Solr\IndexQueue\Queue->add для добавления / обновления записей tt_content в очередь индекса и \ApacheSolrForTypo3\Solr\GarbageCollector->collectGarbage для их удаления.

...